From 9795123f027812c0473eaa5e153841f302403afb Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 02:23:24 -0400 Subject: [PATCH 01/50] Currency wave W1: nine foundation pins to their latest clean upstream releases jcodemunch-mcp 1.108.327, playwright-cli 0.1.22, openresearch 0.2.15, mcp-inspector 2.9.0, claude-hud 0.10.0 (75683c6d), opentelemetry-collector-contrib 0.162.0, worktrunk 0.80.0, mcporter 0.14.2, syft 1.54.0. Each was qualified in a scratch prefix (artifact integrity against the primary digest, install, version, smoke and release notes) and judged move by an independent Opus judge (wave W1, 2026-10-03); the user ended the 7-day cooldown for clean releases on 2026-10-03. Per the pin-move checklist: stack rows, upstream-snapshot entries (36 fresh gh api checks, prior observations kept), saturation-audit rows, Linux/macOS pin files, recipes, docs, the syft version and checksum in the supply-chain, catalog-freshness and publish-catalog workflows, nine native_cli_e2e receipts linked from the stack and audit rows, and the generated reports. mcp-inspector 2.9.0 passed its tools/list and tools/call stdio runs (unknown-tool control exit 5). Holds in docs/decisions/2026-10-03-currency-wave-w1.md: beads (upstream regression #7030), agentsview (0.44.0 needs a recipe rewire), and five pins re-qualified separately. No host installation or service was switched. Co-Authored-By: Claude Opus 5.5 --- .github/workflows/catalog-freshness.yml | 2 +- .github/workflows/publish-catalog.yml | 12 +- .github/workflows/supply-chain.yml | 8 +- adoption/bootstrap.md | 12 +- adoption/pins-linux-x86_64.json | 16 +- adoption/pins-macos-arm64.json | 2 +- adoption/platforms/linux-wsl2.md | 1 + .../templates/claude.settings.template.json | 4 +- .../token-native-focus/saturation-audit.json | 205 +-- catalogs/foundation/automation.json | 8 +- catalogs/landscape/new-host-grand-list.json | 4 +- catalogs/landscape/upstream-snapshot.json | 1157 +++++++++++++---- docs/community-native-practice.md | 2 +- docs/decisions/2026-10-03-currency-wave-w1.md | 186 +++ docs/foundation-stack.md | 2 +- docs/github-automation.md | 16 +- docs/new-host-grand-list.md | 4 +- docs/token-efficiency-stack.json | 10 +- docs/token-session-handbook.md | 2 +- .../native-checks.json | 173 +++ ...laude-hud-0100-qualification-20261003.json | 133 ++ ...emunch-1108327-qualification-20261003.json | 123 ++ ...-inspector-290-qualification-20261003.json | 124 ++ .../mcporter-0142-qualification-20261003.json | 124 ++ ...nresearch-0215-qualification-20261003.json | 122 ++ ...l-contrib-0162-qualification-20261003.json | 123 ++ ...right-cli-0122-qualification-20261003.json | 123 ++ .../syft-1540-qualification-20261003.json | 124 ++ ...worktrunk-0800-qualification-20261003.json | 122 ++ manifests/landscape.json | 8 +- manifests/stack.json | 104 +- observability/README.md | 2 +- observability/collector/README.md | 10 +- .../collector-paper-trading.yaml | 2 +- recipes/README.md | 16 +- scripts/native_token_ci.py | 4 +- tests/test_adoption_bootstrap_macos.py | 2 +- tests/test_adoption_docs_consistency.py | 4 +- tests/test_render_config.py | 43 + tools/token-report/README.md | 6 +- 40 files changed, 2718 insertions(+), 427 deletions(-) create mode 100644 docs/decisions/2026-10-03-currency-wave-w1.md create mode 100644 evidence/artifacts/currency-wave-w1-20261003/native-checks.json create mode 100644 evidence/receipts/claude-hud-0100-qualification-20261003.json create mode 100644 evidence/receipts/jcodemunch-1108327-qualification-20261003.json create mode 100644 evidence/receipts/mcp-inspector-290-qualification-20261003.json create mode 100644 evidence/receipts/mcporter-0142-qualification-20261003.json create mode 100644 evidence/receipts/openresearch-0215-qualification-20261003.json create mode 100644 evidence/receipts/otelcol-contrib-0162-qualification-20261003.json create mode 100644 evidence/receipts/playwright-cli-0122-qualification-20261003.json create mode 100644 evidence/receipts/syft-1540-qualification-20261003.json create mode 100644 evidence/receipts/worktrunk-0800-qualification-20261003.json diff --git a/.github/workflows/catalog-freshness.yml b/.github/workflows/catalog-freshness.yml index 2e2fd1ac7..4bc49d662 100644 --- a/.github/workflows/catalog-freshness.yml +++ b/.github/workflows/catalog-freshness.yml @@ -116,7 +116,7 @@ jobs: for spec in \ "actionlint|kjanat/actionlint|1.17.0" \ "gitleaks|gitleaks/gitleaks|8.30.1" \ - "syft|anchore/syft|1.52.0" \ + "syft|anchore/syft|1.54.0" \ "zizmor|zizmorcore/zizmor|1.30.1" \ "grype|anchore/grype|0.119.0" \ "nautilus_trader|nautechsystems/nautilus_trader|2.0.0rc5"; do diff --git a/.github/workflows/publish-catalog.yml b/.github/workflows/publish-catalog.yml index 6a433f827..a1b2a0d5b 100644 --- a/.github/workflows/publish-catalog.yml +++ b/.github/workflows/publish-catalog.yml @@ -96,19 +96,19 @@ jobs: shell: bash run: | set -euo pipefail - syft_dir="$RUNNER_TEMP/syft-1.52.0" + syft_dir="$RUNNER_TEMP/syft-1.54.0" mkdir -p "$syft_dir" curl --fail --location --show-error --silent --retry 3 --proto '=https' --tlsv1.2 \ - 'https://github.com/anchore/syft/releases/download/v1.52.0/syft_1.52.0_checksums.txt' \ + 'https://github.com/anchore/syft/releases/download/v1.54.0/syft_1.54.0_checksums.txt' \ --output "$syft_dir/checksums.txt" curl --fail --location --show-error --silent --retry 3 --proto '=https' --tlsv1.2 \ - 'https://github.com/anchore/syft/releases/download/v1.52.0/syft_1.52.0_linux_amd64.tar.gz' \ + 'https://github.com/anchore/syft/releases/download/v1.54.0/syft_1.54.0_linux_amd64.tar.gz' \ --output "$syft_dir/syft.tar.gz" - expected="$(grep ' syft_1.52.0_linux_amd64.tar.gz$' "$syft_dir/checksums.txt" | awk '{print $1}')" + expected="$(grep ' syft_1.54.0_linux_amd64.tar.gz$' "$syft_dir/checksums.txt" | awk '{print $1}')" test -n "$expected" printf '%s %s\n' "$expected" "$syft_dir/syft.tar.gz" | sha256sum --check --status - # Pinned and independently re-verified 2026-09-22 against the upstream checksums file. - test "$expected" = 'caeedb81fb0491615f1ebd1761e4145d41ee86dd2cc7bf80669f9f5ad9d6133d' + # Pinned and independently re-verified 2026-10-03 against the upstream checksums file. + test "$expected" = '54a87372498168b2d033e876fd41fa4e8035b872699e525a57046e1f2f09c860' tar -xzf "$syft_dir/syft.tar.gz" -C "$syft_dir" syft install -m 0755 "$syft_dir/syft" "$RUNNER_TEMP/syft" "$RUNNER_TEMP/syft" version diff --git a/.github/workflows/supply-chain.yml b/.github/workflows/supply-chain.yml index 59612f4b7..d070bfd23 100644 --- a/.github/workflows/supply-chain.yml +++ b/.github/workflows/supply-chain.yml @@ -75,9 +75,9 @@ jobs: "$python" -m pip --isolated check >"$output/pip-check.stdout" 2>"$output/pip-check.stderr" - name: Install checksum-verified pinned syft env: - SYFT_VERSION: '1.52.0' - # https://github.com/anchore/syft/releases/download/v1.52.0/syft_1.52.0_checksums.txt (fetched 2026-09-22) - SYFT_SHA256: caeedb81fb0491615f1ebd1761e4145d41ee86dd2cc7bf80669f9f5ad9d6133d + SYFT_VERSION: '1.54.0' + # https://github.com/anchore/syft/releases/download/v1.54.0/syft_1.54.0_checksums.txt (fetched and rehashed 2026-10-03) + SYFT_SHA256: 54a87372498168b2d033e876fd41fa4e8035b872699e525a57046e1f2f09c860 run: | mkdir -p "$RUNNER_TEMP/syft" curl --fail --silent --show-error --location --retry 3 \ @@ -127,7 +127,7 @@ jobs: by_severity[severity] = by_severity.get(severity, 0) + 1 spdx = json.loads((scan_root / "sbom/venv.spdx.json").read_text()) summary = { - "syft_version": "1.52.0", + "syft_version": "1.54.0", "grype_version": "0.119.0", "grype_db_status": (scan_root / "sbom/grype-db-status.txt").read_text().strip(), "package_count": len(spdx.get("packages", [])), diff --git a/adoption/bootstrap.md b/adoption/bootstrap.md index d541a28b4..41e9d72e1 100644 --- a/adoption/bootstrap.md +++ b/adoption/bootstrap.md @@ -165,6 +165,8 @@ GitHub-hosted macOS runner; see `pins-linux-x86_64.json` (the rtk and headroom `install_note` text and its `claude-code` entry, 2.1.281 at that tag and 2.1.284 on main) and `adoption/bootstrap-linux.sh` changed after `v2026.09.26`: its rtk config reminder now also asks the installed `rtk hook check`; `install_npm` now adds `--ignore-scripts` for a pin with `ignore_scripts: true` (socraticode), a field the tag's script ignores, so there npm runs every install script in socraticode's dependency tree; and `install_uv_tool` now downloads a uv-tool pin's wheel `url` (headroom), verifies its `sha256` before uv runs and installs that file as `'headroom-ai[mcp] @ file://'`, where the tag's script resolves `headroom-ai[mcp]==0.37.0` from the index and never reads the wheel or its hash (the markitdown and tavily-cli sdist hashes stay cross-checks). `pins-linux-x86_64.json` changed after `v2026.09.26.2` in its `codex` entry: 0.155.1 moves to 0.159.2 (URL, hashes and note; 0.157.1 from 2026-09-26, 0.159.2 from 2026-09-30), so a host at that tag installs 0.155.1, and in its `claude-code` entry: 2.1.281 moves to 2.1.284 (URL, hashes and note), so a host at that tag installs 2.1.281. `adoption/templates/codex.config.template.toml` changed after the same tag to set `daemon_auto_start = false`: 0.157.1's first interactive launch otherwise installs a self-updating app-server daemon (see `evidence/receipts/codex-01571-qualification-20260926.json`; 0.159.2 still lists the feature as stable and on, `evidence/receipts/codex-01592-qualification-20260930.json`). It changed again on 2026-09-30 to default to `gpt-6.1-sol`, which Codex's bundled model catalog carries from `rust-v0.159.1` on (0.157.1's has no such entry). The macOS pin stays at 0.155.1: macOS needs its own 0.159.x qualification before the template default applies there. + On 2026-10-03, `pins-linux-x86_64.json` changed again after `v2026.09.26.2`: `mcporter` 0.14.1 to 0.14.2 and `orx` 0.2.7 to 0.2.15 (URLs, hashes and install notes). A host at that tag retains 0.14.1 and 0.2.7. The W1 scratch qualification and its functional limits are in [the dated decision](../docs/decisions/2026-10-03-currency-wave-w1.md). The Claude HUD marketplace recipe and template now select v0.10.0 at `75683c6de1ac07f6bbef00d739001679dba0740c`; hosts at the tag keep v0.8.0. + `pins-linux-x86_64.json` and `adoption/bootstrap-linux.sh` changed after `v2026.09.25.2`. The Linux pins file gained `repomix`, `toon`, `headroom`, `ccusage`, `serena` and `socraticode`, taking the `token-efficiency` row's @@ -394,9 +396,9 @@ GitHub-hosted macOS runner; see UV_TOOL_DIR="$eco/python-tools" UV_TOOL_BIN_DIR="$eco/bin" \ uv tool install --python 3.13 git+https://github.com/oraios/serena@c6fbd1c5932df2494ffa0020af5a9fbe80b82143 UV_TOOL_DIR="$eco/python-tools" UV_TOOL_BIN_DIR="$eco/bin" \ - uv tool install --python 3.13 jcodemunch-mcp==1.108.319 + uv tool install --python 3.13 jcodemunch-mcp==1.108.327 "$eco/bin/serena" --version # Serena 2.0.0.dev0 - "$eco/bin/jcodemunch-mcp" --version # jcodemunch-mcp 1.108.319 + "$eco/bin/jcodemunch-mcp" --version # jcodemunch-mcp 1.108.327 ``` Then run the installer: ```sh @@ -578,7 +580,7 @@ GitHub-hosted macOS runner; see ```sh claude plugin marketplace add mksglu/context-mode --scope user claude plugin install context-mode@context-mode --scope user --json - claude plugin marketplace add jarrodwatts/claude-hud@v0.8.0 --scope user + claude plugin marketplace add jarrodwatts/claude-hud@v0.10.0 --scope user claude plugin install claude-hud@claude-hud --scope user --json claude plugin marketplace add openai/codex-plugin-cc@v1.0.6 --scope user claude plugin install codex@openai-codex --scope user --json @@ -593,9 +595,9 @@ GitHub-hosted macOS runner; see ```sh python3 - <<'EOF' import json, os, pathlib, re, subprocess - reviewed = { # recipes/README.md rows: context-mode, claude-hud (tag v0.8.0), codex-for-claude + reviewed = { # recipes/README.md rows: context-mode, claude-hud (tag v0.10.0), codex-for-claude "context-mode@context-mode": "6f0cc6841c687e754059f36714a11233fda1a02b", - "claude-hud@claude-hud": "ef5f1c8b167572ad1443c70629763ea8780af96b", + "claude-hud@claude-hud": "75683c6de1ac07f6bbef00d739001679dba0740c", "codex@openai-codex": "db52e28f4d9ded852ab3942cea316258ae4ef346", } by_content = {"context-mode@context-mode": "mksglu/context-mode"} # default-branch install, no ref diff --git a/adoption/pins-linux-x86_64.json b/adoption/pins-linux-x86_64.json index 8866d8818..765fb1e0e 100644 --- a/adoption/pins-linux-x86_64.json +++ b/adoption/pins-linux-x86_64.json @@ -129,11 +129,11 @@ }, { "id": "mcporter", - "version": "0.14.1", + "version": "0.14.2", "kind": "npm", - "url": "https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz", - "sha256": "8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2", - "install_note": "npm dist.integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ== matched, and the sha256 above equals the GitHub release v0.14.1 asset digest and its checksums.txt (checked 2026-09-25); `npm audit signatures` verified the registry signatures and mcporter's SLSA provenance (release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514). `npm install --global --prefix tools/mcporter-0.14.1 mcporter@0.14.1`, matching recipes/README.md. Requires Node >=24, and `ps` on the PATH of whatever launches the mcporter daemon: 0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps), and without it the daemon cannot connect keep-alive servers and `mcporter daemon stop` refuses. Qualified against 0.13.13 and switched on nativestack-5975wx-20260925 (evidence/receipts/mcporter-0141-qualification-20260925.json); that is one host's state, not evidence about any other Linux host.", + "url": "https://registry.npmjs.org/mcporter/-/mcporter-0.14.2.tgz", + "sha256": "f5baa5a02be64d5d75722c5739975eee79d393eb2761496f70a53474688f8f6b", + "install_note": "2026-10-03 W1 scratch qualification. Checked against four published sources, all matched. (1) npm registry dist.integrity sha512-3ajjKzPLe/39hN582XqMuOw3S9vHQfLpSBq72zVakT03xso3GDXHcht/eVLu/l2MDqulIOtLevnTKreUxymHJQ== equals `openssl dgst -sha512 -binary | base64` of the downloaded tarball, and dist.shasum ee7d91e7362e7dc5b44b5fcc5cfdea7cfaedb1fd equals sha1sum. (2) GitHub release v0.14.2 asset digest sha256:f5baa5a02be64d5d75722c5739975eee79d393eb2761496f70a53474688f8f6b for mcporter-0.14.2.tgz equals the local sha256sum; the release checksums.txt line matches (sha256sum -c: OK, exit 0); the release asset is byte-identical to the npm tarball (cmp exit 0); size 3585823 bytes. (3) npm SLSA provenance attestation (https://registry.npmjs.org/-/npm/v1/attestations/mcporter@0.14.2): subject sha512 dda8e32b...8725 equals the tarball sha512 hex, workflow .github/workflows/release.yml at refs/tags/v0.14.2, gitCommit aa0f55f9bffcde9d2070c86145f37d4dd3525f6c; the release provenance.json asset also names commit aa0f55f9 and the tgz sha256. (4) `npm audit signatures` exit 0: audited 40 packages, 40 verified registry signatures, 12 verified attestations. Receipt: evidence/receipts/mcporter-0142-qualification-20261003.json. This is isolated qualification evidence, not a host installation switch. Supported installation: npm install --global --prefix tools/mcporter-0.14.2 mcporter@0.14.2. Requires Node >=24 and ps on the daemon launcher PATH. Bundled client 2.2.0 is covered by the archive hash; other dependency ranges resolve at install time. The ad-hoc stdio canary passed; daemon and serve behavior remain unqualified.", "version_probe": { "method": "exec", "command": "mcporter", @@ -201,11 +201,11 @@ }, { "id": "orx", - "version": "0.2.7", + "version": "0.2.15", "kind": "tarball", - "url": "https://github.com/alphaXiv/OpenResearch/releases/download/v0.2.7/openresearch-cli-x86_64-unknown-linux-musl.tar.xz", - "sha256": "c0f8c7488cc3ff028e6757ee54957911f754ea3cd80e239e12f7a47a88884d63", - "install_note": "2026-09-23 catalog-winner-but-unpinned gap: the host that recorded PR #139 (docs/decisions/2026-09-23-claude-user-profile.md) had OpenResearch's `orx` CLI 0.2.7 installed on 2026-09-23 (confirmed there with `orx --version`; alphaXiv/OpenResearch, the local-first research-agent workspace). That is one host's state, not evidence about any other Linux host. Archive re-downloaded and sha256-hashed independently; matches the release's own `openresearch-cli-x86_64-unknown-linux-musl.tar.xz.sha256` sidecar (`gh api repos/alphaXiv/OpenResearch/releases/tags/v0.2.7`, read 2026-09-23) exactly. `tar -tJf` lists exactly one top-level directory containing `orx`, `README.md` and `LICENSE`, matching `install_single_binary_tarball`'s convention of finding a single file literally named `orx` in the extracted tree.", + "url": "https://github.com/alphaXiv/OpenResearch/releases/download/v0.2.15/openresearch-cli-x86_64-unknown-linux-musl.tar.xz", + "sha256": "f36ed4095f4839767a162a555d9e7eafc04f70f0664ce3767178f81fc0b45c86", + "install_note": "2026-10-03 W1 scratch qualification. https://github.com/alphaXiv/OpenResearch/releases/download/v0.2.15/openresearch-cli-x86_64-unknown-linux-musl.tar.xz.sha256 (release-published sidecar; `sha256sum -c` printed OK, exit 0). Same hash also in the release's sha256.sum line 5 (`sha256sum -c --ignore-missing` OK, exit 0) and in the GitHub API asset digest sha256:f36ed409... (gh api repos/alphaXiv/OpenResearch/releases/tags/v0.2.15); size 11890208 bytes matches the API size. Receipt: evidence/receipts/openresearch-0215-qualification-20261003.json. This is isolated qualification evidence, not a host installation switch.", "version_probe": { "method": "exec", "command": "orx", diff --git a/adoption/pins-macos-arm64.json b/adoption/pins-macos-arm64.json index 3e52e226e..3f85a56d5 100644 --- a/adoption/pins-macos-arm64.json +++ b/adoption/pins-macos-arm64.json @@ -2,7 +2,7 @@ "schema_version": 1, "reviewed_at": "2026-09-22", "platform": "macos-arm64", - "source": "Drafted for the macos-arm64-foundation profile on 2026-09-22, updated 2026-09-23, from a Linux workstation: no macOS host executed anything here. Every sha256 below was obtained from the publisher, never guessed. Node, uv, gh and ai-memory come from the publisher's own checksum file or .sha256 sidecar; llama.cpp and Qdrant publish no checksum file for these assets, so each asset's GitHub release `digest` field was read via `gh api repos///releases/tags/` and the asset was additionally downloaded to a scratch directory under $TMPDIR and re-hashed with sha256sum (both agreed). The npm registry tarballs pinned here before 2026-09-26 (codex, mcporter, context-mode, socraticode; claude-code was a fifth until 2026-09-23, when it became a `native` pin whose own checksum_ref records its verification) are byte-identical to what `npm view @ dist.integrity` reports, cross-checked by downloading each tarball to a scratch directory and independently sha256- and sha512-hashing it. context-mode is also byte-identical to its adoption/pins-linux-x86_64.json entry; codex, mcporter and socraticode were byte-identical when pinned (the Linux pins file gained its socraticode entry after v2026.09.25.2, later than this file's), but their Linux entries have since moved to newer versions (the exceptions below). codex additionally carries a `platform_dependency` (claude-code carried one too until its move to the native pin): the darwin-arm64 optional dependency npm itself resolves and installs alongside the pinned wrapper tarball, read 2026-09-23 with `npm view @ optionalDependencies` for its identity and `npm view @ dist.tarball`/`dist.integrity` for its url/integrity, each independently re-downloaded and sha256/sha512-hashed to confirm. It is never installed by trusting npm's own automatic resolution of it (unverified) or by reading back npm's install state afterward (measured directly on this project's own host: npm 11.19.0's `--global --prefix` install writes no lockfile anywhere under the prefix and no package.json `_integrity` field, nests a platform-specific optional dependency under the wrapper's own node_modules regardless of --omit=optional/--no-optional/NPM_CONFIG_OMIT=optional, and overwrites a pre-placed nested copy during its own install pass). adoption/bootstrap-macos.sh's install_platform_dependency instead fetches and SHA-256 verifies the platform tarball itself with the same fetch() every other pin uses, then OVERWRITES the unverified nested copy npm's own install just fetched at the exact path Node's own require.resolve (scoped to the wrapper's own directory, and matched against the exact expected nested path -- never trusted if it resolves anywhere else, since require.resolve's GLOBAL_FOLDERS fallback can point outside the prefix entirely) finds it from, falling back to a top-level alias only when nothing is nested there at all; it then re-verifies both the resolved path and the resolved package's own name against this pin's `resolved_package` before running `npm rebuild` to trigger any lifecycle script the wrapper's own --ignore-scripts install deferred. Versions match pins-linux-x86_64.json wherever the component is the same, except ai-memory (2.3.2 here, 2.4.1 there), mcporter (0.13.13 here, 0.14.1 there), codex (0.155.1 here, 0.157.1 there) and socraticode (1.14.0 here, 1.15.0 there since 2026-09-27), which stay at their earlier versions until a Mac qualifies the newer ones (tests/test_adoption_bootstrap_macos.py's MAC_PIN_LAGS_LINUX). 2026-09-26 addition, after the v2026.09.26 release: rtk, qmd, repomix, toon, ccusage, headroom, markitdown and serena close the rest of the `token-efficiency` profile's macOS pin gap (6 of its 14 components were pinned here before; adoption/README.md's coverage cell), each at its pins-linux-x86_64.json version. Each was re-verified on 2026-09-26 from a fresh download of the upstream artifact, retained in evidence/artifacts/macos-token-pins-20260926/digest-check.txt: rtk's darwin-arm64 tarball against the v0.50.0 release's own checksums.txt and the GitHub release asset digest; the four npm tarballs (qmd, repomix, toon, ccusage) against `npm view @` dist.integrity (sha512) and dist.shasum (sha1), byte-identical to their Linux pins (the same registry-tarball cross-check the npm pins above use); headroom's and markitdown's PyPI files against the PyPI JSON API's own sha256 digests; serena's commit through the GitHub commits API. ccusage has since moved to 20.0.26 on 2026-09-27, with the Linux pin: digest-check.txt covers only 20.0.24, and 20.0.26's digests were re-checked from a fresh registry download in evidence/receipts/ccusage-20026-qualification-20260927.json, which its entry's checksum_ref cites. qmd's `sqlite-vec-darwin-arm64` and ccusage's `@ccusage/ccusage-darwin-arm64` optional dependencies are documented, unpinned gaps like the `rolldown` note in the mcporter entry's install_note below, not new install machinery. headroom pins its `macosx_11_0_arm64` wheel: headroom-ai 0.37.0 publishes compiled abi3 wheels per platform plus a maturin (Rust) sdist that would need a local Rust build, and that wheel is its only arm64-compatible macOS wheel, so it is what uv installs on Apple Silicon. markitdown pins the same platform-independent sdist as the Linux pin (pure Python; uv installs its py3-none-any wheel). The bootstrap downloads headroom's wheel and verifies its sha256 with `shasum -a 256` before uv installs that local file (install_uv_tool's wheel path, ported from adoption/bootstrap-linux.sh after its #334 change); uv resolves markitdown from PyPI by name and version and does not check its sdist sha256, which stays an independent artifact cross-check. Both satisfy this file's fail-closed null-sha256 refusal. serena has no PyPI release of its declared 2.0.0.dev0 version, so it repeats the Linux pin's source pin: the 40-hex commit c6fbd1c5932df2494ffa0020af5a9fbe80b82143 on oraios/serena with a null sha256, the one documented exception in this file, as in the Linux pins file. adoption/bootstrap-macos.sh gained the `uv-tool` and `uv-tool-from-git` install kinds, whose two functions are copied verbatim from adoption/bootstrap-linux.sh, and a post-install rtk reminder whose config check is that script's four-entry exclude_commands text check, applied to ~/Library/Application Support/rtk/config.toml, the file rtk 0.50.0 reads on macOS (the rtk entry's install_note); tests/test_adoption_bootstrap_macos.py runs all three functions under a real bash 3.2. None of the eight new version_probe entries starts a server.", + "source": "Drafted for the macos-arm64-foundation profile on 2026-09-22, updated 2026-09-23, from a Linux workstation: no macOS host executed anything here. Every sha256 below was obtained from the publisher, never guessed. Node, uv, gh and ai-memory come from the publisher's own checksum file or .sha256 sidecar; llama.cpp and Qdrant publish no checksum file for these assets, so each asset's GitHub release `digest` field was read via `gh api repos///releases/tags/` and the asset was additionally downloaded to a scratch directory under $TMPDIR and re-hashed with sha256sum (both agreed). The npm registry tarballs pinned here before 2026-09-26 (codex, mcporter, context-mode, socraticode; claude-code was a fifth until 2026-09-23, when it became a `native` pin whose own checksum_ref records its verification) are byte-identical to what `npm view @ dist.integrity` reports, cross-checked by downloading each tarball to a scratch directory and independently sha256- and sha512-hashing it. context-mode is also byte-identical to its adoption/pins-linux-x86_64.json entry; codex, mcporter and socraticode were byte-identical when pinned (the Linux pins file gained its socraticode entry after v2026.09.25.2, later than this file's), but their Linux entries have since moved to newer versions (the exceptions below). codex additionally carries a `platform_dependency` (claude-code carried one too until its move to the native pin): the darwin-arm64 optional dependency npm itself resolves and installs alongside the pinned wrapper tarball, read 2026-09-23 with `npm view @ optionalDependencies` for its identity and `npm view @ dist.tarball`/`dist.integrity` for its url/integrity, each independently re-downloaded and sha256/sha512-hashed to confirm. It is never installed by trusting npm's own automatic resolution of it (unverified) or by reading back npm's install state afterward (measured directly on this project's own host: npm 11.19.0's `--global --prefix` install writes no lockfile anywhere under the prefix and no package.json `_integrity` field, nests a platform-specific optional dependency under the wrapper's own node_modules regardless of --omit=optional/--no-optional/NPM_CONFIG_OMIT=optional, and overwrites a pre-placed nested copy during its own install pass). adoption/bootstrap-macos.sh's install_platform_dependency instead fetches and SHA-256 verifies the platform tarball itself with the same fetch() every other pin uses, then OVERWRITES the unverified nested copy npm's own install just fetched at the exact path Node's own require.resolve (scoped to the wrapper's own directory, and matched against the exact expected nested path -- never trusted if it resolves anywhere else, since require.resolve's GLOBAL_FOLDERS fallback can point outside the prefix entirely) finds it from, falling back to a top-level alias only when nothing is nested there at all; it then re-verifies both the resolved path and the resolved package's own name against this pin's `resolved_package` before running `npm rebuild` to trigger any lifecycle script the wrapper's own --ignore-scripts install deferred. Versions match pins-linux-x86_64.json wherever the component is the same, except ai-memory (2.3.2 here, 2.4.1 there), mcporter (0.13.13 here, 0.14.2 there), codex (0.155.1 here, 0.157.1 there) and socraticode (1.14.0 here, 1.15.0 there since 2026-09-27), which stay at their earlier versions until a Mac qualifies the newer ones (tests/test_adoption_bootstrap_macos.py's MAC_PIN_LAGS_LINUX). 2026-09-26 addition, after the v2026.09.26 release: rtk, qmd, repomix, toon, ccusage, headroom, markitdown and serena close the rest of the `token-efficiency` profile's macOS pin gap (6 of its 14 components were pinned here before; adoption/README.md's coverage cell), each at its pins-linux-x86_64.json version. Each was re-verified on 2026-09-26 from a fresh download of the upstream artifact, retained in evidence/artifacts/macos-token-pins-20260926/digest-check.txt: rtk's darwin-arm64 tarball against the v0.50.0 release's own checksums.txt and the GitHub release asset digest; the four npm tarballs (qmd, repomix, toon, ccusage) against `npm view @` dist.integrity (sha512) and dist.shasum (sha1), byte-identical to their Linux pins (the same registry-tarball cross-check the npm pins above use); headroom's and markitdown's PyPI files against the PyPI JSON API's own sha256 digests; serena's commit through the GitHub commits API. ccusage has since moved to 20.0.26 on 2026-09-27, with the Linux pin: digest-check.txt covers only 20.0.24, and 20.0.26's digests were re-checked from a fresh registry download in evidence/receipts/ccusage-20026-qualification-20260927.json, which its entry's checksum_ref cites. qmd's `sqlite-vec-darwin-arm64` and ccusage's `@ccusage/ccusage-darwin-arm64` optional dependencies are documented, unpinned gaps like the `rolldown` note in the mcporter entry's install_note below, not new install machinery. headroom pins its `macosx_11_0_arm64` wheel: headroom-ai 0.37.0 publishes compiled abi3 wheels per platform plus a maturin (Rust) sdist that would need a local Rust build, and that wheel is its only arm64-compatible macOS wheel, so it is what uv installs on Apple Silicon. markitdown pins the same platform-independent sdist as the Linux pin (pure Python; uv installs its py3-none-any wheel). The bootstrap downloads headroom's wheel and verifies its sha256 with `shasum -a 256` before uv installs that local file (install_uv_tool's wheel path, ported from adoption/bootstrap-linux.sh after its #334 change); uv resolves markitdown from PyPI by name and version and does not check its sdist sha256, which stays an independent artifact cross-check. Both satisfy this file's fail-closed null-sha256 refusal. serena has no PyPI release of its declared 2.0.0.dev0 version, so it repeats the Linux pin's source pin: the 40-hex commit c6fbd1c5932df2494ffa0020af5a9fbe80b82143 on oraios/serena with a null sha256, the one documented exception in this file, as in the Linux pins file. adoption/bootstrap-macos.sh gained the `uv-tool` and `uv-tool-from-git` install kinds, whose two functions are copied verbatim from adoption/bootstrap-linux.sh, and a post-install rtk reminder whose config check is that script's four-entry exclude_commands text check, applied to ~/Library/Application Support/rtk/config.toml, the file rtk 0.50.0 reads on macOS (the rtk entry's install_note); tests/test_adoption_bootstrap_macos.py runs all three functions under a real bash 3.2. None of the eight new version_probe entries starts a server.", "tools": [ { "id": "node", diff --git a/adoption/platforms/linux-wsl2.md b/adoption/platforms/linux-wsl2.md index f055f764c..c63d1cb04 100644 --- a/adoption/platforms/linux-wsl2.md +++ b/adoption/platforms/linux-wsl2.md @@ -112,6 +112,7 @@ itself evidence the WSL UVA gap closed. `token-efficiency` profile's Linux coverage (step 2 of [`adoption/bootstrap.md`](../bootstrap.md) has the details). Its `ai-memory` and `mcporter` pins also changed after `v2026.09.25.2` (2.3.2 to 2.4.1 and 0.13.13 to 0.14.1); before an existing ai-memory service restarts on 2.4.1, follow [upgrading an existing store](../../recipes/README.md#upgrading-an-existing-store). + On 2026-10-03, the Linux pins changed after `v2026.09.26.2` again: `mcporter` 0.14.1 to 0.14.2 and `orx` 0.2.7 to 0.2.15 (URL, hash and note); a host at that tag keeps the earlier versions. See [W1 qualification](../../docs/decisions/2026-10-03-currency-wave-w1.md) before treating scratch evidence as a host switch. 2. Recreate the SDK only for the `research-runtime` profile using [`adoption/sdk/README.md`](../sdk/README.md)'s transitive lock; retain the same exact-match and uncached-reinstall checks as diff --git a/adoption/templates/claude.settings.template.json b/adoption/templates/claude.settings.template.json index b3bc46238..03bf55b08 100644 --- a/adoption/templates/claude.settings.template.json +++ b/adoption/templates/claude.settings.template.json @@ -324,7 +324,7 @@ "workflowSizeGuideline": "unrestricted", "statusLine": { "type": "command", - "command": "bash -c 'cols=$${COLUMNS:-}; case \"$$cols\" in \"\"|*[!0-9]*) cols=$$(stty size 2>/dev/null 4 ? cols - 4 : 1 )); plugin_dir=$$(ls -d \"$${CLAUDE_CONFIG_DIR:-$$HOME/.claude}\"/plugins/cache/*/claude-hud/*/ 2>/dev/null | awk -F/ '\"'\"'{ print $$(NF-1) \"\\t\" $$(0) }'\"'\"' | grep -E '\"'\"'^[0-9]+\\.[0-9]+\\.[0-9]+[[:space:]]'\"'\"' | sort -t. -k1,1n -k2,2n -k3,3n -k4,4n | tail -1 | cut -f2-); exec \"${ECO_ROOT}/bin/node\" \"$${plugin_dir}dist/index.js\"'", + "command": "bash -c 'cols=$${COLUMNS:-}; case \"$$cols\" in \"\"|*[!0-9]*) cols=$$(stty size 2>/dev/null 4 ? cols - 4 : 1 )); plugin_dir=$$(ls -d \"$${CLAUDE_CONFIG_DIR:-$$HOME/.claude}\"/plugins/cache/*/claude-hud/*/ 2>/dev/null | awk -F/ '\"'\"'{ print $$(NF-1) \"\\t\" $$(0) }'\"'\"' | grep -E '\"'\"'^[0-9]+\\.[0-9]+\\.[0-9]+[[:space:]]'\"'\"' | sort -t. -k1,1n -k2,2n -k3,3n -k4,4n | tail -1 | cut -f2-); [ -n \"$$plugin_dir\" ] && [ -f \"$${plugin_dir}dist/index.js\" ] || exit 0; exec \"${ECO_ROOT}/bin/node\" \"$${plugin_dir}dist/index.js\"'", "refreshInterval": 5 }, "enabledPlugins": { @@ -343,7 +343,7 @@ "source": { "source": "github", "repo": "jarrodwatts/claude-hud", - "ref": "v0.8.0" + "ref": "v0.10.0" } }, "openai-codex": { diff --git a/blueprints/token-native-focus/saturation-audit.json b/blueprints/token-native-focus/saturation-audit.json index dc7c72204..d3023dc05 100644 --- a/blueprints/token-native-focus/saturation-audit.json +++ b/blueprints/token-native-focus/saturation-audit.json @@ -1675,8 +1675,8 @@ }, { "component_id": "claude-hud", - "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0", - "version": "0.8.0", + "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0", + "version": "0.10.0", "profile": "optional", "role": "Claude statusline rendering", "installation_assessment": "runtime present at retained native operation date", @@ -1724,6 +1724,11 @@ "id": "claude-repository-evidence-20260921", "path": "evidence/receipts/claude-repository-evidence-20260921.json", "kind": "native_cli_e2e" + }, + { + "id": "claude-hud-0100-qualification-20261003", + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", + "kind": "native_cli_e2e" } ], "retained_operation_ids": [ @@ -1737,16 +1742,16 @@ "integration_mode": "Configured optional statusline rendered in the retained foundation-closure native Claude terminal observations.", "lifecycle_evidence": { "assessment": "bounded_role_evidence", - "scope": "Retained foundation-closure observations record the configured HUD rendering model, project, context and usage fields before and after a native review. Earlier synthetic and effort-overlay attempts remain historical evidence. The landscape reconciliation performed no new native run.", + "scope": "Retained foundation-closure observations record the configured HUD rendering model, project, context and usage fields before and after a native review. Earlier synthetic and effort-overlay attempts remain historical evidence. The landscape reconciliation performed no new native run. Historical lifecycle observations remain bound to 0.8.0. W1 0.10.0 qualification is limited to the new receipt; no host switch or full lifecycle recertification occurred.", "all_optional_features_exercised": false }, "remaining_install_gap": null, "remaining_install_gap_reason": "No additional useful installation gap identified for the selected role in this bounded evidence review; full lifecycle/optional-feature limits remain explicit.", - "source_pin": null, + "source_pin": "75683c6de1ac07f6bbef00d739001679dba0740c", "lifecycle_stages": { "install": { "status": "observed_installed", - "scope": "Dated native runtime/library availability is recorded. This does not by itself establish clean-prefix reinstall, uninstall or dependency rollback.", + "scope": "Dated native runtime/library availability is recorded. This does not by itself establish clean-prefix reinstall, uninstall or dependency rollback. W1 pin qualification does not recertify this historical stage at 0.10.0.", "evidence_refs": [ "evidence/receipts/component-history.json", "evidence/receipts/token-practice-coverage-20260920.json", @@ -1756,7 +1761,7 @@ }, "use": { "status": "accepted_within_scope", - "scope": "Native PTY screen observations and installed-plugin audit qualify visible claude-hud 0.8.0 rendering in Claude 2.1.278. Every statistic, billing reconciliation, Windows dropdown interaction and a new host remain unqualified. No execution was repeated for this catalog reconciliation.", + "scope": "Native PTY screen observations and installed-plugin audit qualify visible claude-hud 0.8.0 rendering in Claude 2.1.278. Every statistic, billing reconciliation, Windows dropdown interaction and a new host remain unqualified. No execution was repeated for this catalog reconciliation. W1 pin qualification does not recertify this historical stage at 0.10.0.", "evidence_refs": [ "evidence/receipts/native-claude-hud-interactive-20260920.json", "evidence/artifacts/full-stack-convergence-20260921/hud-observation.json", @@ -1766,22 +1771,22 @@ }, "persistence": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.10.0.", "evidence_refs": [] }, "restart": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.10.0.", "evidence_refs": [] }, "cleanup": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.10.0.", "evidence_refs": [] }, "recovery": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.10.0.", "evidence_refs": [] } }, @@ -4114,7 +4119,7 @@ { "component_id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.319", + "version": "1.108.327", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", "installation_assessment": "Clean isolated upstream uv installation and native uninstall passed on the existing Linux/WSL host; the working installation was preserved.", @@ -4196,6 +4201,11 @@ "id": "claude-repository-evidence-20260921", "path": "evidence/receipts/claude-repository-evidence-20260921.json", "kind": "native_cli_e2e" + }, + { + "id": "jcodemunch-1108327-qualification-20261003", + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", + "kind": "native_cli_e2e" } ], "new_native_client_scope": "One bounded task in each native client passed project-file Context Mode reading and exact jCodeMunch symbol retrieval; six MCP calls, no failures. Consumption is separate from savings.", @@ -4250,51 +4260,51 @@ "integration_mode": "Explicit native CLI, MCP or SDK operation for the selected task.", "lifecycle_evidence": { "assessment": "bounded_role_evidence", - "scope": "Selected local index persisted across direct/native-client retrieval. No watcher, cross-repository auto-index or paid summaries.", + "scope": "Selected local index persisted across direct/native-client retrieval. No watcher, cross-repository auto-index or paid summaries. Historical lifecycle observations remain bound to 1.108.319. W1 1.108.327 qualification is limited to the new receipt; no host switch or full lifecycle recertification occurred.", "all_optional_features_exercised": false }, "remaining_install_gap": null, "remaining_install_gap_reason": "No additional useful installation gap identified for the selected role in this bounded evidence review; full lifecycle/optional-feature limits remain explicit.", - "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "lifecycle_stages": { "install": { "status": "accepted_within_scope", - "scope": "New isolated upstream uv tool environment with the accepted pin installed successfully; existing host and package cache reused.", + "scope": "New isolated upstream uv tool environment with the accepted pin installed successfully; existing host and package cache reused. W1 pin qualification does not recertify this historical stage at 1.108.327.", "evidence_refs": [ "evidence/receipts/native-token-clean-prefix-20260920.json" ] }, "use": { "status": "accepted_within_scope", - "scope": "Real upstream MCP calls returned exact original content from the selected public fixture; not a new provider-mediated client task.", + "scope": "Real upstream MCP calls returned exact original content from the selected public fixture; not a new provider-mediated client task. W1 pin qualification does not recertify this historical stage at 1.108.327.", "evidence_refs": [ "evidence/receipts/native-token-clean-prefix-20260920.json" ] }, "persistence": { "status": "accepted_within_scope", - "scope": "The scoped artifact/index was readable through a new server process after the first server exited; no OS reboot or corruption recovery.", + "scope": "The scoped artifact/index was readable through a new server process after the first server exited; no OS reboot or corruption recovery. W1 pin qualification does not recertify this historical stage at 1.108.327.", "evidence_refs": [ "evidence/receipts/native-token-clean-prefix-20260920.json" ] }, "restart": { "status": "accepted_within_scope", - "scope": "Two real server processes per tool completed; all four owned MCP servers exited zero.", + "scope": "Two real server processes per tool completed; all four owned MCP servers exited zero. W1 pin qualification does not recertify this historical stage at 1.108.327.", "evidence_refs": [ "evidence/receipts/native-token-clean-prefix-20260920.json" ] }, "cleanup": { "status": "accepted_within_scope", - "scope": "Native uv tool uninstall passed; all created entrypoints absent and zero owned tool processes remained; 82 input/output artifacts retained.", + "scope": "Native uv tool uninstall passed; all created entrypoints absent and zero owned tool processes remained; 82 input/output artifacts retained. W1 pin qualification does not recertify this historical stage at 1.108.327.", "evidence_refs": [ "evidence/receipts/native-token-clean-prefix-20260920.json" ] }, "recovery": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 1.108.327.", "evidence_refs": [] } }, @@ -4871,7 +4881,7 @@ { "component_id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.8.0", + "version": "2.9.0", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "installation_assessment": "runtime present at retained native operation date", @@ -4879,7 +4889,7 @@ "native_integration": { "recipe_source": "adoption/manifest.json#/recipe_map/mcp-inspector", "documented_commands": [ - "npx @modelcontextprotocol/inspector@2.8.0 --help" + "npx @modelcontextprotocol/inspector@2.9.0 --help" ], "scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate.", "recipe_document": "recipes/README.md", @@ -4911,6 +4921,11 @@ "id": "mcp-inspector-280-qualification-20260926", "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json", "kind": "native_cli_e2e" + }, + { + "id": "mcp-inspector-290-qualification-20261003", + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", + "kind": "native_cli_e2e" } ], "retained_operation_ids": [ @@ -4924,7 +4939,7 @@ "integration_mode": "Explicit native CLI, MCP or SDK operation for the selected task.", "lifecycle_evidence": { "assessment": "bounded_role_evidence", - "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability.", + "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability. Historical lifecycle observations remain bound to 2.8.0. W1 2.9.0 qualification is limited to the new receipt; no host switch or full lifecycle recertification occurred.", "all_optional_features_exercised": false }, "remaining_install_gap": null, @@ -4933,7 +4948,7 @@ "lifecycle_stages": { "install": { "status": "observed_installed", - "scope": "Dated native runtime/library availability is recorded. This does not by itself establish clean-prefix reinstall, uninstall or dependency rollback.", + "scope": "Dated native runtime/library availability is recorded. This does not by itself establish clean-prefix reinstall, uninstall or dependency rollback. W1 pin qualification does not recertify this historical stage at 2.9.0.", "evidence_refs": [ "evidence/receipts/component-history.json", "evidence/receipts/token-practice-coverage-20260920.json", @@ -4942,31 +4957,31 @@ }, "use": { "status": "accepted_within_scope", - "scope": "Native fixture/SDK/transport operation with scope and checks in its operation receipts; not full-stack model acceptance.", + "scope": "Native fixture/SDK/transport operation with scope and checks in its operation receipts; not full-stack model acceptance. W1 pin qualification does not recertify this historical stage at 2.9.0.", "evidence_refs": [ "evidence/receipts/token-native-retained-functional-20260920.json" ] }, "persistence": { "status": "not_applicable", - "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention.", + "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention. W1 pin qualification does not recertify this historical stage at 2.9.0.", "evidence_refs": [] }, "restart": { "status": "not_applicable", - "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention.", + "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention. W1 pin qualification does not recertify this historical stage at 2.9.0.", "evidence_refs": [] }, "cleanup": { "status": "documented_not_replayed", - "scope": "The selected command should exit and leave no owned child process; removal of its package/prefix was not replayed by this matrix.", + "scope": "The selected command should exit and leave no owned child process; removal of its package/prefix was not replayed by this matrix. W1 pin qualification does not recertify this historical stage at 2.9.0.", "evidence_refs": [ "adoption/lifecycle.md" ] }, "recovery": { "status": "not_applicable", - "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention.", + "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention. W1 pin qualification does not recertify this historical stage at 2.9.0.", "evidence_refs": [] } }, @@ -4980,8 +4995,8 @@ }, { "component_id": "mcporter", - "repository": "https://github.com/openclaw/mcporter/tree/v0.14.1", - "version": "0.14.1", + "repository": "https://github.com/openclaw/mcporter/tree/v0.14.2", + "version": "0.14.2", "profile": "core", "role": "Native CLI bridge with persistent MCP daemon connection", "installation_assessment": "runtime present at retained native operation date", @@ -5031,6 +5046,11 @@ "id": "mcporter-0141-qualification-20260925", "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "kind": "native_cli_e2e" + }, + { + "id": "mcporter-0142-qualification-20261003", + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", + "kind": "native_cli_e2e" } ], "retained_operation_ids": [ @@ -5047,7 +5067,7 @@ "integration_mode": "Explicit native CLI, MCP or SDK operation for the selected task.", "lifecycle_evidence": { "assessment": "bounded_role_evidence", - "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability.", + "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability. Historical lifecycle observations remain bound to 0.14.1. W1 0.14.2 qualification is limited to the new receipt; no host switch or full lifecycle recertification occurred.", "all_optional_features_exercised": false }, "remaining_install_gap": null, @@ -5056,7 +5076,7 @@ "lifecycle_stages": { "install": { "status": "observed_installed", - "scope": "Dated native runtime/library availability is recorded. This does not by itself establish clean-prefix reinstall, uninstall or dependency rollback.", + "scope": "Dated native runtime/library availability is recorded. This does not by itself establish clean-prefix reinstall, uninstall or dependency rollback. W1 pin qualification does not recertify this historical stage at 0.14.2.", "evidence_refs": [ "evidence/receipts/component-history.json", "observability/restart-receipt.json", @@ -5065,29 +5085,29 @@ }, "use": { "status": "accepted_within_scope", - "scope": "Native fixture/SDK/transport operation with scope and checks in its operation receipts; not full-stack model acceptance.", + "scope": "Native fixture/SDK/transport operation with scope and checks in its operation receipts; not full-stack model acceptance. W1 pin qualification does not recertify this historical stage at 0.14.2.", "evidence_refs": [ "observability/restart-receipt.json" ] }, "persistence": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.14.2.", "evidence_refs": [] }, "restart": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.14.2.", "evidence_refs": [] }, "cleanup": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.14.2.", "evidence_refs": [] }, "recovery": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.14.2.", "evidence_refs": [] } }, @@ -5431,7 +5451,7 @@ { "component_id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.7", + "version": "0.2.15", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", "installation_assessment": "runtime present at retained native operation date", @@ -5482,6 +5502,11 @@ "id": "claude-repository-evidence-20260921", "path": "evidence/receipts/claude-repository-evidence-20260921.json", "kind": "native_cli_e2e" + }, + { + "id": "openresearch-0215-qualification-20261003", + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", + "kind": "native_cli_e2e" } ], "retained_operation_ids": [ @@ -5495,16 +5520,16 @@ "integration_mode": "Explicit native CLI, MCP or SDK operation for the selected task.", "lifecycle_evidence": { "assessment": "bounded_role_evidence", - "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability.", + "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability. Historical lifecycle observations remain bound to 0.2.7. W1 0.2.15 qualification is limited to the new receipt; no host switch or full lifecycle recertification occurred.", "all_optional_features_exercised": false }, "remaining_install_gap": null, "remaining_install_gap_reason": "No additional useful installation gap identified for the selected role in this bounded evidence review; full lifecycle/optional-feature limits remain explicit.", - "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", "lifecycle_stages": { "install": { "status": "observed_installed", - "scope": "September 21 isolated release upgrade with preserved previous installation and qualified candidate operations. This does not establish full uninstall or dependency rollback.", + "scope": "September 21 isolated release upgrade with preserved previous installation and qualified candidate operations. This does not establish full uninstall or dependency rollback. W1 pin qualification does not recertify this historical stage at 0.2.15.", "evidence_refs": [ "evidence/receipts/component-history.json", "evidence/receipts/artifact-reductions.json", @@ -5515,7 +5540,7 @@ }, "use": { "status": "accepted_within_scope", - "scope": "Native fixture/SDK/transport operation with scope and checks in its operation receipts; not full-stack model acceptance.", + "scope": "Native fixture/SDK/transport operation with scope and checks in its operation receipts; not full-stack model acceptance. W1 pin qualification does not recertify this historical stage at 0.2.15.", "evidence_refs": [ "evidence/receipts/artifact-reductions.json", "evidence/receipts/token-practice-gap-followup-20260920.json" @@ -5523,24 +5548,24 @@ }, "persistence": { "status": "not_applicable", - "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention.", + "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention. W1 pin qualification does not recertify this historical stage at 0.2.15.", "evidence_refs": [] }, "restart": { "status": "not_applicable", - "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention.", + "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention. W1 pin qualification does not recertify this historical stage at 0.2.15.", "evidence_refs": [] }, "cleanup": { "status": "documented_not_replayed", - "scope": "The selected command should exit and leave no owned child process; removal of its package/prefix was not replayed by this matrix.", + "scope": "The selected command should exit and leave no owned child process; removal of its package/prefix was not replayed by this matrix. W1 pin qualification does not recertify this historical stage at 0.2.15.", "evidence_refs": [ "adoption/lifecycle.md" ] }, "recovery": { "status": "not_applicable", - "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention.", + "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention. W1 pin qualification does not recertify this historical stage at 0.2.15.", "evidence_refs": [] } }, @@ -5555,7 +5580,7 @@ { "component_id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.161.0", + "version": "0.162.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", "installation_assessment": "runtime present at retained native operation date", @@ -5635,6 +5660,11 @@ "id": "claude-repository-evidence-20260921", "path": "evidence/receipts/claude-repository-evidence-20260921.json", "kind": "native_cli_e2e" + }, + { + "id": "otelcol-contrib-0162-qualification-20261003", + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", + "kind": "native_cli_e2e" } ], "retained_operation_ids": [ @@ -5648,7 +5678,7 @@ "integration_mode": "Configured persistent native service; explicit task consumes the selected endpoint.", "lifecycle_evidence": { "assessment": "bounded_role_evidence", - "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability.", + "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability. Historical lifecycle observations remain bound to 0.161.0. W1 0.162.0 qualification is limited to the new receipt; no host switch or full lifecycle recertification occurred.", "all_optional_features_exercised": false }, "remaining_install_gap": null, @@ -5657,7 +5687,7 @@ "lifecycle_stages": { "install": { "status": "observed_installed", - "scope": "Dated native runtime/library availability is recorded. This does not by itself establish clean-prefix reinstall, uninstall or dependency rollback.", + "scope": "Dated native runtime/library availability is recorded. This does not by itself establish clean-prefix reinstall, uninstall or dependency rollback. W1 pin qualification does not recertify this historical stage at 0.162.0.", "evidence_refs": [ "observability/receipt.json", "observability/followup-receipt.json", @@ -5671,7 +5701,7 @@ }, "use": { "status": "accepted_within_scope", - "scope": "Native collector validates existing configuration with its required nonsecret unit environment; no service reload.", + "scope": "Native collector validates existing configuration with its required nonsecret unit environment; no service reload. W1 pin qualification does not recertify this historical stage at 0.162.0.", "evidence_refs": [ "observability/receipt.json", "observability/followup-receipt.json", @@ -5684,22 +5714,22 @@ }, "persistence": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.162.0.", "evidence_refs": [] }, "restart": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.162.0.", "evidence_refs": [] }, "cleanup": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.162.0.", "evidence_refs": [] }, "recovery": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.162.0.", "evidence_refs": [] } }, @@ -5916,7 +5946,7 @@ { "component_id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", + "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", "installation_assessment": "runtime present at retained native operation date", @@ -5952,6 +5982,11 @@ "id": "claude-repository-evidence-20260921", "path": "evidence/receipts/claude-repository-evidence-20260921.json", "kind": "native_cli_e2e" + }, + { + "id": "playwright-cli-0122-qualification-20261003", + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", + "kind": "native_cli_e2e" } ], "retained_operation_ids": [ @@ -5977,7 +6012,7 @@ "integration_mode": "Explicit native CLI, MCP or SDK operation for the selected task.", "lifecycle_evidence": { "assessment": "bounded_role_evidence", - "scope": "Owned browser fixture lifecycle passed after retained protocol/setup correction.", + "scope": "Owned browser fixture lifecycle passed after retained protocol/setup correction. Historical lifecycle observations remain bound to 0.1.21; Playwright 1.64.0-alpha-1789764292000. W1 0.1.22; Playwright 1.64.0-alpha-1790635538000 qualification is limited to the new receipt; no host switch or full lifecycle recertification occurred.", "all_optional_features_exercised": false }, "remaining_install_gap": null, @@ -5986,7 +6021,7 @@ "lifecycle_stages": { "install": { "status": "observed_installed", - "scope": "Dated native runtime/library availability is recorded. This does not by itself establish clean-prefix reinstall, uninstall or dependency rollback.", + "scope": "Dated native runtime/library availability is recorded. This does not by itself establish clean-prefix reinstall, uninstall or dependency rollback. W1 pin qualification does not recertify this historical stage at 0.1.22; Playwright 1.64.0-alpha-1790635538000.", "evidence_refs": [ "evidence/receipts/component-history.json", "evidence/receipts/token-practice-coverage-20260920.json", @@ -5995,31 +6030,31 @@ }, "use": { "status": "accepted_within_scope", - "scope": "Owned browser fixture completed after retained protocol/setup correction; no new browser session was started by this reconciliation.", + "scope": "Owned browser fixture completed after retained protocol/setup correction; no new browser session was started by this reconciliation. W1 pin qualification does not recertify this historical stage at 0.1.22; Playwright 1.64.0-alpha-1790635538000.", "evidence_refs": [ "evidence/receipts/native-cli-gaps.json" ] }, "persistence": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.1.22; Playwright 1.64.0-alpha-1790635538000.", "evidence_refs": [] }, "restart": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.1.22; Playwright 1.64.0-alpha-1790635538000.", "evidence_refs": [] }, "cleanup": { "status": "accepted_within_scope", - "scope": "Owned browser fixture completed after retained protocol/setup correction; no new browser session was started by this reconciliation.", + "scope": "Owned browser fixture completed after retained protocol/setup correction; no new browser session was started by this reconciliation. W1 pin qualification does not recertify this historical stage at 0.1.22; Playwright 1.64.0-alpha-1790635538000.", "evidence_refs": [ "evidence/receipts/native-cli-gaps.json" ] }, "recovery": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.1.22; Playwright 1.64.0-alpha-1790635538000.", "evidence_refs": [] } }, @@ -8404,7 +8439,7 @@ { "component_id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.52.0", + "version": "1.54.0", "profile": "supporting", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", "installation_assessment": "runtime present at retained native operation date", @@ -8440,6 +8475,11 @@ "id": "claude-repository-evidence-20260921", "path": "evidence/receipts/claude-repository-evidence-20260921.json", "kind": "native_cli_e2e" + }, + { + "id": "syft-1540-qualification-20261003", + "path": "evidence/receipts/syft-1540-qualification-20261003.json", + "kind": "native_cli_e2e" } ], "retained_operation_ids": [ @@ -8465,16 +8505,16 @@ "integration_mode": "Explicit native CLI, MCP or SDK operation for the selected task.", "lifecycle_evidence": { "assessment": "bounded_role_evidence", - "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability.", + "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability. Historical lifecycle observations remain bound to 1.52.0. W1 1.54.0 qualification is limited to the new receipt; no host switch or full lifecycle recertification occurred.", "all_optional_features_exercised": false }, "remaining_install_gap": null, "remaining_install_gap_reason": "No additional useful installation gap identified for the selected role in this bounded evidence review; full lifecycle/optional-feature limits remain explicit.", - "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "lifecycle_stages": { "install": { "status": "observed_installed", - "scope": "Dated native runtime/library availability is recorded. This does not by itself establish clean-prefix reinstall, uninstall or dependency rollback.", + "scope": "Dated native runtime/library availability is recorded. This does not by itself establish clean-prefix reinstall, uninstall or dependency rollback. W1 pin qualification does not recertify this historical stage at 1.54.0.", "evidence_refs": [ "blueprints/us-equities/supply-chain/receipt.json", "evidence/receipts/token-practice-artifacts-20260920.json", @@ -8483,7 +8523,7 @@ }, "use": { "status": "accepted_within_scope", - "scope": "Exact retained same-source comparison with the explicitly stated shared acceptance gate; not causal provider savings.", + "scope": "Exact retained same-source comparison with the explicitly stated shared acceptance gate; not causal provider savings. W1 pin qualification does not recertify this historical stage at 1.54.0.", "evidence_refs": [ "blueprints/us-equities/supply-chain/receipt.json", "evidence/receipts/token-practice-artifacts-20260920.json" @@ -8491,24 +8531,24 @@ }, "persistence": { "status": "not_applicable", - "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention.", + "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention. W1 pin qualification does not recertify this historical stage at 1.54.0.", "evidence_refs": [] }, "restart": { "status": "not_applicable", - "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention.", + "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention. W1 pin qualification does not recertify this historical stage at 1.54.0.", "evidence_refs": [] }, "cleanup": { "status": "documented_not_replayed", - "scope": "The selected command should exit and leave no owned child process; removal of its package/prefix was not replayed by this matrix.", + "scope": "The selected command should exit and leave no owned child process; removal of its package/prefix was not replayed by this matrix. W1 pin qualification does not recertify this historical stage at 1.54.0.", "evidence_refs": [ "adoption/lifecycle.md" ] }, "recovery": { "status": "not_applicable", - "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention.", + "scope": "The selected operation is a finite command/library invocation with no managed application-state lifecycle. Input/output files and the pinned environment still need host-local retention. W1 pin qualification does not recertify this historical stage at 1.54.0.", "evidence_refs": [] } }, @@ -8950,7 +8990,7 @@ { "component_id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.79.0", + "version": "0.80.0", "profile": "optional", "role": "Native Git worktree convenience CLI", "installation_assessment": "runtime present at retained native operation date", @@ -9005,6 +9045,11 @@ "id": "claude-repository-evidence-20260921", "path": "evidence/receipts/claude-repository-evidence-20260921.json", "kind": "native_cli_e2e" + }, + { + "id": "worktrunk-0800-qualification-20261003", + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", + "kind": "native_cli_e2e" } ], "retained_operation_ids": [ @@ -9023,16 +9068,16 @@ "integration_mode": "Explicit native CLI, MCP or SDK operation for the selected task.", "lifecycle_evidence": { "assessment": "bounded_role_evidence", - "scope": "Owned disposable create/select/list/remove lifecycle passed; hooks disabled and only original worktree remained.", + "scope": "Owned disposable create/select/list/remove lifecycle passed; hooks disabled and only original worktree remained. Historical lifecycle observations remain bound to 0.79.0. W1 0.80.0 qualification is limited to the new receipt; no host switch or full lifecycle recertification occurred.", "all_optional_features_exercised": false }, "remaining_install_gap": null, "remaining_install_gap_reason": "No additional useful installation gap identified for the selected role in this bounded evidence review; full lifecycle/optional-feature limits remain explicit.", - "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", "lifecycle_stages": { "install": { "status": "observed_installed", - "scope": "September 21 isolated release upgrade with preserved previous installation and qualified candidate operations. This does not establish full uninstall or dependency rollback.", + "scope": "September 21 isolated release upgrade with preserved previous installation and qualified candidate operations. This does not establish full uninstall or dependency rollback. W1 pin qualification does not recertify this historical stage at 0.80.0.", "evidence_refs": [ "evidence/receipts/worktrunk-list.json", "evidence/receipts/component-history.json", @@ -9044,31 +9089,31 @@ }, "use": { "status": "accepted_within_scope", - "scope": "Disposable Git repository completed native create/select/list/remove with hooks disabled, leaving only its original worktree. No user branch was removed.", + "scope": "Disposable Git repository completed native create/select/list/remove with hooks disabled, leaving only its original worktree. No user branch was removed. W1 pin qualification does not recertify this historical stage at 0.80.0.", "evidence_refs": [ "evidence/receipts/token-native-retained-functional-20260920.json" ] }, "persistence": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.80.0.", "evidence_refs": [] }, "restart": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.80.0.", "evidence_refs": [] }, "cleanup": { "status": "accepted_within_scope", - "scope": "Disposable Git repository completed native create/select/list/remove with hooks disabled, leaving only its original worktree. No user branch was removed.", + "scope": "Disposable Git repository completed native create/select/list/remove with hooks disabled, leaving only its original worktree. No user branch was removed. W1 pin qualification does not recertify this historical stage at 0.80.0.", "evidence_refs": [ "evidence/receipts/token-native-retained-functional-20260920.json" ] }, "recovery": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.80.0.", "evidence_refs": [] } }, diff --git a/catalogs/foundation/automation.json b/catalogs/foundation/automation.json index 68b46dc9a..790483202 100644 --- a/catalogs/foundation/automation.json +++ b/catalogs/foundation/automation.json @@ -162,9 +162,9 @@ }, { "repository": "anchore/syft", - "version": "1.52.0", - "archive_sha256": "caeedb81fb0491615f1ebd1761e4145d41ee86dd2cc7bf80669f9f5ad9d6133d", - "source": "https://github.com/anchore/syft/releases/download/v1.52.0/syft_1.52.0_checksums.txt", + "version": "1.54.0", + "archive_sha256": "54a87372498168b2d033e876fd41fa4e8035b872699e525a57046e1f2f09c860", + "source": "https://github.com/anchore/syft/releases/download/v1.54.0/syft_1.54.0_checksums.txt", "command": "syft scan dir: -o spdx-json=... -o cyclonedx-json=...", "selection": "SBOM generator for supply-chain.yml's sbom-vuln job; SPDX and CycloneDX outputs for the reproduced nautilus_trader install venv, scanned by grype's high-severity gate. 90-day artifact retention.", "workflow": ".github/workflows/supply-chain.yml#sbom-vuln" @@ -223,7 +223,7 @@ "version": "publish-catalog.yml@2026-09-22-release", "source": ".github/workflows/publish-catalog.yml", "command": "git push origin v (tag push) or gh workflow run publish-catalog.yml", - "selection": "Publication job now also triggers on push: tags: ['v*'] (job condition startsWith(github.ref, 'refs/tags/v') || github.ref == 'refs/heads/main'), alongside the existing trusted-main workflow_dispatch. Adds a SHA-checked syft 1.52.0 SBOM (native-agent-stack-.spdx.json, predicate-type https://spdx.dev/Document) with its own actions/attest@1e69f48acb82d1966a394da916b4c1698aa569d6 attestation, verified in-run with gh attestation verify and uploaded next to the archive with a matched digest, alongside the existing archive attestation. A tag-only release job (needs publish; job permissions contents: write only) downloads both attested artifacts by ID, re-checks them against the digests the publish job attested, and runs gh release create --verify-tag, which gh 2.101.0 sequences as draft, upload, publish so the immutable release is published with its assets; it then confirms isImmutable and both asset digests.", + "selection": "Publication job now also triggers on push: tags: ['v*'] (job condition startsWith(github.ref, 'refs/tags/v') || github.ref == 'refs/heads/main'), alongside the existing trusted-main workflow_dispatch. Adds a SHA-checked syft 1.54.0 SBOM (native-agent-stack-.spdx.json, predicate-type https://spdx.dev/Document) with its own actions/attest@1e69f48acb82d1966a394da916b4c1698aa569d6 attestation, verified in-run with gh attestation verify and uploaded next to the archive with a matched digest, alongside the existing archive attestation. A tag-only release job (needs publish; job permissions contents: write only) downloads both attested artifacts by ID, re-checks them against the digests the publish job attested, and runs gh release create --verify-tag, which gh 2.101.0 sequences as draft, upload, publish so the immutable release is published with its assets; it then confirms isImmutable and both asset digests.", "acceptance": "docs/github-automation.md 'Publication on tags': v* tag creation is admin-only (tag creation ruleset 23859358); the publish job keeps contents: read, id-token: write, attestations: write; only the release job has contents: write. No hosted tag run of the release job yet." }, { diff --git a/catalogs/landscape/new-host-grand-list.json b/catalogs/landscape/new-host-grand-list.json index 63e5e4f52..7022611c9 100644 --- a/catalogs/landscape/new-host-grand-list.json +++ b/catalogs/landscape/new-host-grand-list.json @@ -1182,7 +1182,7 @@ "linux-wsl2-x86_64": { "e2e_state": "host_verified", "bootstrap_pinned": true, - "bootstrap_version": "0.14.1" + "bootstrap_version": "0.14.2" }, "macos-arm64": { "e2e_state": "untested", @@ -2053,7 +2053,7 @@ "linux-wsl2-x86_64": { "e2e_state": "conditional", "bootstrap_pinned": true, - "bootstrap_version": "0.2.7" + "bootstrap_version": "0.2.15" }, "macos-arm64": { "e2e_state": "untested", diff --git a/catalogs/landscape/upstream-snapshot.json b/catalogs/landscape/upstream-snapshot.json index b244628a1..53d8a40f6 100644 --- a/catalogs/landscape/upstream-snapshot.json +++ b/catalogs/landscape/upstream-snapshot.json @@ -517,32 +517,40 @@ { "component_id": "claude-hud", "repository": "https://github.com/jarrodwatts/claude-hud", - "selected_repository_url": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0", - "selected_version": "0.8.0", - "selected_source_pin": null, + "selected_repository_url": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0", + "selected_version": "0.10.0", + "selected_source_pin": "75683c6de1ac07f6bbef00d739001679dba0740c", "checks": [ { "endpoint": "repos/jarrodwatts/claude-hud", "exit_code": 0, - "started_at": "2026-09-21T22:30:49.299526+00:00", - "ended_at": "2026-09-21T22:30:49.703719+00:00", - "stdout_sha256": "6e2cbb809f5d65907d9a422b29a2c5723bfe60a92035a81300a397fecd6b7665", + "started_at": "2026-10-03T05:50:27.408249+00:00", + "ended_at": "2026-10-03T05:50:27.705265+00:00", + "stdout_sha256": "1eef80a1c1034f1f97ae238a2c83bfcabb8d59e20d666db68669db454cde85ef", "status": "ok" }, { "endpoint": "repos/jarrodwatts/claude-hud/releases/latest", "exit_code": 0, - "started_at": "2026-09-21T22:30:49.703816+00:00", - "ended_at": "2026-09-21T22:30:50.029959+00:00", - "stdout_sha256": "292aaa5740254116774836f04a4fb4edc2ca2ddecd1c75d4884eb56485fe4985", + "started_at": "2026-10-03T05:50:27.705523+00:00", + "ended_at": "2026-10-03T05:50:28.002344+00:00", + "stdout_sha256": "6a227a56e88b9680c31a36105086e7bd403a3fe19de83f88c30bacc95e7e1953", + "status": "ok" + }, + { + "endpoint": "repos/jarrodwatts/claude-hud/commits/75683c6de1ac07f6bbef00d739001679dba0740c", + "exit_code": 0, + "started_at": "2026-10-03T05:50:28.002578+00:00", + "ended_at": "2026-10-03T05:50:28.260179+00:00", + "stdout_sha256": "91a438d860f1044f8b9e712ef25f81e5081f71c7e07ee27e174a7d692d1275ad", "status": "ok" }, { - "endpoint": "repos/jarrodwatts/claude-hud/commits/v0.8.0", + "endpoint": "repos/jarrodwatts/claude-hud/commits/v0.10.0", "exit_code": 0, - "started_at": "2026-09-21T22:30:50.030138+00:00", - "ended_at": "2026-09-21T22:30:50.601153+00:00", - "stdout_sha256": "66174593d5a241eac00582b9b17e17d57beed7ab23d107152aa96ac77282b528", + "started_at": "2026-10-03T05:50:28.260485+00:00", + "ended_at": "2026-10-03T05:50:28.512459+00:00", + "stdout_sha256": "91a438d860f1044f8b9e712ef25f81e5081f71c7e07ee27e174a7d692d1275ad", "status": "ok" } ], @@ -550,27 +558,98 @@ "archived": false, "disabled": false, "default_branch": "main", - "pushed_at": "2026-09-19T21:32:54Z", + "pushed_at": "2026-10-01T19:27:55Z", "license_spdx": "MIT", "latest_stable_release": { - "tag_name": "v0.8.0", - "published_at": "2026-08-18T14:20:35Z", - "html_url": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0", + "tag_name": "v0.10.0", + "published_at": "2026-10-01T19:11:24Z", + "html_url": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0", "target_commitish": "main", "prerelease": false, "draft": false }, "latest_release_source": { - "ref": "v0.8.0", - "sha": "ef5f1c8b167572ad1443c70629763ea8780af96b", - "html_url": "https://github.com/jarrodwatts/claude-hud/commit/ef5f1c8b167572ad1443c70629763ea8780af96b", - "committed_at": "2026-08-18T14:18:36Z" + "ref": "v0.10.0", + "sha": "75683c6de1ac07f6bbef00d739001679dba0740c", + "html_url": "https://github.com/jarrodwatts/claude-hud/commit/75683c6de1ac07f6bbef00d739001679dba0740c", + "committed_at": "2026-10-01T19:09:48Z" }, "status": "metadata_checked", "adoption_recommendation": "retain_selected_pending_capability_comparison", - "source_pin_kind": "version_only", + "source_pin_kind": "git_commit", "primary_repository": "https://github.com/jarrodwatts/claude-hud", - "release_relationship": "selected_version_matches_latest_stable" + "release_relationship": "selected_version_matches_latest_stable", + "historical_observations": [ + { + "preserved_at_utc": "2026-10-03T05:55:06.824136+00:00", + "observation": { + "component_id": "claude-hud", + "repository": "https://github.com/jarrodwatts/claude-hud", + "selected_repository_url": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0", + "selected_version": "0.8.0", + "selected_source_pin": null, + "checks": [ + { + "endpoint": "repos/jarrodwatts/claude-hud", + "exit_code": 0, + "started_at": "2026-09-21T22:30:49.299526+00:00", + "ended_at": "2026-09-21T22:30:49.703719+00:00", + "stdout_sha256": "6e2cbb809f5d65907d9a422b29a2c5723bfe60a92035a81300a397fecd6b7665", + "status": "ok" + }, + { + "endpoint": "repos/jarrodwatts/claude-hud/releases/latest", + "exit_code": 0, + "started_at": "2026-09-21T22:30:49.703816+00:00", + "ended_at": "2026-09-21T22:30:50.029959+00:00", + "stdout_sha256": "292aaa5740254116774836f04a4fb4edc2ca2ddecd1c75d4884eb56485fe4985", + "status": "ok" + }, + { + "endpoint": "repos/jarrodwatts/claude-hud/commits/v0.8.0", + "exit_code": 0, + "started_at": "2026-09-21T22:30:50.030138+00:00", + "ended_at": "2026-09-21T22:30:50.601153+00:00", + "stdout_sha256": "66174593d5a241eac00582b9b17e17d57beed7ab23d107152aa96ac77282b528", + "status": "ok" + } + ], + "canonical_repository": "https://github.com/jarrodwatts/claude-hud", + "archived": false, + "disabled": false, + "default_branch": "main", + "pushed_at": "2026-09-19T21:32:54Z", + "license_spdx": "MIT", + "latest_stable_release": { + "tag_name": "v0.8.0", + "published_at": "2026-08-18T14:20:35Z", + "html_url": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0", + "target_commitish": "main", + "prerelease": false, + "draft": false + }, + "latest_release_source": { + "ref": "v0.8.0", + "sha": "ef5f1c8b167572ad1443c70629763ea8780af96b", + "html_url": "https://github.com/jarrodwatts/claude-hud/commit/ef5f1c8b167572ad1443c70629763ea8780af96b", + "committed_at": "2026-08-18T14:18:36Z" + }, + "status": "metadata_checked", + "adoption_recommendation": "retain_selected_pending_capability_comparison", + "source_pin_kind": "version_only", + "primary_repository": "https://github.com/jarrodwatts/claude-hud", + "release_relationship": "selected_version_matches_latest_stable" + } + } + ], + "checked_at": "2026-10-03T05:50:28.512459+00:00", + "selected_pin_source": { + "ref": "75683c6de1ac07f6bbef00d739001679dba0740c", + "sha": "75683c6de1ac07f6bbef00d739001679dba0740c", + "html_url": "https://github.com/jarrodwatts/claude-hud/commit/75683c6de1ac07f6bbef00d739001679dba0740c", + "committed_at": "2026-10-01T19:09:48Z" + }, + "selected_pin_matches_latest_release_commit": true }, { "component_id": "codebase-memory-mcp", @@ -1314,31 +1393,39 @@ "component_id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", "selected_repository_url": "https://github.com/modelcontextprotocol/inspector", - "selected_version": "2.8.0", + "selected_version": "2.9.0", "selected_source_pin": null, "checks": [ { "endpoint": "repos/modelcontextprotocol/inspector", "exit_code": 0, - "started_at": "2026-09-26T05:12:19.618918+00:00", - "ended_at": "2026-09-26T05:12:20.040490+00:00", - "stdout_sha256": "177adb3808ea390fa93d1accd17d33e834c42ca706d6df2c18a182aa0c740179", + "started_at": "2026-10-03T05:50:26.265526+00:00", + "ended_at": "2026-10-03T05:50:26.666095+00:00", + "stdout_sha256": "3e8889965d6785f77b2b96112bed3843300fd17aafe038fbdfff3118d0985b08", "status": "ok" }, { "endpoint": "repos/modelcontextprotocol/inspector/releases/latest", "exit_code": 0, - "started_at": "2026-09-26T05:12:20.040613+00:00", - "ended_at": "2026-09-26T05:12:20.326130+00:00", - "stdout_sha256": "179768c54552e222e7e1eea10eac603336f9e75095450d783236bd4bdac54789", + "started_at": "2026-10-03T05:50:26.666351+00:00", + "ended_at": "2026-10-03T05:50:26.893603+00:00", + "stdout_sha256": "25009ca28912f22d6895978660d1c4a22ef020aad64169e6d7787bda7d6d152d", "status": "ok" }, { - "endpoint": "repos/modelcontextprotocol/inspector/commits/2.8.0", + "endpoint": "repos/modelcontextprotocol/inspector/commits/ae865a19178ddf6f375780a02e9c77c4cf4da184", "exit_code": 0, - "started_at": "2026-09-26T05:12:20.326542+00:00", - "ended_at": "2026-09-26T05:12:20.884260+00:00", - "stdout_sha256": "9f2e791b58bb92303fcdc8e0772e51e986c3471c9c539b3411e1430e9f46267b", + "started_at": "2026-10-03T05:50:26.893878+00:00", + "ended_at": "2026-10-03T05:50:27.215051+00:00", + "stdout_sha256": "820b4d5b5bb3359d805ca06189499e633efb3a4acda95414201404370f70780f", + "status": "ok" + }, + { + "endpoint": "repos/modelcontextprotocol/inspector/commits/2.9.0", + "exit_code": 0, + "started_at": "2026-10-03T05:50:27.215420+00:00", + "ended_at": "2026-10-03T05:50:27.551451+00:00", + "stdout_sha256": "820b4d5b5bb3359d805ca06189499e633efb3a4acda95414201404370f70780f", "status": "ok" } ], @@ -1346,57 +1433,136 @@ "archived": false, "disabled": false, "default_branch": "main", - "pushed_at": "2026-09-26T05:11:26Z", + "pushed_at": "2026-10-02T19:37:46Z", "license_spdx": "NOASSERTION", "latest_stable_release": { - "tag_name": "2.8.0", - "published_at": "2026-09-23T18:16:18Z", - "html_url": "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0", - "target_commitish": "main", + "tag_name": "2.9.0", + "published_at": "2026-09-30T22:23:56Z", + "html_url": "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0", + "target_commitish": "ae865a19178ddf6f375780a02e9c77c4cf4da184", "prerelease": false, "draft": false }, "latest_release_source": { - "ref": "2.8.0", - "sha": "1e31c78fbf81a989e8eb47021c6281d7876ad7fd", - "html_url": "https://github.com/modelcontextprotocol/inspector/commit/1e31c78fbf81a989e8eb47021c6281d7876ad7fd", - "committed_at": "2026-09-23T18:13:50Z" + "ref": "2.9.0", + "sha": "ae865a19178ddf6f375780a02e9c77c4cf4da184", + "html_url": "https://github.com/modelcontextprotocol/inspector/commit/ae865a19178ddf6f375780a02e9c77c4cf4da184", + "committed_at": "2026-09-30T22:23:03Z" }, "status": "metadata_checked", "adoption_recommendation": "retain_selected_pending_capability_comparison", "source_pin_kind": "version_only", "primary_repository": "https://github.com/modelcontextprotocol/inspector", - "release_relationship": "selected_version_matches_latest_stable" + "release_relationship": "selected_version_matches_latest_stable", + "historical_observations": [ + { + "preserved_at_utc": "2026-10-03T05:55:06.824136+00:00", + "observation": { + "component_id": "mcp-inspector", + "repository": "https://github.com/modelcontextprotocol/inspector", + "selected_repository_url": "https://github.com/modelcontextprotocol/inspector", + "selected_version": "2.8.0", + "selected_source_pin": null, + "checks": [ + { + "endpoint": "repos/modelcontextprotocol/inspector", + "exit_code": 0, + "started_at": "2026-09-26T05:12:19.618918+00:00", + "ended_at": "2026-09-26T05:12:20.040490+00:00", + "stdout_sha256": "177adb3808ea390fa93d1accd17d33e834c42ca706d6df2c18a182aa0c740179", + "status": "ok" + }, + { + "endpoint": "repos/modelcontextprotocol/inspector/releases/latest", + "exit_code": 0, + "started_at": "2026-09-26T05:12:20.040613+00:00", + "ended_at": "2026-09-26T05:12:20.326130+00:00", + "stdout_sha256": "179768c54552e222e7e1eea10eac603336f9e75095450d783236bd4bdac54789", + "status": "ok" + }, + { + "endpoint": "repos/modelcontextprotocol/inspector/commits/2.8.0", + "exit_code": 0, + "started_at": "2026-09-26T05:12:20.326542+00:00", + "ended_at": "2026-09-26T05:12:20.884260+00:00", + "stdout_sha256": "9f2e791b58bb92303fcdc8e0772e51e986c3471c9c539b3411e1430e9f46267b", + "status": "ok" + } + ], + "canonical_repository": "https://github.com/modelcontextprotocol/inspector", + "archived": false, + "disabled": false, + "default_branch": "main", + "pushed_at": "2026-09-26T05:11:26Z", + "license_spdx": "NOASSERTION", + "latest_stable_release": { + "tag_name": "2.8.0", + "published_at": "2026-09-23T18:16:18Z", + "html_url": "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0", + "target_commitish": "main", + "prerelease": false, + "draft": false + }, + "latest_release_source": { + "ref": "2.8.0", + "sha": "1e31c78fbf81a989e8eb47021c6281d7876ad7fd", + "html_url": "https://github.com/modelcontextprotocol/inspector/commit/1e31c78fbf81a989e8eb47021c6281d7876ad7fd", + "committed_at": "2026-09-23T18:13:50Z" + }, + "status": "metadata_checked", + "adoption_recommendation": "retain_selected_pending_capability_comparison", + "source_pin_kind": "version_only", + "primary_repository": "https://github.com/modelcontextprotocol/inspector", + "release_relationship": "selected_version_matches_latest_stable" + } + } + ], + "checked_at": "2026-10-03T05:50:27.551451+00:00", + "selected_pin_source": { + "ref": "ae865a19178ddf6f375780a02e9c77c4cf4da184", + "sha": "ae865a19178ddf6f375780a02e9c77c4cf4da184", + "html_url": "https://github.com/modelcontextprotocol/inspector/commit/ae865a19178ddf6f375780a02e9c77c4cf4da184", + "committed_at": "2026-09-30T22:23:03Z" + }, + "selected_pin_matches_latest_release_commit": true }, { "component_id": "mcporter", "repository": "https://github.com/openclaw/mcporter", - "selected_repository_url": "https://github.com/openclaw/mcporter/tree/v0.14.1", - "selected_version": "0.14.1", + "selected_repository_url": "https://github.com/openclaw/mcporter/tree/v0.14.2", + "selected_version": "0.14.2", "selected_source_pin": null, "checks": [ { "endpoint": "repos/openclaw/mcporter", "exit_code": 0, - "started_at": "2026-09-25T20:59:21.515671+00:00", - "ended_at": "2026-09-25T20:59:21.923837+00:00", - "stdout_sha256": "b3f524e759af70b735b18ba3265fd11367d905d57137133f3d8b5a0e6e8f6b98", + "started_at": "2026-10-03T05:50:27.642381+00:00", + "ended_at": "2026-10-03T05:50:27.993166+00:00", + "stdout_sha256": "99540d98c8f7c763f29d150f85aa20c4d907a8ba1e893de4a6feffda56012988", "status": "ok" }, { "endpoint": "repos/openclaw/mcporter/releases/latest", "exit_code": 0, - "started_at": "2026-09-25T20:59:21.924008+00:00", - "ended_at": "2026-09-25T20:59:22.256453+00:00", - "stdout_sha256": "849eaa7722b314c1c79ace3ac1bd374b6a4f6b24a78c3cd24b2077d4fe7f050c", + "started_at": "2026-10-03T05:50:27.993405+00:00", + "ended_at": "2026-10-03T05:50:28.250033+00:00", + "stdout_sha256": "0f03fb3adf27eec7af988468fb21576aa6aba61ed00e7deab129f6e82c24c68e", + "status": "ok" + }, + { + "endpoint": "repos/openclaw/mcporter/commits/aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "exit_code": 0, + "started_at": "2026-10-03T05:50:28.250309+00:00", + "ended_at": "2026-10-03T05:50:28.570581+00:00", + "stdout_sha256": "24ce8c193ab2a8cdf608ac6225ab408ca52254ae55683cb699aeab2ec175110b", "status": "ok" }, { - "endpoint": "repos/openclaw/mcporter/commits/v0.14.1", + "endpoint": "repos/openclaw/mcporter/commits/v0.14.2", "exit_code": 0, - "started_at": "2026-09-25T20:59:22.256612+00:00", - "ended_at": "2026-09-25T20:59:22.618318+00:00", - "stdout_sha256": "d3d837ff22ae29f38338f6d5fd42009829326f89457a9c7fe73f29970f98904d", + "started_at": "2026-10-03T05:50:28.571161+00:00", + "ended_at": "2026-10-03T05:50:28.896720+00:00", + "stdout_sha256": "24ce8c193ab2a8cdf608ac6225ab408ca52254ae55683cb699aeab2ec175110b", "status": "ok" } ], @@ -1404,65 +1570,136 @@ "archived": false, "disabled": false, "default_branch": "main", - "pushed_at": "2026-09-25T11:19:38Z", + "pushed_at": "2026-10-01T18:43:11Z", "license_spdx": "MIT", "latest_stable_release": { - "tag_name": "v0.14.1", - "published_at": "2026-09-24T13:16:08Z", - "html_url": "https://github.com/openclaw/mcporter/releases/tag/v0.14.1", + "tag_name": "v0.14.2", + "published_at": "2026-10-01T18:24:07Z", + "html_url": "https://github.com/openclaw/mcporter/releases/tag/v0.14.2", "target_commitish": "main", "prerelease": false, "draft": false }, "latest_release_source": { - "ref": "v0.14.1", - "sha": "93e0916cafe2d624b94271e31b75ca681a016514", - "html_url": "https://github.com/openclaw/mcporter/commit/93e0916cafe2d624b94271e31b75ca681a016514", - "committed_at": "2026-09-24T11:06:02Z" + "ref": "v0.14.2", + "sha": "aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "html_url": "https://github.com/openclaw/mcporter/commit/aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "committed_at": "2026-10-01T05:29:15Z" }, "status": "metadata_checked", "adoption_recommendation": "retain_selected_pending_capability_comparison", "source_pin_kind": "version_only", "primary_repository": "https://github.com/openclaw/mcporter", - "release_relationship": "selected_version_matches_latest_stable" + "release_relationship": "selected_version_matches_latest_stable", + "historical_observations": [ + { + "preserved_at_utc": "2026-10-03T05:55:06.824136+00:00", + "observation": { + "component_id": "mcporter", + "repository": "https://github.com/openclaw/mcporter", + "selected_repository_url": "https://github.com/openclaw/mcporter/tree/v0.14.1", + "selected_version": "0.14.1", + "selected_source_pin": null, + "checks": [ + { + "endpoint": "repos/openclaw/mcporter", + "exit_code": 0, + "started_at": "2026-09-25T20:59:21.515671+00:00", + "ended_at": "2026-09-25T20:59:21.923837+00:00", + "stdout_sha256": "b3f524e759af70b735b18ba3265fd11367d905d57137133f3d8b5a0e6e8f6b98", + "status": "ok" + }, + { + "endpoint": "repos/openclaw/mcporter/releases/latest", + "exit_code": 0, + "started_at": "2026-09-25T20:59:21.924008+00:00", + "ended_at": "2026-09-25T20:59:22.256453+00:00", + "stdout_sha256": "849eaa7722b314c1c79ace3ac1bd374b6a4f6b24a78c3cd24b2077d4fe7f050c", + "status": "ok" + }, + { + "endpoint": "repos/openclaw/mcporter/commits/v0.14.1", + "exit_code": 0, + "started_at": "2026-09-25T20:59:22.256612+00:00", + "ended_at": "2026-09-25T20:59:22.618318+00:00", + "stdout_sha256": "d3d837ff22ae29f38338f6d5fd42009829326f89457a9c7fe73f29970f98904d", + "status": "ok" + } + ], + "canonical_repository": "https://github.com/openclaw/mcporter", + "archived": false, + "disabled": false, + "default_branch": "main", + "pushed_at": "2026-09-25T11:19:38Z", + "license_spdx": "MIT", + "latest_stable_release": { + "tag_name": "v0.14.1", + "published_at": "2026-09-24T13:16:08Z", + "html_url": "https://github.com/openclaw/mcporter/releases/tag/v0.14.1", + "target_commitish": "main", + "prerelease": false, + "draft": false + }, + "latest_release_source": { + "ref": "v0.14.1", + "sha": "93e0916cafe2d624b94271e31b75ca681a016514", + "html_url": "https://github.com/openclaw/mcporter/commit/93e0916cafe2d624b94271e31b75ca681a016514", + "committed_at": "2026-09-24T11:06:02Z" + }, + "status": "metadata_checked", + "adoption_recommendation": "retain_selected_pending_capability_comparison", + "source_pin_kind": "version_only", + "primary_repository": "https://github.com/openclaw/mcporter", + "release_relationship": "selected_version_matches_latest_stable" + } + } + ], + "checked_at": "2026-10-03T05:50:28.896720+00:00", + "selected_pin_source": { + "ref": "aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "sha": "aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "html_url": "https://github.com/openclaw/mcporter/commit/aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "committed_at": "2026-10-01T05:29:15Z" + }, + "selected_pin_matches_latest_release_commit": true }, { "component_id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", "selected_repository_url": "https://github.com/alphaXiv/OpenResearch", - "selected_version": "0.2.7", - "selected_source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "selected_version": "0.2.15", + "selected_source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", "checks": [ { "endpoint": "repos/alphaXiv/OpenResearch", "exit_code": 0, - "started_at": "2026-09-21T22:31:47.228516+00:00", - "ended_at": "2026-09-21T22:31:47.713472+00:00", - "stdout_sha256": "275bd7cda4d149656af8726494b843ab1f8bd7f0d62607bfc64a879b4647143e", + "started_at": "2026-10-03T05:50:26.264947+00:00", + "ended_at": "2026-10-03T05:50:26.600418+00:00", + "stdout_sha256": "e20328f9e56fdc90ca402b7eae1cddcff37db7c730a25c2dc143d5e3926b63f4", "status": "ok" }, { "endpoint": "repos/alphaXiv/OpenResearch/releases/latest", "exit_code": 0, - "started_at": "2026-09-21T22:31:47.713628+00:00", - "ended_at": "2026-09-21T22:31:48.207808+00:00", - "stdout_sha256": "0580f27b7232503c70110025e01f7999680a2d5786892c04545fc8819dd505cd", + "started_at": "2026-10-03T05:50:26.600678+00:00", + "ended_at": "2026-10-03T05:50:26.847347+00:00", + "stdout_sha256": "b0f0cab6c98d8bd47ff85c5af24891ae89cfb3a5b951dcb97f7179462df5a5de", "status": "ok" }, { - "endpoint": "repos/alphaXiv/OpenResearch/commits/24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "endpoint": "repos/alphaXiv/OpenResearch/commits/ee36ef0333ca3c533eace915f1bec322a1efde1c", "exit_code": 0, - "started_at": "2026-09-21T22:31:48.208098+00:00", - "ended_at": "2026-09-21T22:31:48.562616+00:00", - "stdout_sha256": "ac5c81d4004a68796bae2be47facefe5c6efce2538aeebdf36306e3ed6c41c85", + "started_at": "2026-10-03T05:50:26.848058+00:00", + "ended_at": "2026-10-03T05:50:27.128687+00:00", + "stdout_sha256": "1fd77363a6f5b8ad8fbdd13bc3cc7a9cec0af4181b3d4088361cf65b5c9fee62", "status": "ok" }, { - "endpoint": "repos/alphaXiv/OpenResearch/commits/v0.2.7", + "endpoint": "repos/alphaXiv/OpenResearch/commits/v0.2.15", "exit_code": 0, - "started_at": "2026-09-21T22:31:48.562707+00:00", - "ended_at": "2026-09-21T22:31:49.006152+00:00", - "stdout_sha256": "ac5c81d4004a68796bae2be47facefe5c6efce2538aeebdf36306e3ed6c41c85", + "started_at": "2026-10-03T05:50:27.128958+00:00", + "ended_at": "2026-10-03T05:50:27.434104+00:00", + "stdout_sha256": "1fd77363a6f5b8ad8fbdd13bc3cc7a9cec0af4181b3d4088361cf65b5c9fee62", "status": "ok" } ], @@ -1470,64 +1707,151 @@ "archived": false, "disabled": false, "default_branch": "main", - "pushed_at": "2026-09-21T22:29:08Z", + "pushed_at": "2026-10-03T04:04:06Z", "license_spdx": "MIT", "latest_stable_release": { - "tag_name": "v0.2.7", - "published_at": "2026-09-21T08:30:58Z", - "html_url": "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7", - "target_commitish": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "tag_name": "v0.2.15", + "published_at": "2026-10-02T17:44:48Z", + "html_url": "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15", + "target_commitish": "ee36ef0333ca3c533eace915f1bec322a1efde1c", "prerelease": false, "draft": false }, "selected_pin_source": { - "ref": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", - "sha": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", - "html_url": "https://github.com/alphaXiv/OpenResearch/commit/24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", - "committed_at": "2026-09-21T08:14:09Z" + "ref": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "sha": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "html_url": "https://github.com/alphaXiv/OpenResearch/commit/ee36ef0333ca3c533eace915f1bec322a1efde1c", + "committed_at": "2026-10-02T02:28:29Z" }, "latest_release_source": { - "ref": "v0.2.7", - "sha": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", - "html_url": "https://github.com/alphaXiv/OpenResearch/commit/24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", - "committed_at": "2026-09-21T08:14:09Z" + "ref": "v0.2.15", + "sha": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "html_url": "https://github.com/alphaXiv/OpenResearch/commit/ee36ef0333ca3c533eace915f1bec322a1efde1c", + "committed_at": "2026-10-02T02:28:29Z" }, "status": "metadata_checked", "adoption_recommendation": "retain_selected_pending_capability_comparison", "source_pin_kind": "git_commit", "primary_repository": "https://github.com/alphaXiv/OpenResearch", "release_relationship": "selected_version_matches_latest_stable", - "selected_pin_matches_latest_release_commit": true + "selected_pin_matches_latest_release_commit": true, + "historical_observations": [ + { + "preserved_at_utc": "2026-10-03T05:55:06.824136+00:00", + "observation": { + "component_id": "openresearch", + "repository": "https://github.com/alphaXiv/OpenResearch", + "selected_repository_url": "https://github.com/alphaXiv/OpenResearch", + "selected_version": "0.2.7", + "selected_source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "checks": [ + { + "endpoint": "repos/alphaXiv/OpenResearch", + "exit_code": 0, + "started_at": "2026-09-21T22:31:47.228516+00:00", + "ended_at": "2026-09-21T22:31:47.713472+00:00", + "stdout_sha256": "275bd7cda4d149656af8726494b843ab1f8bd7f0d62607bfc64a879b4647143e", + "status": "ok" + }, + { + "endpoint": "repos/alphaXiv/OpenResearch/releases/latest", + "exit_code": 0, + "started_at": "2026-09-21T22:31:47.713628+00:00", + "ended_at": "2026-09-21T22:31:48.207808+00:00", + "stdout_sha256": "0580f27b7232503c70110025e01f7999680a2d5786892c04545fc8819dd505cd", + "status": "ok" + }, + { + "endpoint": "repos/alphaXiv/OpenResearch/commits/24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "exit_code": 0, + "started_at": "2026-09-21T22:31:48.208098+00:00", + "ended_at": "2026-09-21T22:31:48.562616+00:00", + "stdout_sha256": "ac5c81d4004a68796bae2be47facefe5c6efce2538aeebdf36306e3ed6c41c85", + "status": "ok" + }, + { + "endpoint": "repos/alphaXiv/OpenResearch/commits/v0.2.7", + "exit_code": 0, + "started_at": "2026-09-21T22:31:48.562707+00:00", + "ended_at": "2026-09-21T22:31:49.006152+00:00", + "stdout_sha256": "ac5c81d4004a68796bae2be47facefe5c6efce2538aeebdf36306e3ed6c41c85", + "status": "ok" + } + ], + "canonical_repository": "https://github.com/alphaXiv/OpenResearch", + "archived": false, + "disabled": false, + "default_branch": "main", + "pushed_at": "2026-09-21T22:29:08Z", + "license_spdx": "MIT", + "latest_stable_release": { + "tag_name": "v0.2.7", + "published_at": "2026-09-21T08:30:58Z", + "html_url": "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7", + "target_commitish": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "prerelease": false, + "draft": false + }, + "selected_pin_source": { + "ref": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "sha": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "html_url": "https://github.com/alphaXiv/OpenResearch/commit/24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "committed_at": "2026-09-21T08:14:09Z" + }, + "latest_release_source": { + "ref": "v0.2.7", + "sha": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "html_url": "https://github.com/alphaXiv/OpenResearch/commit/24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "committed_at": "2026-09-21T08:14:09Z" + }, + "status": "metadata_checked", + "adoption_recommendation": "retain_selected_pending_capability_comparison", + "source_pin_kind": "git_commit", + "primary_repository": "https://github.com/alphaXiv/OpenResearch", + "release_relationship": "selected_version_matches_latest_stable", + "selected_pin_matches_latest_release_commit": true + } + } + ], + "checked_at": "2026-10-03T05:50:27.434104+00:00" }, { "component_id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", "selected_repository_url": "https://github.com/microsoft/playwright-cli", - "selected_version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", + "selected_version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", "selected_source_pin": null, "checks": [ { "endpoint": "repos/microsoft/playwright-cli", "exit_code": 0, - "started_at": "2026-09-21T22:31:49.487873+00:00", - "ended_at": "2026-09-21T22:31:49.979181+00:00", - "stdout_sha256": "f194e8638df9115a0ad8db27d7338f297e1a41ac54ea44da83d3181353f1a6b0", + "started_at": "2026-10-03T05:50:26.264446+00:00", + "ended_at": "2026-10-03T05:50:26.717410+00:00", + "stdout_sha256": "8c6f21427cb3061d2ffc77ebfc71bdb48d29bf3515685cda75095a9a154d13c7", "status": "ok" }, { "endpoint": "repos/microsoft/playwright-cli/releases/latest", "exit_code": 0, - "started_at": "2026-09-21T22:31:49.979275+00:00", - "ended_at": "2026-09-21T22:31:50.394033+00:00", - "stdout_sha256": "9de9b899845f9bdcec365ddfd9c324c48eaa5daa7fee473f64ad8afd41db89eb", + "started_at": "2026-10-03T05:50:26.717640+00:00", + "ended_at": "2026-10-03T05:50:26.989657+00:00", + "stdout_sha256": "c33eb616038124751bfa29d1f54150323a86286afb4af42758ec5da356ec8e0b", + "status": "ok" + }, + { + "endpoint": "repos/microsoft/playwright-cli/commits/b85c7a736bb473bf55b584e54a09ffa698d6d871", + "exit_code": 0, + "started_at": "2026-10-03T05:50:26.989873+00:00", + "ended_at": "2026-10-03T05:50:27.302466+00:00", + "stdout_sha256": "8cc4e442825d47fc09f93f03448b81645efaa13090851c4226e07aff72a1f864", "status": "ok" }, { - "endpoint": "repos/microsoft/playwright-cli/commits/v0.1.21", + "endpoint": "repos/microsoft/playwright-cli/commits/v0.1.22", "exit_code": 0, - "started_at": "2026-09-21T22:31:50.394229+00:00", - "ended_at": "2026-09-21T22:31:50.852323+00:00", - "stdout_sha256": "d354472d40ce1380bc2fb9ddf9f9a7f98f566eefedbbecee798f19def4c27af6", + "started_at": "2026-10-03T05:50:27.302725+00:00", + "ended_at": "2026-10-03T05:50:27.642073+00:00", + "stdout_sha256": "8cc4e442825d47fc09f93f03448b81645efaa13090851c4226e07aff72a1f864", "status": "ok" } ], @@ -1535,27 +1859,98 @@ "archived": false, "disabled": false, "default_branch": "main", - "pushed_at": "2026-09-18T23:34:47Z", + "pushed_at": "2026-09-28T23:23:12Z", "license_spdx": "Apache-2.0", "latest_stable_release": { - "tag_name": "v0.1.21", - "published_at": "2026-09-18T23:34:47Z", - "html_url": "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.21", + "tag_name": "v0.1.22", + "published_at": "2026-09-28T23:23:13Z", + "html_url": "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22", "target_commitish": "main", "prerelease": false, "draft": false }, "latest_release_source": { - "ref": "v0.1.21", - "sha": "74354ecc7a43da16d91a9bc54fa8db8283a3fcf5", - "html_url": "https://github.com/microsoft/playwright-cli/commit/74354ecc7a43da16d91a9bc54fa8db8283a3fcf5", - "committed_at": "2026-09-18T23:28:12Z" + "ref": "v0.1.22", + "sha": "b85c7a736bb473bf55b584e54a09ffa698d6d871", + "html_url": "https://github.com/microsoft/playwright-cli/commit/b85c7a736bb473bf55b584e54a09ffa698d6d871", + "committed_at": "2026-09-28T23:22:31Z" }, "status": "metadata_checked", "adoption_recommendation": "retain_selected_pending_capability_comparison", "source_pin_kind": "version_only", "primary_repository": "https://github.com/microsoft/playwright-cli", - "release_relationship": "selected_version_matches_latest_stable" + "release_relationship": "selected_version_matches_latest_stable", + "historical_observations": [ + { + "preserved_at_utc": "2026-10-03T05:55:06.824136+00:00", + "observation": { + "component_id": "playwright-cli", + "repository": "https://github.com/microsoft/playwright-cli", + "selected_repository_url": "https://github.com/microsoft/playwright-cli", + "selected_version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", + "selected_source_pin": null, + "checks": [ + { + "endpoint": "repos/microsoft/playwright-cli", + "exit_code": 0, + "started_at": "2026-09-21T22:31:49.487873+00:00", + "ended_at": "2026-09-21T22:31:49.979181+00:00", + "stdout_sha256": "f194e8638df9115a0ad8db27d7338f297e1a41ac54ea44da83d3181353f1a6b0", + "status": "ok" + }, + { + "endpoint": "repos/microsoft/playwright-cli/releases/latest", + "exit_code": 0, + "started_at": "2026-09-21T22:31:49.979275+00:00", + "ended_at": "2026-09-21T22:31:50.394033+00:00", + "stdout_sha256": "9de9b899845f9bdcec365ddfd9c324c48eaa5daa7fee473f64ad8afd41db89eb", + "status": "ok" + }, + { + "endpoint": "repos/microsoft/playwright-cli/commits/v0.1.21", + "exit_code": 0, + "started_at": "2026-09-21T22:31:50.394229+00:00", + "ended_at": "2026-09-21T22:31:50.852323+00:00", + "stdout_sha256": "d354472d40ce1380bc2fb9ddf9f9a7f98f566eefedbbecee798f19def4c27af6", + "status": "ok" + } + ], + "canonical_repository": "https://github.com/microsoft/playwright-cli", + "archived": false, + "disabled": false, + "default_branch": "main", + "pushed_at": "2026-09-18T23:34:47Z", + "license_spdx": "Apache-2.0", + "latest_stable_release": { + "tag_name": "v0.1.21", + "published_at": "2026-09-18T23:34:47Z", + "html_url": "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.21", + "target_commitish": "main", + "prerelease": false, + "draft": false + }, + "latest_release_source": { + "ref": "v0.1.21", + "sha": "74354ecc7a43da16d91a9bc54fa8db8283a3fcf5", + "html_url": "https://github.com/microsoft/playwright-cli/commit/74354ecc7a43da16d91a9bc54fa8db8283a3fcf5", + "committed_at": "2026-09-18T23:28:12Z" + }, + "status": "metadata_checked", + "adoption_recommendation": "retain_selected_pending_capability_comparison", + "source_pin_kind": "version_only", + "primary_repository": "https://github.com/microsoft/playwright-cli", + "release_relationship": "selected_version_matches_latest_stable" + } + } + ], + "checked_at": "2026-10-03T05:50:27.642073+00:00", + "selected_pin_source": { + "ref": "b85c7a736bb473bf55b584e54a09ffa698d6d871", + "sha": "b85c7a736bb473bf55b584e54a09ffa698d6d871", + "html_url": "https://github.com/microsoft/playwright-cli/commit/b85c7a736bb473bf55b584e54a09ffa698d6d871", + "committed_at": "2026-09-28T23:22:31Z" + }, + "selected_pin_matches_latest_release_commit": true }, { "component_id": "promptfoo", @@ -2354,39 +2749,39 @@ "component_id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", "selected_repository_url": "https://github.com/max-sixty/worktrunk", - "selected_version": "0.79.0", - "selected_source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "selected_version": "0.80.0", + "selected_source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", "checks": [ { "endpoint": "repos/max-sixty/worktrunk", "exit_code": 0, - "started_at": "2026-09-21T22:32:49.861479+00:00", - "ended_at": "2026-09-21T22:32:50.255902+00:00", - "stdout_sha256": "77d1de462104cba63fb8899505cd1731026c7dc55d54ad860ea45089dbaf52a4", + "started_at": "2026-10-03T05:50:27.551710+00:00", + "ended_at": "2026-10-03T05:50:27.850863+00:00", + "stdout_sha256": "caf913d3aaf6e621b46ce4b59f1fa53be35032d7f304f94453ae82d4f22d57b7", "status": "ok" }, { "endpoint": "repos/max-sixty/worktrunk/releases/latest", "exit_code": 0, - "started_at": "2026-09-21T22:32:50.255989+00:00", - "ended_at": "2026-09-21T22:32:50.667058+00:00", - "stdout_sha256": "be08eeb0e7b950953e420af210590675ead5585a04e85b667d38cccd89bc8ce9", + "started_at": "2026-10-03T05:50:27.851194+00:00", + "ended_at": "2026-10-03T05:50:28.131482+00:00", + "stdout_sha256": "c65bee197fd1e89af27be32310e1683af8bf1bebdd7fd6da43f495dad4606d05", "status": "ok" }, { - "endpoint": "repos/max-sixty/worktrunk/commits/5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "endpoint": "repos/max-sixty/worktrunk/commits/b49ca7eea9b03145791a5b94eccaf9c59412ed37", "exit_code": 0, - "started_at": "2026-09-21T22:32:50.667237+00:00", - "ended_at": "2026-09-21T22:32:51.086175+00:00", - "stdout_sha256": "d5b4ab7ed84674cf0deaf6659269fcb9873a9e52f0334f094c97a8ac5c93fb39", + "started_at": "2026-10-03T05:50:28.131899+00:00", + "ended_at": "2026-10-03T05:50:28.413949+00:00", + "stdout_sha256": "f6463368e4353d375593a0e6cf478df0577658046a300234276f27b758d6026c", "status": "ok" }, { - "endpoint": "repos/max-sixty/worktrunk/commits/v0.79.0", + "endpoint": "repos/max-sixty/worktrunk/commits/v0.80.0", "exit_code": 0, - "started_at": "2026-09-21T22:32:51.086294+00:00", - "ended_at": "2026-09-21T22:32:51.474593+00:00", - "stdout_sha256": "d5b4ab7ed84674cf0deaf6659269fcb9873a9e52f0334f094c97a8ac5c93fb39", + "started_at": "2026-10-03T05:50:28.414318+00:00", + "ended_at": "2026-10-03T05:50:28.691238+00:00", + "stdout_sha256": "f6463368e4353d375593a0e6cf478df0577658046a300234276f27b758d6026c", "status": "ok" } ], @@ -2394,64 +2789,151 @@ "archived": false, "disabled": false, "default_branch": "main", - "pushed_at": "2026-09-21T21:25:43Z", + "pushed_at": "2026-10-03T05:42:45Z", "license_spdx": "NOASSERTION", "latest_stable_release": { - "tag_name": "v0.79.0", - "published_at": "2026-09-21T01:01:42Z", - "html_url": "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0", - "target_commitish": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "tag_name": "v0.80.0", + "published_at": "2026-09-27T21:18:46Z", + "html_url": "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0", + "target_commitish": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", "prerelease": false, "draft": false }, "selected_pin_source": { - "ref": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "sha": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "html_url": "https://github.com/max-sixty/worktrunk/commit/5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "committed_at": "2026-09-21T00:48:07Z" + "ref": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "sha": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "html_url": "https://github.com/max-sixty/worktrunk/commit/b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "committed_at": "2026-09-27T20:55:48Z" }, "latest_release_source": { - "ref": "v0.79.0", - "sha": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "html_url": "https://github.com/max-sixty/worktrunk/commit/5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "committed_at": "2026-09-21T00:48:07Z" + "ref": "v0.80.0", + "sha": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "html_url": "https://github.com/max-sixty/worktrunk/commit/b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "committed_at": "2026-09-27T20:55:48Z" }, "status": "metadata_checked", "adoption_recommendation": "retain_selected_pending_capability_comparison", "source_pin_kind": "git_commit", "primary_repository": "https://github.com/max-sixty/worktrunk", "release_relationship": "selected_version_matches_latest_stable", - "selected_pin_matches_latest_release_commit": true + "selected_pin_matches_latest_release_commit": true, + "historical_observations": [ + { + "preserved_at_utc": "2026-10-03T05:55:06.824136+00:00", + "observation": { + "component_id": "worktrunk", + "repository": "https://github.com/max-sixty/worktrunk", + "selected_repository_url": "https://github.com/max-sixty/worktrunk", + "selected_version": "0.79.0", + "selected_source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "checks": [ + { + "endpoint": "repos/max-sixty/worktrunk", + "exit_code": 0, + "started_at": "2026-09-21T22:32:49.861479+00:00", + "ended_at": "2026-09-21T22:32:50.255902+00:00", + "stdout_sha256": "77d1de462104cba63fb8899505cd1731026c7dc55d54ad860ea45089dbaf52a4", + "status": "ok" + }, + { + "endpoint": "repos/max-sixty/worktrunk/releases/latest", + "exit_code": 0, + "started_at": "2026-09-21T22:32:50.255989+00:00", + "ended_at": "2026-09-21T22:32:50.667058+00:00", + "stdout_sha256": "be08eeb0e7b950953e420af210590675ead5585a04e85b667d38cccd89bc8ce9", + "status": "ok" + }, + { + "endpoint": "repos/max-sixty/worktrunk/commits/5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "exit_code": 0, + "started_at": "2026-09-21T22:32:50.667237+00:00", + "ended_at": "2026-09-21T22:32:51.086175+00:00", + "stdout_sha256": "d5b4ab7ed84674cf0deaf6659269fcb9873a9e52f0334f094c97a8ac5c93fb39", + "status": "ok" + }, + { + "endpoint": "repos/max-sixty/worktrunk/commits/v0.79.0", + "exit_code": 0, + "started_at": "2026-09-21T22:32:51.086294+00:00", + "ended_at": "2026-09-21T22:32:51.474593+00:00", + "stdout_sha256": "d5b4ab7ed84674cf0deaf6659269fcb9873a9e52f0334f094c97a8ac5c93fb39", + "status": "ok" + } + ], + "canonical_repository": "https://github.com/max-sixty/worktrunk", + "archived": false, + "disabled": false, + "default_branch": "main", + "pushed_at": "2026-09-21T21:25:43Z", + "license_spdx": "NOASSERTION", + "latest_stable_release": { + "tag_name": "v0.79.0", + "published_at": "2026-09-21T01:01:42Z", + "html_url": "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0", + "target_commitish": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "prerelease": false, + "draft": false + }, + "selected_pin_source": { + "ref": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "sha": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "html_url": "https://github.com/max-sixty/worktrunk/commit/5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "committed_at": "2026-09-21T00:48:07Z" + }, + "latest_release_source": { + "ref": "v0.79.0", + "sha": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "html_url": "https://github.com/max-sixty/worktrunk/commit/5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "committed_at": "2026-09-21T00:48:07Z" + }, + "status": "metadata_checked", + "adoption_recommendation": "retain_selected_pending_capability_comparison", + "source_pin_kind": "git_commit", + "primary_repository": "https://github.com/max-sixty/worktrunk", + "release_relationship": "selected_version_matches_latest_stable", + "selected_pin_matches_latest_release_commit": true + } + } + ], + "checked_at": "2026-10-03T05:50:28.691238+00:00" }, { "component_id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", "selected_repository_url": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "selected_version": "0.161.0", + "selected_version": "0.162.0", "selected_source_pin": null, "checks": [ { "endpoint": "repos/open-telemetry/opentelemetry-collector-contrib", "exit_code": 0, - "started_at": "2026-09-21T22:32:47.963942+00:00", - "ended_at": "2026-09-21T22:32:48.476469+00:00", - "stdout_sha256": "8a4ad4d0839045c5a3a5c34014f39cc8e014e9b8634fed355370b2492c7e023c", + "started_at": "2026-10-03T05:50:27.434445+00:00", + "ended_at": "2026-10-03T05:50:27.867805+00:00", + "stdout_sha256": "1004156b020ffa0ba45ec636f07308b4f771b0781c6faae15c33f7439c694b58", "status": "ok" }, { "endpoint": "repos/open-telemetry/opentelemetry-collector-contrib/releases/latest", "exit_code": 0, - "started_at": "2026-09-21T22:32:48.476571+00:00", - "ended_at": "2026-09-21T22:32:48.823161+00:00", - "stdout_sha256": "6be4d178e9ee6c2c520174137d19398da45231ebb4c35d48501eeae51825bde0", + "started_at": "2026-10-03T05:50:27.868070+00:00", + "ended_at": "2026-10-03T05:50:28.103095+00:00", + "stdout_sha256": "227509dc4de124019591bc0fe0bb8ef21b327fe52890d262d17ef4d2aec17afd", "status": "ok" }, { - "endpoint": "repos/open-telemetry/opentelemetry-collector-contrib/commits/v0.161.0", + "endpoint": "repos/open-telemetry/opentelemetry-collector-contrib/commits/ae8c507510f48f433ab47dd1c6b01a59d6c388b5", "exit_code": 0, - "started_at": "2026-09-21T22:32:48.823457+00:00", - "ended_at": "2026-09-21T22:32:49.357935+00:00", - "stdout_sha256": "96be9c0bac6ed8fff4b6eff8f63e868c3e43680fdee21e21e3e177d86fc91c6e", + "started_at": "2026-10-03T05:50:28.104024+00:00", + "ended_at": "2026-10-03T05:50:28.529857+00:00", + "stdout_sha256": "17bbbf673f584c369735a054fcd6b92cf89b1d72b2bda1f77f8a9ac114b9bdf4", + "status": "ok" + }, + { + "endpoint": "repos/open-telemetry/opentelemetry-collector-contrib/commits/v0.162.0", + "exit_code": 0, + "started_at": "2026-10-03T05:50:28.542380+00:00", + "ended_at": "2026-10-03T05:50:28.968101+00:00", + "stdout_sha256": "17bbbf673f584c369735a054fcd6b92cf89b1d72b2bda1f77f8a9ac114b9bdf4", "status": "ok" } ], @@ -2459,27 +2941,98 @@ "archived": false, "disabled": false, "default_branch": "main", - "pushed_at": "2026-09-21T21:48:07Z", + "pushed_at": "2026-10-02T19:48:47Z", "license_spdx": "Apache-2.0", "latest_stable_release": { - "tag_name": "v0.161.0", - "published_at": "2026-09-15T15:05:47Z", - "html_url": "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.161.0", + "tag_name": "v0.162.0", + "published_at": "2026-09-29T10:11:33Z", + "html_url": "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0", "target_commitish": "main", "prerelease": false, "draft": false }, "latest_release_source": { - "ref": "v0.161.0", - "sha": "3f8455d8038a985398861171e5310bc9b4e988b2", - "html_url": "https://github.com/open-telemetry/opentelemetry-collector-contrib/commit/3f8455d8038a985398861171e5310bc9b4e988b2", - "committed_at": "2026-09-15T10:33:45Z" + "ref": "v0.162.0", + "sha": "ae8c507510f48f433ab47dd1c6b01a59d6c388b5", + "html_url": "https://github.com/open-telemetry/opentelemetry-collector-contrib/commit/ae8c507510f48f433ab47dd1c6b01a59d6c388b5", + "committed_at": "2026-09-29T09:11:04Z" }, "status": "metadata_checked", "adoption_recommendation": "retain_selected_pending_capability_comparison", "source_pin_kind": "version_only", "primary_repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "release_relationship": "selected_version_matches_latest_stable" + "release_relationship": "selected_version_matches_latest_stable", + "historical_observations": [ + { + "preserved_at_utc": "2026-10-03T05:55:06.824136+00:00", + "observation": { + "component_id": "opentelemetry-collector-contrib", + "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "selected_repository_url": "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "selected_version": "0.161.0", + "selected_source_pin": null, + "checks": [ + { + "endpoint": "repos/open-telemetry/opentelemetry-collector-contrib", + "exit_code": 0, + "started_at": "2026-09-21T22:32:47.963942+00:00", + "ended_at": "2026-09-21T22:32:48.476469+00:00", + "stdout_sha256": "8a4ad4d0839045c5a3a5c34014f39cc8e014e9b8634fed355370b2492c7e023c", + "status": "ok" + }, + { + "endpoint": "repos/open-telemetry/opentelemetry-collector-contrib/releases/latest", + "exit_code": 0, + "started_at": "2026-09-21T22:32:48.476571+00:00", + "ended_at": "2026-09-21T22:32:48.823161+00:00", + "stdout_sha256": "6be4d178e9ee6c2c520174137d19398da45231ebb4c35d48501eeae51825bde0", + "status": "ok" + }, + { + "endpoint": "repos/open-telemetry/opentelemetry-collector-contrib/commits/v0.161.0", + "exit_code": 0, + "started_at": "2026-09-21T22:32:48.823457+00:00", + "ended_at": "2026-09-21T22:32:49.357935+00:00", + "stdout_sha256": "96be9c0bac6ed8fff4b6eff8f63e868c3e43680fdee21e21e3e177d86fc91c6e", + "status": "ok" + } + ], + "canonical_repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "archived": false, + "disabled": false, + "default_branch": "main", + "pushed_at": "2026-09-21T21:48:07Z", + "license_spdx": "Apache-2.0", + "latest_stable_release": { + "tag_name": "v0.161.0", + "published_at": "2026-09-15T15:05:47Z", + "html_url": "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.161.0", + "target_commitish": "main", + "prerelease": false, + "draft": false + }, + "latest_release_source": { + "ref": "v0.161.0", + "sha": "3f8455d8038a985398861171e5310bc9b4e988b2", + "html_url": "https://github.com/open-telemetry/opentelemetry-collector-contrib/commit/3f8455d8038a985398861171e5310bc9b4e988b2", + "committed_at": "2026-09-15T10:33:45Z" + }, + "status": "metadata_checked", + "adoption_recommendation": "retain_selected_pending_capability_comparison", + "source_pin_kind": "version_only", + "primary_repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "release_relationship": "selected_version_matches_latest_stable" + } + } + ], + "checked_at": "2026-10-03T05:50:28.968101+00:00", + "selected_pin_source": { + "ref": "ae8c507510f48f433ab47dd1c6b01a59d6c388b5", + "sha": "ae8c507510f48f433ab47dd1c6b01a59d6c388b5", + "html_url": "https://github.com/open-telemetry/opentelemetry-collector-contrib/commit/ae8c507510f48f433ab47dd1c6b01a59d6c388b5", + "committed_at": "2026-09-29T09:11:04Z" + }, + "selected_pin_matches_latest_release_commit": true }, { "component_id": "prometheus", @@ -3132,39 +3685,39 @@ "component_id": "syft", "repository": "https://github.com/anchore/syft", "selected_repository_url": "https://github.com/anchore/syft", - "selected_version": "1.52.0", - "selected_source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "selected_version": "1.54.0", + "selected_source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "checks": [ { "endpoint": "repos/anchore/syft", "exit_code": 0, - "started_at": "2026-09-21T22:33:24.559699+00:00", - "ended_at": "2026-09-21T22:33:24.982376+00:00", - "stdout_sha256": "b6b6398530fd05bb241a98e1033aa9b640bca59fd4890bf0aa1eecde8bde5c2f", + "started_at": "2026-10-03T05:50:28.512869+00:00", + "ended_at": "2026-10-03T05:50:28.825921+00:00", + "stdout_sha256": "c9793fbd5c0319983ccf6f9f6b2cd3836296e718bb4071d422f75de865a48e24", "status": "ok" }, { "endpoint": "repos/anchore/syft/releases/latest", "exit_code": 0, - "started_at": "2026-09-21T22:33:24.982497+00:00", - "ended_at": "2026-09-21T22:33:25.294854+00:00", - "stdout_sha256": "5d4b00e1eed7a8d88815df392b2b136055791ff348a309f46c9c36dcccd595fa", + "started_at": "2026-10-03T05:50:28.826194+00:00", + "ended_at": "2026-10-03T05:50:29.100900+00:00", + "stdout_sha256": "a611ca1c6865b189c03778f245761b88defb6e1d830a3505957d02d7b7fa9588", "status": "ok" }, { - "endpoint": "repos/anchore/syft/commits/02ba369d13b4248395b20a504eca94b0cab564d8", + "endpoint": "repos/anchore/syft/commits/cc326e45a6213360266dda4b30cc68095946d676", "exit_code": 0, - "started_at": "2026-09-21T22:33:25.295146+00:00", - "ended_at": "2026-09-21T22:33:25.666537+00:00", - "stdout_sha256": "ce5bab36dabe2e4bc11280c50d5c78f4cfc0cbcd343ce30e4ba7b84fba555f6c", + "started_at": "2026-10-03T05:50:29.101689+00:00", + "ended_at": "2026-10-03T05:50:29.448978+00:00", + "stdout_sha256": "64720efc1828ec8905184f903735d526962be49ad8def251379b5d273c294797", "status": "ok" }, { - "endpoint": "repos/anchore/syft/commits/v1.52.0", + "endpoint": "repos/anchore/syft/commits/v1.54.0", "exit_code": 0, - "started_at": "2026-09-21T22:33:25.666637+00:00", - "ended_at": "2026-09-21T22:33:26.027472+00:00", - "stdout_sha256": "ce5bab36dabe2e4bc11280c50d5c78f4cfc0cbcd343ce30e4ba7b84fba555f6c", + "started_at": "2026-10-03T05:50:29.449234+00:00", + "ended_at": "2026-10-03T05:50:29.732600+00:00", + "stdout_sha256": "64720efc1828ec8905184f903735d526962be49ad8def251379b5d273c294797", "status": "ok" } ], @@ -3172,34 +3725,113 @@ "archived": false, "disabled": false, "default_branch": "main", - "pushed_at": "2026-09-18T13:30:43Z", + "pushed_at": "2026-10-02T20:50:41Z", "license_spdx": "Apache-2.0", "latest_stable_release": { - "tag_name": "v1.52.0", - "published_at": "2026-09-17T14:38:17Z", - "html_url": "https://github.com/anchore/syft/releases/tag/v1.52.0", + "tag_name": "v1.54.0", + "published_at": "2026-10-01T20:54:29Z", + "html_url": "https://github.com/anchore/syft/releases/tag/v1.54.0", "target_commitish": "main", "prerelease": false, "draft": false }, "selected_pin_source": { - "ref": "02ba369d13b4248395b20a504eca94b0cab564d8", - "sha": "02ba369d13b4248395b20a504eca94b0cab564d8", - "html_url": "https://github.com/anchore/syft/commit/02ba369d13b4248395b20a504eca94b0cab564d8", - "committed_at": "2026-09-17T14:09:46Z" + "ref": "cc326e45a6213360266dda4b30cc68095946d676", + "sha": "cc326e45a6213360266dda4b30cc68095946d676", + "html_url": "https://github.com/anchore/syft/commit/cc326e45a6213360266dda4b30cc68095946d676", + "committed_at": "2026-10-01T19:00:50Z" }, "latest_release_source": { - "ref": "v1.52.0", - "sha": "02ba369d13b4248395b20a504eca94b0cab564d8", - "html_url": "https://github.com/anchore/syft/commit/02ba369d13b4248395b20a504eca94b0cab564d8", - "committed_at": "2026-09-17T14:09:46Z" + "ref": "v1.54.0", + "sha": "cc326e45a6213360266dda4b30cc68095946d676", + "html_url": "https://github.com/anchore/syft/commit/cc326e45a6213360266dda4b30cc68095946d676", + "committed_at": "2026-10-01T19:00:50Z" }, "status": "metadata_checked", "adoption_recommendation": "retain_selected_pending_capability_comparison", "source_pin_kind": "git_commit", "primary_repository": "https://github.com/anchore/syft", "release_relationship": "selected_version_matches_latest_stable", - "selected_pin_matches_latest_release_commit": true + "selected_pin_matches_latest_release_commit": true, + "historical_observations": [ + { + "preserved_at_utc": "2026-10-03T05:55:06.824136+00:00", + "observation": { + "component_id": "syft", + "repository": "https://github.com/anchore/syft", + "selected_repository_url": "https://github.com/anchore/syft", + "selected_version": "1.52.0", + "selected_source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "checks": [ + { + "endpoint": "repos/anchore/syft", + "exit_code": 0, + "started_at": "2026-09-21T22:33:24.559699+00:00", + "ended_at": "2026-09-21T22:33:24.982376+00:00", + "stdout_sha256": "b6b6398530fd05bb241a98e1033aa9b640bca59fd4890bf0aa1eecde8bde5c2f", + "status": "ok" + }, + { + "endpoint": "repos/anchore/syft/releases/latest", + "exit_code": 0, + "started_at": "2026-09-21T22:33:24.982497+00:00", + "ended_at": "2026-09-21T22:33:25.294854+00:00", + "stdout_sha256": "5d4b00e1eed7a8d88815df392b2b136055791ff348a309f46c9c36dcccd595fa", + "status": "ok" + }, + { + "endpoint": "repos/anchore/syft/commits/02ba369d13b4248395b20a504eca94b0cab564d8", + "exit_code": 0, + "started_at": "2026-09-21T22:33:25.295146+00:00", + "ended_at": "2026-09-21T22:33:25.666537+00:00", + "stdout_sha256": "ce5bab36dabe2e4bc11280c50d5c78f4cfc0cbcd343ce30e4ba7b84fba555f6c", + "status": "ok" + }, + { + "endpoint": "repos/anchore/syft/commits/v1.52.0", + "exit_code": 0, + "started_at": "2026-09-21T22:33:25.666637+00:00", + "ended_at": "2026-09-21T22:33:26.027472+00:00", + "stdout_sha256": "ce5bab36dabe2e4bc11280c50d5c78f4cfc0cbcd343ce30e4ba7b84fba555f6c", + "status": "ok" + } + ], + "canonical_repository": "https://github.com/anchore/syft", + "archived": false, + "disabled": false, + "default_branch": "main", + "pushed_at": "2026-09-18T13:30:43Z", + "license_spdx": "Apache-2.0", + "latest_stable_release": { + "tag_name": "v1.52.0", + "published_at": "2026-09-17T14:38:17Z", + "html_url": "https://github.com/anchore/syft/releases/tag/v1.52.0", + "target_commitish": "main", + "prerelease": false, + "draft": false + }, + "selected_pin_source": { + "ref": "02ba369d13b4248395b20a504eca94b0cab564d8", + "sha": "02ba369d13b4248395b20a504eca94b0cab564d8", + "html_url": "https://github.com/anchore/syft/commit/02ba369d13b4248395b20a504eca94b0cab564d8", + "committed_at": "2026-09-17T14:09:46Z" + }, + "latest_release_source": { + "ref": "v1.52.0", + "sha": "02ba369d13b4248395b20a504eca94b0cab564d8", + "html_url": "https://github.com/anchore/syft/commit/02ba369d13b4248395b20a504eca94b0cab564d8", + "committed_at": "2026-09-17T14:09:46Z" + }, + "status": "metadata_checked", + "adoption_recommendation": "retain_selected_pending_capability_comparison", + "source_pin_kind": "git_commit", + "primary_repository": "https://github.com/anchore/syft", + "release_relationship": "selected_version_matches_latest_stable", + "selected_pin_matches_latest_release_commit": true + } + } + ], + "checked_at": "2026-10-03T05:50:29.732600+00:00" }, { "component_id": "alpaca-py", @@ -3954,39 +4586,39 @@ "component_id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", "selected_repository_url": "https://github.com/jgravelle/jcodemunch-mcp", - "selected_version": "1.108.319", - "selected_source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "selected_version": "1.108.327", + "selected_source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "checks": [ { "endpoint": "repos/jgravelle/jcodemunch-mcp", "exit_code": 0, - "started_at": "2026-09-21T22:34:01.751354+00:00", - "ended_at": "2026-09-21T22:34:02.126165+00:00", - "stdout_sha256": "c849803bc3d321fd40ad4fe2fb8255edb729f9a65d77bc8276ab9cc04a2a53d8", + "started_at": "2026-10-03T05:50:26.263923+00:00", + "ended_at": "2026-10-03T05:50:26.552288+00:00", + "stdout_sha256": "23c0e08651dc4c28954690f0b7388ff807791f7ae15371fe1db2ee53b85235c8", "status": "ok" }, { "endpoint": "repos/jgravelle/jcodemunch-mcp/releases/latest", "exit_code": 0, - "started_at": "2026-09-21T22:34:02.126268+00:00", - "ended_at": "2026-09-21T22:34:02.458347+00:00", - "stdout_sha256": "cbef3e853428d4793c7deb80cce843c1dffb01e237596dfd3269a300d6fb6eb7", + "started_at": "2026-10-03T05:50:26.552568+00:00", + "ended_at": "2026-10-03T05:50:26.804972+00:00", + "stdout_sha256": "b9189cd5b951b56a22995a6d1579ff471021364848956e7d548bff0bce16b9fd", "status": "ok" }, { - "endpoint": "repos/jgravelle/jcodemunch-mcp/commits/8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "endpoint": "repos/jgravelle/jcodemunch-mcp/commits/6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "exit_code": 0, - "started_at": "2026-09-21T22:34:02.458507+00:00", - "ended_at": "2026-09-21T22:34:02.968666+00:00", - "stdout_sha256": "b2360a54a4a270be57230c921cefc697b33ec91f9f9342c91dc64a710a1d30ea", + "started_at": "2026-10-03T05:50:26.805286+00:00", + "ended_at": "2026-10-03T05:50:27.105086+00:00", + "stdout_sha256": "58f7af21d83244862c88609a8ecadba60bfb001f3cebbe788c371fe6a51a17bf", "status": "ok" }, { - "endpoint": "repos/jgravelle/jcodemunch-mcp/commits/v1.108.319", + "endpoint": "repos/jgravelle/jcodemunch-mcp/commits/v1.108.327", "exit_code": 0, - "started_at": "2026-09-21T22:34:02.968825+00:00", - "ended_at": "2026-09-21T22:34:03.360901+00:00", - "stdout_sha256": "b2360a54a4a270be57230c921cefc697b33ec91f9f9342c91dc64a710a1d30ea", + "started_at": "2026-10-03T05:50:27.105452+00:00", + "ended_at": "2026-10-03T05:50:27.407841+00:00", + "stdout_sha256": "58f7af21d83244862c88609a8ecadba60bfb001f3cebbe788c371fe6a51a17bf", "status": "ok" } ], @@ -3994,34 +4626,113 @@ "archived": false, "disabled": false, "default_branch": "main", - "pushed_at": "2026-09-21T20:58:37Z", + "pushed_at": "2026-10-02T18:15:32Z", "license_spdx": "NOASSERTION", "latest_stable_release": { - "tag_name": "v1.108.319", - "published_at": "2026-09-16T14:04:32Z", - "html_url": "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", + "tag_name": "v1.108.327", + "published_at": "2026-10-02T18:21:53Z", + "html_url": "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", "target_commitish": "main", "prerelease": false, "draft": false }, "selected_pin_source": { - "ref": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", - "sha": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", - "html_url": "https://github.com/jgravelle/jcodemunch-mcp/commit/8f7b34abe16fb459e0bf1c04747d584216dfe32e", - "committed_at": "2026-09-16T11:26:45Z" + "ref": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "sha": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "html_url": "https://github.com/jgravelle/jcodemunch-mcp/commit/6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "committed_at": "2026-10-02T18:09:09Z" }, "latest_release_source": { - "ref": "v1.108.319", - "sha": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", - "html_url": "https://github.com/jgravelle/jcodemunch-mcp/commit/8f7b34abe16fb459e0bf1c04747d584216dfe32e", - "committed_at": "2026-09-16T11:26:45Z" + "ref": "v1.108.327", + "sha": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "html_url": "https://github.com/jgravelle/jcodemunch-mcp/commit/6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "committed_at": "2026-10-02T18:09:09Z" }, "status": "metadata_checked", "adoption_recommendation": "retain_selected_pending_capability_comparison", "source_pin_kind": "git_commit", "primary_repository": "https://github.com/jgravelle/jcodemunch-mcp", "release_relationship": "selected_version_matches_latest_stable", - "selected_pin_matches_latest_release_commit": true + "selected_pin_matches_latest_release_commit": true, + "historical_observations": [ + { + "preserved_at_utc": "2026-10-03T05:55:06.824136+00:00", + "observation": { + "component_id": "jcodemunch-mcp", + "repository": "https://github.com/jgravelle/jcodemunch-mcp", + "selected_repository_url": "https://github.com/jgravelle/jcodemunch-mcp", + "selected_version": "1.108.319", + "selected_source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "checks": [ + { + "endpoint": "repos/jgravelle/jcodemunch-mcp", + "exit_code": 0, + "started_at": "2026-09-21T22:34:01.751354+00:00", + "ended_at": "2026-09-21T22:34:02.126165+00:00", + "stdout_sha256": "c849803bc3d321fd40ad4fe2fb8255edb729f9a65d77bc8276ab9cc04a2a53d8", + "status": "ok" + }, + { + "endpoint": "repos/jgravelle/jcodemunch-mcp/releases/latest", + "exit_code": 0, + "started_at": "2026-09-21T22:34:02.126268+00:00", + "ended_at": "2026-09-21T22:34:02.458347+00:00", + "stdout_sha256": "cbef3e853428d4793c7deb80cce843c1dffb01e237596dfd3269a300d6fb6eb7", + "status": "ok" + }, + { + "endpoint": "repos/jgravelle/jcodemunch-mcp/commits/8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "exit_code": 0, + "started_at": "2026-09-21T22:34:02.458507+00:00", + "ended_at": "2026-09-21T22:34:02.968666+00:00", + "stdout_sha256": "b2360a54a4a270be57230c921cefc697b33ec91f9f9342c91dc64a710a1d30ea", + "status": "ok" + }, + { + "endpoint": "repos/jgravelle/jcodemunch-mcp/commits/v1.108.319", + "exit_code": 0, + "started_at": "2026-09-21T22:34:02.968825+00:00", + "ended_at": "2026-09-21T22:34:03.360901+00:00", + "stdout_sha256": "b2360a54a4a270be57230c921cefc697b33ec91f9f9342c91dc64a710a1d30ea", + "status": "ok" + } + ], + "canonical_repository": "https://github.com/jgravelle/jcodemunch-mcp", + "archived": false, + "disabled": false, + "default_branch": "main", + "pushed_at": "2026-09-21T20:58:37Z", + "license_spdx": "NOASSERTION", + "latest_stable_release": { + "tag_name": "v1.108.319", + "published_at": "2026-09-16T14:04:32Z", + "html_url": "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", + "target_commitish": "main", + "prerelease": false, + "draft": false + }, + "selected_pin_source": { + "ref": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "sha": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "html_url": "https://github.com/jgravelle/jcodemunch-mcp/commit/8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "committed_at": "2026-09-16T11:26:45Z" + }, + "latest_release_source": { + "ref": "v1.108.319", + "sha": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "html_url": "https://github.com/jgravelle/jcodemunch-mcp/commit/8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "committed_at": "2026-09-16T11:26:45Z" + }, + "status": "metadata_checked", + "adoption_recommendation": "retain_selected_pending_capability_comparison", + "source_pin_kind": "git_commit", + "primary_repository": "https://github.com/jgravelle/jcodemunch-mcp", + "release_relationship": "selected_version_matches_latest_stable", + "selected_pin_matches_latest_release_commit": true + } + } + ], + "checked_at": "2026-10-03T05:50:27.407841+00:00" }, { "component_id": "nextjs", diff --git a/docs/community-native-practice.md b/docs/community-native-practice.md index 0f38a09cf..d412e6464 100644 --- a/docs/community-native-practice.md +++ b/docs/community-native-practice.md @@ -153,7 +153,7 @@ The rows below point to those IDs. "agent-lab" marks a change made on agent-lab | [Yeachan-Heo/oh-my-claudecode](https://github.com/Yeachan-Heo/oh-my-claudecode/tree/9fd35ece5d6de65b511bf43b55e42c499e4fc194) | `9fd35ece5d6de65b511bf43b55e42c499e4fc194` | Recorded alternative; not installed. The stale-header gap is refuted: the header existed only in a stale local checkout and was removed at `a458886`. The commit-eligible artifacts are real; the `.gitignore` entries and the staging rule are adopted on the agent-lab branch (A8, A9, pending merge; shared with the addyosmani row). Four contradictions are rejected. It refines the README-depth row for this repository in `catalogs/us-equities/star-audit.json` (pin `5281b19e`). That row is unchanged and does not yet point here; [its owner](decisions/2026-09-24-community-sweep.md#deferred-work-and-owners) adds the pointer. | Any of: a paired run on this project's packets where OMC's hook and agent layer beats native Ultracode on the accepted result or on complete usage; a recorded failure in a covered area that OMC closes and the native setup does not. | | [karanb192/claude-code-hooks](https://github.com/karanb192/claude-code-hooks/tree/888ef0827f121d583fb3a07c6253a297787946dc) | `888ef0827f121d583fb3a07c6253a297787946dc` | adopt-practice for 2 of 4 gaps, reimplemented locally: the SessionEnd-to-SessionStart notice split for [`effort-default-guard.py`](../adoption/hooks/claude/effort-default-guard.py) (A6, applied here); a project Explore override, corrected to Sonnet at effort max (A2, agent-lab). The test-discovery gap is refuted at the latest ref (hermetic-suites job `4051cf2`), and the invisible-Unicode scan is rejected. The guard and gating plugins stay excluded by PS-1, and the token-diet presets are contradicted by DS-4. | Any of: DS-3's trial where an Opus Explore changes the accepted result, or a user decision that Opus Explore is deliberate; a documented change that makes SessionEnd surface `systemMessage`; a tracked test file neither run nor excluded; a worker is observed taking a harmful action. | | [mksglu/context-mode](https://github.com/mksglu/context-mode/tree/5a92b7caaf0086d04b87cc03a82505c891aa8254) | `5a92b7caaf0086d04b87cc03a82505c891aa8254` | Stays the core large-output lane at the installed `6f0cc68`; the 6 later commits change only `stats.json` (`gh api` compare). No new practice: the git-history-before-fix gap is rejected. Pin enforcement is handled under the claude-plugins-official row. | Any of: a recorded regression where a fix undid an earlier fix; the installed `gitCommitSha` moves off `6f0cc68` without a record; a credential is found in the context-mode or ai-memory session stores; a measured comparison shows native features alone match Context Mode. | -| [jarrodwatts/claude-hud](https://github.com/jarrodwatts/claude-hud/tree/939eb66485832dead1b0a28a954f76f7aa2bdb06) | `939eb66485832dead1b0a28a954f76f7aa2bdb06` | Stays the statusline at v0.8.0 (`ef5f1c8`), pinned by marketplace ref; no practice adopted. `refreshInterval` is [keep-but-compare M14](decisions/2026-09-24-community-sweep.md#keep-but-compare): the docs support it for the idle-coordinator pattern, but the git diff in each render rewrote `.git/index` under `--no-optional-locks` on git 2.43.0 (reproduced), while an env-injected `diff.autoRefreshIndex=false` did not. Updated 2026-09-28: #402 (`d022295a`, item 5 of the [settings decision](decisions/2026-09-27-claude-harness-settings.md)) adopted `refreshInterval: 5` in the settings template without the paired git setting, which follows in the template and host halves ([deferred](decisions/2026-09-28-community-sweep.md#deferred-handed-off-and-host-scope-items)); M14's idle run stays the check. | Any of: a live idle session shows stale segments (then add `refreshInterval` 5-10 with the env-injected config); a tagged release after v0.8.0 (re-review #734 and #719); a need to display cache or cost timing (use the native fields). | +| [jarrodwatts/claude-hud](https://github.com/jarrodwatts/claude-hud/tree/939eb66485832dead1b0a28a954f76f7aa2bdb06) | `939eb66485832dead1b0a28a954f76f7aa2bdb06` | Selected statusline pin is v0.10.0 (`75683c6de1ac07f6bbef00d739001679dba0740c`) as of 2026-10-03, pinned by marketplace ref; [W1 qualification and M14 amendment](decisions/2026-10-03-currency-wave-w1.md) cover synthetic rendering and the guarded template, with no host switch. The earlier v0.8.0 review remains historical. `refreshInterval` is [keep-but-compare M14](decisions/2026-09-24-community-sweep.md#keep-but-compare): the docs support it for the idle-coordinator pattern, but the v0.8.0 git diff in each render rewrote `.git/index` under `--no-optional-locks` on git 2.43.0 (reproduced), while an env-injected `diff.autoRefreshIndex=false` did not. Updated 2026-09-28: #402 (`d022295a`, item 5 of the [settings decision](decisions/2026-09-27-claude-harness-settings.md)) adopted `refreshInterval: 5` in the settings template without the paired git setting, which follows in the template and host halves ([deferred](decisions/2026-09-28-community-sweep.md#deferred-handed-off-and-host-scope-items)); M14's idle run stays the check. | Any of: a live idle session shows stale segments (then add `refreshInterval` 5-10 with the env-injected config); a tagged release carrying the hyperlink-wrap fix from #795, or another changed native-field rendering path (re-review #734 and #719); a need to display cache or cost timing (use the native fields). | ### Follow-up reads diff --git a/docs/decisions/2026-10-03-currency-wave-w1.md b/docs/decisions/2026-10-03-currency-wave-w1.md new file mode 100644 index 000000000..09a297839 --- /dev/null +++ b/docs/decisions/2026-10-03-currency-wave-w1.md @@ -0,0 +1,186 @@ +# Currency wave W1 — 2026-10-03 + +## Decision and north-star action + +Integrate the nine qualified foundation release pins from the W1 build contract. +This maintains the native tooling used to build complex projects and conduct the +north-star US-equities research and historical simulation. It changes repository +selections and supported installation recipes; host installation, service +replacement, broker operation and sealed landscape verdicts have separate scopes. + +The worktree base is published main commit +`dcae68bd08a191f37ba564eceda9fc4a9d6d4a6e`, on +`foundation/currency-w1-20261003`. The coordinator owns committing and pushing. +The qualification input is `W1-moves.json`, workflow +`wf_a95468d8-3af`; each receipt retains its SHA256 and the original qualification +commands, returned output, exit codes and explicit not-run sentinels. The Opus +judgments supplied with that packet are research leads. Current canonical +release/source metadata and local artifact rehashes corroborate the selected +identities; they do not expand the scope of the recorded functional evidence. + +## Moves and evidence + +| Component | Previous pin | Selected pin and upstream source | Qualification receipt | +| --- | --- | --- | --- | +| jcodemunch-mcp | 1.108.319 | [v1.108.327](https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327), commit `6d5ae86c130f96624e2ca2d797fa3b853c210b9d` | [Version and get_session_stats](../../evidence/receipts/jcodemunch-1108327-qualification-20261003.json) | +| playwright-cli | 0.1.21 | [v0.1.22](https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22), commit `b85c7a736bb473bf55b584e54a09ffa698d6d871`; bundled Playwright `1.64.0-alpha-1790635538000` | [Version and help](../../evidence/receipts/playwright-cli-0122-qualification-20261003.json) | +| openresearch | 0.2.7 | [v0.2.15](https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15), commit `ee36ef0333ca3c533eace915f1bec322a1efde1c` | [Archive integrity and isolated version](../../evidence/receipts/openresearch-0215-qualification-20261003.json) | +| mcp-inspector | 2.8.0 | [2.9.0](https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0), commit `ae865a19178ddf6f375780a02e9c77c4cf4da184` | [Version, help and new functional stdio runs](../../evidence/receipts/mcp-inspector-290-qualification-20261003.json) | +| claude-hud | 0.8.0 | [v0.10.0](https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0), commit `75683c6de1ac07f6bbef00d739001679dba0740c` | [Manifest versions and two synthetic stdin renders](../../evidence/receipts/claude-hud-0100-qualification-20261003.json) | +| opentelemetry-collector-contrib | 0.161.0 | [v0.162.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0), commit `ae8c507510f48f433ab47dd1c6b01a59d6c388b5`; [distribution release](https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.162.0) | [Archive, version and configuration validation](../../evidence/receipts/otelcol-contrib-0162-qualification-20261003.json) | +| worktrunk | 0.79.0 | [v0.80.0](https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0), commit `b49ca7eea9b03145791a5b94eccaf9c59412ed37` | [Version and synthetic repository list](../../evidence/receipts/worktrunk-0800-qualification-20261003.json) | +| mcporter | 0.14.1 | [v0.14.2](https://github.com/openclaw/mcporter/releases/tag/v0.14.2), commit `aa0f55f9bffcde9d2070c86145f37d4dd3525f6c` | [Version and new ad-hoc stdio canary](../../evidence/receipts/mcporter-0142-qualification-20261003.json) | +| syft | 1.52.0 | [v1.54.0](https://github.com/anchore/syft/releases/tag/v1.54.0), commit `cc326e45a6213360266dda4b30cc68095946d676` | [Version and recorded SDK inventory](../../evidence/receipts/syft-1540-qualification-20261003.json) | + +The integration worker rehashed all nine retained downloads and matched every +SHA256 in the W1 packet. The hashes have different upstream integrity bases: +publisher checksums, npm registry integrity/provenance, PyPI metadata, or—in +the HUD case—Git tree identity and a locally recorded archive digest. The +individual receipts preserve those distinctions and unverified signatures. + +For each component, the worker ran four fresh native `gh api` reads following +the upstream snapshot's methodology: repository metadata, `releases/latest`, +the selected exact source commit, and the latest stable release tag's commit. +All 36 commands exited zero. All nine latest stable tags matched their selected +candidate at collection time. The snapshot retains the original checks and +selected fields as dated `historical_observations`, and records genuine start/end +timestamps and SHA256s of raw API stdout for the new checks. Version-only stack +pins retain their pin semantics; resolving a commit for verification does not +silently change their installation format. HUD additionally records its exact +reviewed commit as the selected source pin. + +The additional Inspector gate used its existing scratch installation with a +temporary stdio config pointing to the documented jCodeMunch server. The +repository's `tools/list` and `tools/call` recipe flags were kept, substituting +that server and its documented `order/get_session_stats` request. Both calls +exited zero with `--stored-auth-only`: the list contained six tool names and +the call returned the six-tool counter surface. A deliberately unknown tool +returned `tool_not_found` with exit 5. This stdio server requires no stored +credentials, so the flag did not exercise OAuth. The new mcporter 0.14.2 +ad-hoc stdio call returned the same counter surface with exit zero, without +using an existing daemon. Actual output and the independent `last_seen_version` +observation are retained in [native-checks.json](../../evidence/artifacts/currency-wave-w1-20261003/native-checks.json). + +The recorded OpenResearch functional smoke is explicitly not run. Its +`native_cli_e2e` receipt follows the build contract's required receipt kind, +but the claim is limited to the version output and does not establish live +discovery or paper retrieval. Playwright's help/version acceptance does not +establish browser operation. The Collector's configuration validation does not +establish live traffic or a host service switch. Syft's recorded inventory does +not establish signature verification or SPDX output on the new release. + +## HUD integration and M14 amendment + +The template now checks that the selected plugin directory and entry file exist +before invoking Node. This adopts the entry-existence check in upstream +[scripts/statusline.mjs at the selected commit](https://github.com/jarrodwatts/claude-hud/blob/75683c6de1ac07f6bbef00d739001679dba0740c/scripts/statusline.mjs#L35). +The previous command could resolve a missing plugin to the open project's +`dist/index.js`. The regression test invokes the rendered command with an +instrumented Node fixture for absent plugin, missing entry and installed entry +conditions; it does not execute arbitrary project code. The same test against +the original unguarded template failed both missing-plugin conditions (exit 1, +two subtest failures), and passed against the guarded template (exit 0). Both +results are retained beside the native checks. Template-managed hosts +keep their reviewed statusLine command when adopting the plugin: upstream setup +backs up settings and replaces a statusLine containing `claude-hud`, with its +runtime selected from PATH ([setup source](https://github.com/jarrodwatts/claude-hud/blob/75683c6de1ac07f6bbef00d739001679dba0740c/scripts/setup.mjs)). + +The September 24/28 M14 decisions retain their bytes and their 0.8.0 observations. +At 0.10.0, [dist/git.js](https://github.com/jarrodwatts/claude-hud/blob/75683c6de1ac07f6bbef00d739001679dba0740c/dist/git.js) +uses `git --no-optional-locks status --porcelain=v2 --branch -z`, and requests +`diff --numstat` only on a dirty tree when line diffs are requested. An idle +interactive-session check remains open; synthetic formatting does not close it. +Upstream [PR #795](https://github.com/jarrodwatts/claude-hud/pull/795), merge commit +`c0c4866780b101f0ee281f2ddd356b7ebf649879`, fixes hyperlink wrapping after +v0.10.0 and remains a follow-up. [Issue #796](https://github.com/jarrodwatts/claude-hud/issues/796) +is open for `showDiskUsage`; the supplied judge found that field absent in the +old tagged pin as well. These source-review residuals are separate from the +observed fixture render. + +## Holds and cooldown waiver + +The user ended the seven-day cooldown for clean releases on 2026-10-03. +This removes an age-only delay; it does not waive qualification, known +regressions, functional gates or recipe compatibility. Alternatives were to +retain the nine previous pins for the remaining cooldown, adopt the qualified +releases within their measured scopes, or skip ahead to unqualified releases. +Adopt the qualified set; retain each previous pin as the rollback reference. + +The W1 `holds_not_in_scope` entries stay out of this integration: + +| Component | Hold reason and next unit | +| --- | --- | +| beads | v1.3.1 has the known upstream regression #7030 in the `bd close` path, so it does not meet the clean-release waiver. The supplied hold retains the normal cooldown through 2026-10-07T23:37:36Z; a cooldown ending alone does not fix the regression. | +| agentsview | 0.44.0 passes release/integrity/version checks but its behavior changes require a recipe rewire and functional qualification. That work has a separate owner. | +| grafana | The supplied hold records no observed release status, download/hash, installed candidate or smoke. Requalification is running separately. | +| agent-browser | The supplied hold records placeholder stable-release metadata and missing artifact/install/smoke/release-note qualification. Requalification is running separately. | +| headroom | The supplied hold records no verified 0.39.1 wheel, binary or smoke. Requalification is running separately; this is not evidence of a release defect. | +| dagu | The supplied hold records no verified 2.18.1 archive, installed version or behavior review. Requalification is running separately. | +| rtk | The supplied hold records no candidate artifact, observed version or qualified release metadata. Requalification is running separately. | + +## Completeness critic and next sweep + +Search-first used the existing native recipes and upstream snapshot method; no +custom installer or acceptance runner was added. Scoped ai-memory CLI searches +used limit 2: the task-filtered query returned no hits, and the widened query +returned unrelated release notes, so no retrieved memory claim was adopted. The +installed CLI help did not expose pin-priority arguments, and the template MCP +endpoint did not provide a usable schema. The initial Inspector help lookup +used a local npm binary layout and failed with exit 127; the packet's global +installation path corrected it, and native help plus the functional runs +verified that correction. The failure and recovery remain in native-checks.json. + +The worker compared every supplied `pin_sites` list with its own full `git grep` +results and classified current installation pins separately from historical +source anchors, recorded outputs, unrelated dependency versions and sealed +verdicts. The latest source identities are verified by original API responses. +Existing Linux pin entries were updated for `orx` and `mcporter`; the other seven +components have no entries in that file, and their supported recipe formats +remain in use. The two generated report pairs are rebuilt by their own write +commands. `build_ecosystem.py` is check-only. + +The remaining modalities for the next lifecycle-keyed sweep are real browser +operation, authenticated public-literature retrieval, Inspector HTTP/SSE/OAuth +and UI paths, mcporter daemon/serve/OAuth/recovery, HUD live interactive and idle +rendering, Collector traffic/restart, Worktrunk create/remove/dirty-refusal, Syft +SPDX/signature verification, and independent macOS qualification. Source +currency, local artifact identity and native fixture execution remain distinct +from unchanged upstream test suites and full host lifecycle acceptance. Those +gaps do not become passed through older receipts. The five separate +requalification units, beads regression repair and AgentsView recipe rewire +are the next candidate classes; this bounded wave does not establish complete +ecosystem saturation or a model-quality improvement. + +Off-limit configuration-owner files, all `blueprints/us-equities/` files, +historical receipts, prior decisions, dated catalogs and sweep manifests retain +their bytes. Reports may display the intentional difference between current +stack pins and older sealed landscape winners. + +## Supplemental test environment correction + +The additional pin-consistency modules initially hit two native `npm pack` +fixture-setup errors (exit 226). A minimal native pack reproduced `EROFS` +against the inherited home npm cache. A first scratch-cache attempt also used +`/dev/null` for both npm configuration layers; npm rejected that double-loaded +path with exit 1. Distinct empty scratch user/global files and a writable cache +restored native packaging (exit 0). This follows the distinct npm config paths +in the W1 installation records, preserves both failed attempts and does not +change host configuration or repository test behavior. Both affected native +npm fixture classes then passed (25 tests), and the original four-module +supplemental suite passed with the isolated configuration; its complete +returned test totals are retained in native-checks.json. The required build +contract checks passed with their original command lines. + +## Overturn condition and rollback + +Reopen a move on a regression in its documented command path, an advisory +affecting the selected artifact or dependency tree, a failed new-host/runtime +qualification, changed upstream artifacts, or better primary evidence from a +matched qualification. Specific open conditions include the HUD hyperlink fix, +Inspector OAuth migration and profile isolation, mcporter's bundled-client/server +dependency mismatch, and Syft's unverified new Sigstore bundle format. +Revert the selected stack/audit/snapshot row, supported recipe, artifact hash +and affected CI pin together, preserving the failed receipt and observations. +Inspector rollback after an OAuth-store migration may need a fresh sign-in; +this wave exercised stdio only. Host rollback, service swaps and sealed verdict +refreshes remain separately owned operations. diff --git a/docs/foundation-stack.md b/docs/foundation-stack.md index 1e14e0505..414f5be37 100644 --- a/docs/foundation-stack.md +++ b/docs/foundation-stack.md @@ -12,7 +12,7 @@ The foundation wave's [acceptance receipt](../evidence/receipts/foundation-nativ | Find documentation | [QMD 2.8.3](https://github.com/tobi/qmd/releases/tag/v2.8.3) | Named BM25 index and selected Markdown collection; search then read the returned source. No embedding model is needed for this lane. | | Conceptual code search | [SocratiCode 1.15.0](https://github.com/giancarloerra/SocratiCode/releases/tag/v1.15.0) (macOS pin 1.14.0), [Qdrant 1.19.1](https://github.com/qdrant/qdrant/releases/tag/v1.19.1), [vLLM 0.30.0](https://github.com/vllm-project/vllm/releases/tag/v0.30.0) | One project, local embeddings and persistent vectors; exact returned source plus automatic add/change/delete observation. | | Symbols and references | [Serena](https://github.com/oraios/serena/tree/c6fbd1c5932df2494ffa0020af5a9fbe80b82143) | Enable Python and TypeScript where used; test each actual extension/language. A Bash-only server does not establish Python/TypeScript support. | -| Reduce selected tool context | [RTK](https://github.com/rtk-ai/rtk/releases/tag/v0.50.0), [Context Mode](https://github.com/mksglu/context-mode), [jCodeMunch](https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319), [Headroom](https://github.com/headroomlabs-ai/headroom) | Choose the smallest representation satisfying the task; preserve full output/recovery and signed comparisons. These do not automatically intercept every client call. | +| Reduce selected tool context | [RTK](https://github.com/rtk-ai/rtk/releases/tag/v0.50.0), [Context Mode](https://github.com/mksglu/context-mode), [jCodeMunch](https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327), [Headroom](https://github.com/headroomlabs-ai/headroom) | Choose the smallest representation satisfying the task; preserve full output/recovery and signed comparisons. These do not automatically intercept every client call. | | Optional gateway | [OmniRoute 3.8.50](https://github.com/diegosouzapw/OmniRoute/releases/tag/v3.8.50) | Separate process-level route and scoped inference key. Local lifecycle can pass while provider acceptance remains unavailable. | The pins above are the component pins in [manifests/stack.json](../manifests/stack.json), re-checked 2026-09-26. The 2026-09-20 acceptance receipt predates four of them: it records ai-memory 2.3.2, and this table then named vLLM 0.25.0, RTK 0.49.0 and SocratiCode 1.14.0. Each newer pin's qualification is in its component's `freshness` note, except SocratiCode 1.15.0, qualified on 2026-09-27 in [its receipt](../evidence/receipts/socraticode-1150-qualification-20260927.json). For ai-memory and RTK that note also records that the landscape winner pin keeps its verdict wave's version (2.3.2 and 0.49.0) until a new wave; SocratiCode's winner pin likewise stays 1.14.0. Headroom's canonical upstream is `headroomlabs-ai/headroom`; `chopratejas/headroom` redirects there. diff --git a/docs/github-automation.md b/docs/github-automation.md index 6e79ef888..da6d3cb69 100644 --- a/docs/github-automation.md +++ b/docs/github-automation.md @@ -408,7 +408,7 @@ not currently visible anywhere the job's own output is read. download/verify/install steps for the exact same `nautilus_trader==2.0.0rc5` wheel set into an isolated venv (no bwrap sandbox -- this job only needs an installed environment to scan, not to execute the engine), generates an SPDX -and a CycloneDX SBOM with syft 1.52.0, scans both with grype (see pin below), +and a CycloneDX SBOM with syft 1.54.0, scans both with grype (see pin below), and writes `summary.json` (versions, `grype db status`, package count, findings by severity). Since 2026-09-22 it runs grype with `--config .grype.yaml --fail-on high`, so a High or Critical match fails the job; the job is @@ -450,9 +450,9 @@ repos/seathatflowsinourveins/native-agent-stack/rules/branches/main` returns a `required_status_checks` rule listing `validate`, `token-report` and `secret-scan` under ruleset id 23739774. -`supply-chain.yml`'s `sbom-vuln` job uses syft 1.52.0 (linux_amd64 tarball -SHA-256 `caeedb81fb0491615f1ebd1761e4145d41ee86dd2cc7bf80669f9f5ad9d6133d`, -read from `https://github.com/anchore/syft/releases/download/v1.52.0/syft_1.52.0_checksums.txt`) +`supply-chain.yml`'s `sbom-vuln` job uses syft 1.54.0 (linux_amd64 tarball +SHA-256 `54a87372498168b2d033e876fd41fa4e8035b872699e525a57046e1f2f09c860`, +read from `https://github.com/anchore/syft/releases/download/v1.54.0/syft_1.54.0_checksums.txt`) and grype 0.119.0 (linux_amd64 tarball SHA-256 `3fa2dc4b924621ab65404cf08d0b8438d896d80ab949c9d5a4ca283c36004c9b`, read from `https://github.com/anchore/grype/releases/download/v0.119.0/grype_0.119.0_checksums.txt`). @@ -723,10 +723,10 @@ release notes carry the `gh attestation verify` and `gh release verify-asset` commands. No hosted tag run of this job exists yet. The job now produces two attested artifacts per run, not one. After the -existing archive-and-hash step, a SHA-256-checked download of syft 1.52.0 -(`syft_1.52.0_linux_amd64.tar.gz`, verified against the upstream -`syft_1.52.0_checksums.txt` and pinned in-workflow to -`caeedb81fb0491615f1ebd1761e4145d41ee86dd2cc7bf80669f9f5ad9d6133d`) scans the +existing archive-and-hash step, a SHA-256-checked download of syft 1.54.0 +(`syft_1.54.0_linux_amd64.tar.gz`, verified against the upstream +`syft_1.54.0_checksums.txt` and pinned in-workflow to +`54a87372498168b2d033e876fd41fa4e8035b872699e525a57046e1f2f09c860`) scans the checked-out tree and writes `native-agent-stack-${GITHUB_SHA}.spdx.json`. A second `actions/attest` step (same pinned action SHA as the archive's) attests that SBOM with diff --git a/docs/new-host-grand-list.md b/docs/new-host-grand-list.md index d22873a23..eadebb156 100644 --- a/docs/new-host-grand-list.md +++ b/docs/new-host-grand-list.md @@ -75,7 +75,7 @@ Locally-run model weights a host receipt recorded qualifying on a runtime compon | | | `candidate:openai-skills` | unpinned | local_integration | conditional | untested | — | | | Isolation | retain | `worktrunk` | 0.79.0 | native_proven | host_verified | host_verified | — | 16 / 19 | | | | `sandbox-runtime` | 0.0.77 | native_proven | host_verified | untested | — | | -| MCP servers and client surfaces | retain | `mcporter` | 0.13.13 (behind v0.14.0) | native_proven | host_verified, bootstrap 0.14.1 | untested, bootstrap 0.13.13 | foundation-cpu, macos-arm64-foundation, token-efficiency | 12 / 14 | +| MCP servers and client surfaces | retain | `mcporter` | 0.13.13 (behind v0.14.0) | native_proven | host_verified, bootstrap 0.14.2 | untested, bootstrap 0.13.13 | foundation-cpu, macos-arm64-foundation, token-efficiency | 12 / 14 | | | | `mcp-inspector` | 2.7.0 | native_proven | host_verified | untested | — | | | Native clients | retain | `claude-code` | 2.1.278 (behind v2.1.280) | native_proven | accepted, bootstrap 2.1.284 | untested, bootstrap 2.1.284 | new-wsl-clean-foundation, foundation-cpu, research-runtime, macos-arm64-foundation, token-efficiency | 9 / 14 | | | | `codex` | 0.155.1 (behind rust-v0.156.0) | native_proven | host_verified, bootstrap 0.159.3 | untested, bootstrap 0.155.1 | new-wsl-clean-foundation, foundation-cpu, research-runtime, macos-arm64-foundation, token-efficiency | | @@ -97,7 +97,7 @@ Locally-run model weights a host receipt recorded qualifying on a runtime compon | | | `ccusage` | 20.0.24 | synthetic | host_verified, bootstrap 20.0.26 | untested, bootstrap 20.0.26 | token-efficiency | | | Web research | retain | `tavily-cli` | 0.1.8 | local_integration | conditional, bootstrap 0.1.8 | untested | — | 7 / 9 | | | | `agent-browser` | 0.38.1 | local_integration | conditional, bootstrap 0.38.1 | untested | — | | -| | | `openresearch` | 0.2.7 (behind v0.2.9) | local_integration | conditional, bootstrap 0.2.7 | untested | — | | +| | | `openresearch` | 0.2.7 (behind v0.2.9) | local_integration | conditional, bootstrap 0.2.15 | untested | — | | | Workers and task ownership | keep_but_compare | `claude-code` | 2.1.278 (behind v2.1.280) | local_integration | conditional, bootstrap 2.1.284 | untested, bootstrap 2.1.284 | new-wsl-clean-foundation, foundation-cpu, research-runtime, macos-arm64-foundation, token-efficiency | 7 / 8 | | | | `worktrunk` | 0.79.0 | local_integration | host_verified | host_verified | — | | diff --git a/docs/token-efficiency-stack.json b/docs/token-efficiency-stack.json index 775aa4f4c..b319d0730 100644 --- a/docs/token-efficiency-stack.json +++ b/docs/token-efficiency-stack.json @@ -1715,7 +1715,7 @@ "purpose": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", "upstream_commands": { "install": [ - "uv tool install jcodemunch-mcp==1.108.319" + "uv tool install jcodemunch-mcp==1.108.327" ], "use": [ "order({\"action\":\"search_symbols\",\"args\":{\"repo\":\"RETURNED_REPOSITORY_ID\",\"query\":\"requested_function\",\"kind\":\"function\",\"max_results\":1}})", @@ -5751,14 +5751,14 @@ "purpose": "Native CLI bridge with persistent MCP daemon connection", "upstream_commands": { "install": [ - "npm install --global --prefix \"$STACK_HOME/tools/mcporter-0.14.1\" mcporter@0.14.1" + "npm install --global --prefix \"$STACK_HOME/tools/mcporter-0.14.2\" mcporter@0.14.2" ], "use": [ "mcporter --config \"$MCPORTER_CONFIG\" list socraticode --brief --no-oauth", "mcporter call --stdio jcodemunch-mcp --env \"CODE_INDEX_PATH=$HOME/.code-index\" --env JCODEMUNCH_SHARE_SAVINGS=0 --name jcodemunch --tool order --args '{\"action\":\"get_session_stats\",\"args\":{}}' --output json --no-oauth" ], "statistics": [], - "install_note": "`npm install --global --prefix \"$STACK_HOME/tools/mcporter-0.14.1\" mcporter@0.14.1`; `ps` must be on the PATH of whatever launches the daemon.", + "install_note": "`npm install --global --prefix \"$STACK_HOME/tools/mcporter-0.14.2\" mcporter@0.14.2`; `ps` must be on the PATH of whatever launches the daemon.", "command_kind": "Upstream documented commands; only the retained receipt establishes execution." }, "returned_result_summary": "2026-09-20 native CLI bridge returned jCodeMunch's 29, 820 estimated retained total and Context Mode's actual project-file hash/length. This is a transport bridge, not an additional savings source; do not credit the same payload reduction again.", @@ -6657,14 +6657,14 @@ "purpose": "Claude statusline rendering", "upstream_commands": { "install": [ - "claude plugin marketplace add jarrodwatts/claude-hud@v0.8.0 --scope user", + "claude plugin marketplace add jarrodwatts/claude-hud@v0.10.0 --scope user", "claude plugin install claude-hud@claude-hud --scope user --json" ], "use": [ "/claude-hud:setup" ], "statistics": [], - "install_note": "`claude plugin marketplace add jarrodwatts/claude-hud@v0.8.0 --scope user`; `claude plugin install claude-hud@claude-hud --scope user --json`", + "install_note": "`claude plugin marketplace add jarrodwatts/claude-hud@v0.10.0 --scope user`; `claude plugin install claude-hud@claude-hud --scope user --json`", "command_kind": "Upstream documented commands; only the retained receipt establishes execution." }, "returned_result_summary": "Installed 0.8.0 renderer returned the synthetic fixture label and 25% context bar. Actual interactive attempt reached onboarding before live HUD appeared. Native Claude-only display, not a Codex Desktop observer or cumulative saved-token counter.", diff --git a/docs/token-session-handbook.md b/docs/token-session-handbook.md index b51a17ead..cdd939829 100644 --- a/docs/token-session-handbook.md +++ b/docs/token-session-handbook.md @@ -330,7 +330,7 @@ Use [owned installation recipes](../adoption/lifecycle.md) for new prefixes and ) ``` -For selected Python tools, use separate owned uv tool directories; the upstream package specifications are `uv tool install jcodemunch-mcp==1.108.319`, `uv tool install --python 3.13 'headroom-ai[mcp]==0.37.0'` and `uv tool install markitdown==0.1.8`. Installing jcodemunch-mcp does not choose its MCP scope: opt it into the selected project at local scope, following the [Claude profile addendum](decisions/2026-09-23-claude-user-profile.md#addendum-2026-09-25-jcodemunch-registers-per-project-not-at-user-scope). Apply the lifecycle guide's `UV_TOOL_DIR`/`UV_TOOL_BIN_DIR` guards before installation. Archive tools use upstream release assets and their published checksum, as in the [archive procedure](../recipes/README.md#official-release-archives). Preserve required, reviewed package postinstall behavior. +For selected Python tools, use separate owned uv tool directories; the upstream package specifications are `uv tool install jcodemunch-mcp==1.108.327`, `uv tool install --python 3.13 'headroom-ai[mcp]==0.37.0'` and `uv tool install markitdown==0.1.8`. Installing jcodemunch-mcp does not choose its MCP scope: opt it into the selected project at local scope, following the [Claude profile addendum](decisions/2026-09-23-claude-user-profile.md#addendum-2026-09-25-jcodemunch-registers-per-project-not-at-user-scope). Apply the lifecycle guide's `UV_TOOL_DIR`/`UV_TOOL_BIN_DIR` guards before installation. Archive tools use upstream release assets and their published checksum, as in the [archive procedure](../recipes/README.md#official-release-archives). Preserve required, reviewed package postinstall behavior. The native Context Mode plugin setup below is reviewed at `6f0cc6841c687e754059f36714a11233fda1a02b`: a reviewed revision, not a pin both clients enforce. Codex's `--ref` checks that commit out when it adds the marketplace. A Claude marketplace source takes a branch or tag and never a commit, and the former `@` form exited 1 on Claude Code 2.1.281 ([retained runs](../evidence/artifacts/community-sweep-20260924/plugin-marketplace-refs.json)). The Claude commands therefore take no ref and install the default-branch head, and the last command compares the installed `gitCommitSha` with the reviewed revision. It accepts a different installed revision by content only: GitHub's compare API (`gh api`, signed in at [bootstrap step 3](../adoption/bootstrap.md)) must report it `ahead` of the reviewed revision with `stats.json` as the only changed file, which is what upstream's default branch has added since the review: diff --git a/evidence/artifacts/currency-wave-w1-20261003/native-checks.json b/evidence/artifacts/currency-wave-w1-20261003/native-checks.json new file mode 100644 index 000000000..0a0f586b8 --- /dev/null +++ b/evidence/artifacts/currency-wave-w1-20261003/native-checks.json @@ -0,0 +1,173 @@ +{ + "schema_version": 1, + "observed_date_utc": "2026-10-03", + "recorded_at_utc": "2026-10-03T05:55:06.824136+00:00", + "evidence_class": "native_local_integration", + "upstream_sources": [ + "https://github.com/modelcontextprotocol/inspector/tree/2.9.0", + "https://github.com/openclaw/mcporter/tree/v0.14.2", + "https://github.com/jgravelle/jcodemunch-mcp/tree/v1.108.327" + ], + "recipe_refs": [ + "recipes/README.md#native-project-mcp", + "recipes/README.md#jcodemunch-exact-symbol-retrieval" + ], + "configuration": { + "mcpServers": { + "jcodemunch": { + "command": "/jcodemunch-mcp/prefix/bin/jcodemunch-mcp", + "args": [], + "env": { + "CODE_INDEX_PATH": "/code-index", + "JCODEMUNCH_SHARE_SAVINGS": "0", + "HOME": "/home" + } + } + } + }, + "commands": { + "inspector-tools-list": { + "command": "mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/list --format json --stored-auth-only --cwd /work", + "exit_code": 0, + "executable": "/mcp-inspector/prefix/bin/mcp-inspector", + "cwd": "", + "stdout": "{\"result\":{\"tools\":[{\"name\":\"set_tool_tier\",\"description\":\"Explicit tier override for the current session. Narrows or widens the exposed tool list to 'core' / 'standard' / 'full'. Prefer plan_turn(model=...) for routine per-task use; use set_tool_tier only for an explicit override (e.g. escalate to 'full' after a capability-gated failure). A narrowing that costs more than it saves is refused.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"tier\":{\"type\":\"string\",\"enum\":[\"core\",\"standard\",\"full\"]}},\"required\":[\"tier\"]},\"annotations\":{\"readOnlyHint\":false,\"openWorldHint\":false}},{\"name\":\"announce_model\",\"description\":\"Agent self-reports its active model identifier. Server resolves to a tier via model_tier_map (fuzzy: normalize \u2192 exact \u2192 glob \u2192 substring \u2192 '*' \u2192 'full') and narrows the exposed tool list accordingly. Idempotent: a second call with the same model is a cheap no-op. Prefer calling plan_turn(model=...) for routine per-task use; use announce_model as a fallback when plan_turn is not appropriate for the current task.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"model\":{\"type\":\"string\",\"description\":\"Your active model identifier, e.g. 'claude-haiku-4-5'.\"}},\"required\":[\"model\"]},\"annotations\":{\"readOnlyHint\":false,\"openWorldHint\":false}},{\"name\":\"jcodemunch_guide\",\"description\":\"Return the version-current CLAUDE.md / AGENT.md policy snippet for jcodemunch-mcp \u2014 the same text produced by `jcodemunch-mcp claude-md --generate`. Lets an agent keep a one-line CLAUDE.md (e.g. \\\"Call jcodemunch_guide and strictly follow its instructions.\\\") instead of pasting a static snippet that drifts from the installed version. Idempotent, no repo context required. Matches the active tool surface, tier and disabled_tools \u2014 list 'jcodemunch_guide' in disabled_tools to hide it.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{}},\"annotations\":{\"readOnlyHint\":true,\"openWorldHint\":false}},{\"name\":\"order\",\"description\":\"Dispatch any jcodemunch action by name: order(action, args). The single-verb front door to the full tool catalog. Read-only by default \u2014 actions that change index/session state require allow_state_change=true, and execution/file-write verbs are refused. For exploration questions ('how does X work'), order('get_ranked_context', {repo, query, token_budget}) answers in ONE call \u2014 prefer it over chained search/outline/source hops; add compress=true to fit more symbols in the same budget. Call 'menu' to discover actions, or 'route' to pick one from a task.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"action\":{\"type\":\"string\",\"description\":\"Name of the catalog action to run (e.g. 'search_symbols').\"},\"args\":{\"type\":\"object\",\"description\":\"Arguments for that action, exactly as you'd pass them directly.\",\"default\":{}},\"allow_state_change\":{\"type\":\"boolean\",\"description\":\"Opt in to dispatching an index/session state-changing action (e.g. index_repo).\",\"default\":false}},\"required\":[\"action\"]},\"annotations\":{\"readOnlyHint\":false,\"openWorldHint\":true}},{\"name\":\"menu\",\"description\":\"Discover catalog actions without keeping the full tool catalog resident: menu(query?). Returns compact rows (action, summary, required args, state_changing). With no query, lists the catalog. Pair with 'order' to dispatch the chosen action.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"query\":{\"type\":\"string\",\"description\":\"Optional. Keywords describing what you want to do; ranks matching actions.\"},\"limit\":{\"type\":\"integer\",\"description\":\"Max actions to return.\",\"default\":25}}},\"annotations\":{\"readOnlyHint\":true,\"openWorldHint\":false}},{\"name\":\"route\",\"description\":\"Map a natural-language task to the best catalog action(s): route(task, repo?, execute?). Returns ranked recommendations with ready-to-run argument templates. With execute=true, dispatches the top recommendation and returns its result in the same call, collapsing discover-then-call into one round-trip. Recommends assemble_task_context / plan_turn for context-gathering intents.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"task\":{\"type\":\"string\",\"description\":\"What you're trying to do, in plain language.\"},\"repo\":{\"type\":\"string\",\"description\":\"Repository identifier (required to execute repo-scoped actions).\"},\"execute\":{\"type\":\"boolean\",\"description\":\"If true, dispatch the top recommended action and return its result.\",\"default\":false},\"model\":{\"type\":\"string\",\"description\":\"Optional active model id; piggybacks tier-switch like plan_turn(model=...).\"}},\"required\":[\"task\"]},\"annotations\":{\"readOnlyHint\":false,\"openWorldHint\":true}}]}}\n", + "stderr": "[mcp-inspector] Secrets are stored unencrypted (file mode 0600). Set MCP_INSPECTOR_SECRET_KEY or MCP_INSPECTOR_SECRET_KEY_FILE to encrypt them.\n[mcp-inspector] How the secret store is chosen, and how to secure it: https://github.com/modelcontextprotocol/inspector/blob/main/docs/secret-storage.md\nDeprecated: Using JCODEMUNCH_SHARE_SAVINGS environment variable. This will be removed in v2.0. Use config.jsonc instead.\njcodemunch-mcp 1.108.327 by jgravelle \u00b7 https://github.com/jgravelle/jcodemunch-mcp\n", + "stdout_sha256_original": "4884a73e53ae2f39f6584260f0ceb05e46607894ddc5d482f385bd2fd56f7fe6", + "stderr_sha256_original": "188cc3dea4db2dcff7706137697f8a79268152dfe93660d013c3abc8840d05bd", + "environment": { + "MCP_AUTO_OPEN_ENABLED": "false", + "MCP_INSPECTOR_OAUTH_STATE_PATH": "/oauth.json", + "MCP_INSPECTOR_SECRET_STORE": "file", + "MCP_INSPECTOR_SECRET_FILE": "/secrets.json" + }, + "started_at_utc": null, + "ended_at_utc": null + }, + "inspector-tools-call": { + "command": "mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/call --tool-name order --tool-args-json '{\"action\":\"get_session_stats\",\"args\":{}}' --format json --stored-auth-only --cwd /work", + "exit_code": 0, + "executable": "/mcp-inspector/prefix/bin/mcp-inspector", + "cwd": "", + "stdout": "{\"result\":{\"content\":[{\"type\":\"text\",\"text\":\"{\\\"session_tokens_saved\\\":0,\\\"session_calls\\\":0,\\\"session_duration_s\\\":0.1,\\\"session_response_tokens\\\":0,\\\"total_tokens_saved\\\":0,\\\"total_tokens_saved_basis\\\":{\\\"generation\\\":2,\\\"first_generation\\\":2,\\\"mixed_basis\\\":false},\\\"lifetime_by_tool\\\":{},\\\"lifetime_by_tool_since\\\":null,\\\"lifetime_unattributed\\\":0,\\\"tool_breakdown\\\":{},\\\"tool_calls\\\":{},\\\"savings_per_call\\\":0.0,\\\"result_cache\\\":{\\\"total_hits\\\":0,\\\"total_misses\\\":0,\\\"hit_rate\\\":0.0,\\\"cached_entries\\\":0},\\\"latency_per_tool\\\":{},\\\"session_cost_avoided\\\":{\\\"claude_opus_4_6\\\":0.0,\\\"claude_sonnet_4_6\\\":0.0,\\\"claude_haiku_4_5\\\":0.0,\\\"gpt5_latest\\\":0.0},\\\"total_cost_avoided\\\":{\\\"claude_opus_4_6\\\":0.0,\\\"claude_sonnet_4_6\\\":0.0,\\\"claude_haiku_4_5\\\":0.0,\\\"gpt5_latest\\\":0.0},\\\"runtime_signal\\\":{\\\"rows\\\":0,\\\"by_source\\\":{}},\\\"savings_provenance\\\":{\\\"token_reduction\\\":{\\\"average_pct\\\":99.6,\\\"task_runs\\\":15,\\\"tokenizer\\\":\\\"cl100k_base\\\",\\\"basis\\\":\\\"measured\\\",\\\"source\\\":\\\"benchmarks/provenance/measured.json\\\",\\\"methodology\\\":\\\"benchmarks/METHODOLOGY.md\\\"},\\\"replay_retrieval_quality\\\":{\\\"fixture\\\":\\\"self_v1_75_0\\\",\\\"k\\\":10,\\\"ndcg\\\":1.0,\\\"mrr\\\":1.0,\\\"recall\\\":1.0,\\\"basis\\\":\\\"measured\\\",\\\"source\\\":\\\"benchmarks/provenance/measured.json\\\",\\\"ci_gated\\\":true},\\\"implementation_channel_accuracy\\\":{\\\"corpus\\\":\\\"authored-scenarios-v2\\\",\\\"languages\\\":[\\\"python\\\",\\\"typescript\\\",\\\"go\\\"],\\\"channels\\\":{\\\"ast\\\":{\\\"precision\\\":0.818,\\\"recall\\\":1.0},\\\"duck\\\":{\\\"precision\\\":0.5,\\\"recall\\\":1.0},\\\"decorator\\\":{\\\"precision\\\":0.556,\\\"recall\\\":1.0}},\\\"basis\\\":\\\"measured\\\",\\\"source\\\":\\\"benchmarks/provenance/channel_accuracy.json\\\",\\\"ci_gated\\\":true,\\\"scope_note\\\":\\\"authored gold corpus \\\\u2014 channel discrimination on known patterns and traps, not in-the-wild base rates; n small and disclosed in the artifact\\\"},\\\"contract\\\":\\\"declared = engineering prior; measured = committed benchmark artifact (benchmarks/provenance/measured.json)\\\"},\\\"processes\\\":{\\\"live\\\":1,\\\"others\\\":0,\\\"this_pid\\\":23,\\\"oldest_age_seconds\\\":0.0},\\\"tool_surface\\\":{\\\"surface\\\":\\\"counter\\\",\\\"profile\\\":\\\"full\\\",\\\"visible_tools\\\":6,\\\"catalog_tools\\\":94,\\\"schema_tokens_visible\\\":1050,\\\"schema_tokens_catalog\\\":27880,\\\"schema_tokens_avoided\\\":26830,\\\"schema_tokens_basis\\\":\\\"one_time_at_full_rate_then_cache_read\\\",\\\"schema_tokens_basis_note\\\":\\\"The tool-schema block is stable across requests, so it is paid at full rate approximately once per cache lifetime and at cache-read rates (~0.1x) thereafter. This count is payload size, NOT a per-request saving; reading it as one overstates the cost impact by roughly an order of magnitude. Measured: benchmarks/codex_surface/.\\\",\\\"heaviest_tools\\\":{\\\"order\\\":260,\\\"route\\\":229,\\\"announce_model\\\":161,\\\"jcodemunch_guide\\\":147,\\\"menu\\\":128,\\\"set_tool_tier\\\":125},\\\"estimator\\\":\\\"bytes/4\\\"}}\"}],\"isError\":false}}\n", + "stderr": "[mcp-inspector] Secrets are stored unencrypted (file mode 0600). Set MCP_INSPECTOR_SECRET_KEY or MCP_INSPECTOR_SECRET_KEY_FILE to encrypt them.\n[mcp-inspector] How the secret store is chosen, and how to secure it: https://github.com/modelcontextprotocol/inspector/blob/main/docs/secret-storage.md\nDeprecated: Using JCODEMUNCH_SHARE_SAVINGS environment variable. This will be removed in v2.0. Use config.jsonc instead.\njcodemunch-mcp 1.108.327 by jgravelle \u00b7 https://github.com/jgravelle/jcodemunch-mcp\n", + "stdout_sha256_original": "c3cd0d720ff9877080d63b486e822c02103cb6711fa4e1946bf7939d9044bad5", + "stderr_sha256_original": "188cc3dea4db2dcff7706137697f8a79268152dfe93660d013c3abc8840d05bd", + "environment": { + "MCP_AUTO_OPEN_ENABLED": "false", + "MCP_INSPECTOR_OAUTH_STATE_PATH": "/oauth.json", + "MCP_INSPECTOR_SECRET_STORE": "file", + "MCP_INSPECTOR_SECRET_FILE": "/secrets.json" + }, + "started_at_utc": null, + "ended_at_utc": null + }, + "inspector-negative": { + "command": "mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/call --tool-name w1_unknown_tool --tool-args-json '{}' --format json --stored-auth-only --cwd /work", + "exit_code": 5, + "executable": "/mcp-inspector/prefix/bin/mcp-inspector", + "cwd": "", + "stdout": "", + "stderr": "[mcp-inspector] Secrets are stored unencrypted (file mode 0600). Set MCP_INSPECTOR_SECRET_KEY or MCP_INSPECTOR_SECRET_KEY_FILE to encrypt them.\n[mcp-inspector] How the secret store is chosen, and how to secure it: https://github.com/modelcontextprotocol/inspector/blob/main/docs/secret-storage.md\nDeprecated: Using JCODEMUNCH_SHARE_SAVINGS environment variable. This will be removed in v2.0. Use config.jsonc instead.\njcodemunch-mcp 1.108.327 by jgravelle \u00b7 https://github.com/jgravelle/jcodemunch-mcp\n{\"error\":{\"code\":\"tool_not_found\",\"message\":\"Tool 'w1_unknown_tool' not found on server.\"}}\n", + "stdout_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "stderr_sha256_original": "ddb5882d31897453b80aeff4d666c5639e6eb57f6fc52b8d561858db01e659fe", + "environment": { + "MCP_AUTO_OPEN_ENABLED": "false", + "MCP_INSPECTOR_OAUTH_STATE_PATH": "/oauth.json", + "MCP_INSPECTOR_SECRET_STORE": "file", + "MCP_INSPECTOR_SECRET_FILE": "/secrets.json" + }, + "started_at_utc": null, + "ended_at_utc": null + }, + "mcporter-call": { + "command": "mcporter call --stdio /jcodemunch-mcp/prefix/bin/jcodemunch-mcp --env CODE_INDEX_PATH=/code-index --env JCODEMUNCH_SHARE_SAVINGS=0 --env HOME=/home --cwd /work --name jcodemunch --server jcodemunch --tool order --args '{\"action\":\"get_session_stats\",\"args\":{}}' --output json --no-oauth", + "exit_code": 0, + "executable": "/mcporter/prefix/bin/mcporter", + "cwd": "", + "stdout": "{\n \"session_tokens_saved\": 0,\n \"session_calls\": 0,\n \"session_duration_s\": 0.1,\n \"session_response_tokens\": 0,\n \"total_tokens_saved\": 0,\n \"total_tokens_saved_basis\": {\n \"generation\": 2,\n \"first_generation\": 2,\n \"mixed_basis\": false\n },\n \"lifetime_by_tool\": {},\n \"lifetime_by_tool_since\": null,\n \"lifetime_unattributed\": 0,\n \"tool_breakdown\": {},\n \"tool_calls\": {},\n \"savings_per_call\": 0,\n \"result_cache\": {\n \"total_hits\": 0,\n \"total_misses\": 0,\n \"hit_rate\": 0,\n \"cached_entries\": 0\n },\n \"latency_per_tool\": {},\n \"session_cost_avoided\": {\n \"claude_opus_4_6\": 0,\n \"claude_sonnet_4_6\": 0,\n \"claude_haiku_4_5\": 0,\n \"gpt5_latest\": 0\n },\n \"total_cost_avoided\": {\n \"claude_opus_4_6\": 0,\n \"claude_sonnet_4_6\": 0,\n \"claude_haiku_4_5\": 0,\n \"gpt5_latest\": 0\n },\n \"runtime_signal\": {\n \"rows\": 0,\n \"by_source\": {}\n },\n \"savings_provenance\": {\n \"token_reduction\": {\n \"average_pct\": 99.6,\n \"task_runs\": 15,\n \"tokenizer\": \"cl100k_base\",\n \"basis\": \"measured\",\n \"source\": \"benchmarks/provenance/measured.json\",\n \"methodology\": \"benchmarks/METHODOLOGY.md\"\n },\n \"replay_retrieval_quality\": {\n \"fixture\": \"self_v1_75_0\",\n \"k\": 10,\n \"ndcg\": 1,\n \"mrr\": 1,\n \"recall\": 1,\n \"basis\": \"measured\",\n \"source\": \"benchmarks/provenance/measured.json\",\n \"ci_gated\": true\n },\n \"implementation_channel_accuracy\": {\n \"corpus\": \"authored-scenarios-v2\",\n \"languages\": [\n \"python\",\n \"typescript\",\n \"go\"\n ],\n \"channels\": {\n \"ast\": {\n \"precision\": 0.818,\n \"recall\": 1\n },\n \"duck\": {\n \"precision\": 0.5,\n \"recall\": 1\n },\n \"decorator\": {\n \"precision\": 0.556,\n \"recall\": 1\n }\n },\n \"basis\": \"measured\",\n \"source\": \"benchmarks/provenance/channel_accuracy.json\",\n \"ci_gated\": true,\n \"scope_note\": \"authored gold corpus \u2014 channel discrimination on known patterns and traps, not in-the-wild base rates; n small and disclosed in the artifact\"\n },\n \"contract\": \"declared = engineering prior; measured = committed benchmark artifact (benchmarks/provenance/measured.json)\"\n },\n \"processes\": {\n \"live\": 1,\n \"others\": 0,\n \"this_pid\": 23,\n \"oldest_age_seconds\": 0\n },\n \"tool_surface\": {\n \"surface\": \"counter\",\n \"profile\": \"full\",\n \"visible_tools\": 6,\n \"catalog_tools\": 94,\n \"schema_tokens_visible\": 1050,\n \"schema_tokens_catalog\": 27880,\n \"schema_tokens_avoided\": 26830,\n \"schema_tokens_basis\": \"one_time_at_full_rate_then_cache_read\",\n \"schema_tokens_basis_note\": \"The tool-schema block is stable across requests, so it is paid at full rate approximately once per cache lifetime and at cache-read rates (~0.1x) thereafter. This count is payload size, NOT a per-request saving; reading it as one overstates the cost impact by roughly an order of magnitude. Measured: benchmarks/codex_surface/.\",\n \"heaviest_tools\": {\n \"order\": 260,\n \"route\": 229,\n \"announce_model\": 161,\n \"jcodemunch_guide\": 147,\n \"menu\": 128,\n \"set_tool_tier\": 125\n },\n \"estimator\": \"bytes/4\"\n }\n}\n", + "stderr": "", + "stdout_sha256_original": "8af35b98c4e88af43b8a359506c429e6992af3d4d2a0813f3c4c2ec5e24729dc", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "started_at_utc": null, + "ended_at_utc": null + } + }, + "independent_observation": { + "last_seen_version": "1.108.327", + "tool_names": [ + "set_tool_tier", + "announce_model", + "jcodemunch_guide", + "order", + "menu", + "route" + ] + }, + "limitations": [ + "Argument vectors, exit codes and actual stdout/stderr were retained; per-command UTC start/end timestamps were not captured and remain null.", + "Documented Inspector command flags used one substituted documented local stdio server and its get_session_stats tool; OAuth is a no-op for this stdio server.", + "No host client configuration, credentials or daemon were used.", + "Native command output includes upstream benchmark declarations; this integration did not rerun those benchmarks or measure provider savings.", + "Sanitization replaces qualification, integration, repository and host-prefix paths with portable placeholders." + ], + "hud_guard_control": { + "harness": "Python unittest; tests.test_render_config.RenderConfigTests.test_hud_statusline_requires_an_installed_entry", + "negative_template_source": "git show HEAD:adoption/templates/claude.settings.template.json at dcae68bd08a191f37ba564eceda9fc4a9d6d4a6e", + "negative_command": "python3 -: native unittest TextTestRunner with TEMPLATES patched to an isolated copy of the original committed template", + "negative_exit_code": 1, + "negative_stdout": "", + "negative_stderr": "test_hud_statusline_requires_an_installed_entry (tests.test_render_config.RenderConfigTests.test_hud_statusline_requires_an_installed_entry) ... \n test_hud_statusline_requires_an_installed_entry (tests.test_render_config.RenderConfigTests.test_hud_statusline_requires_an_installed_entry) (plugin='absent') ... FAIL\n test_hud_statusline_requires_an_installed_entry (tests.test_render_config.RenderConfigTests.test_hud_statusline_requires_an_installed_entry) (plugin='missing_entry') ... FAIL\n\n======================================================================\nFAIL: test_hud_statusline_requires_an_installed_entry (tests.test_render_config.RenderConfigTests.test_hud_statusline_requires_an_installed_entry) (plugin='absent')\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 112, in test_hud_statusline_requires_an_installed_entry\n self.assertEqual(result.stdout, \"\")\n ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^\nAssertionError: 'dist/index.js\\n' != ''\n- dist/index.js\n\n\n======================================================================\nFAIL: test_hud_statusline_requires_an_installed_entry (tests.test_render_config.RenderConfigTests.test_hud_statusline_requires_an_installed_entry) (plugin='missing_entry')\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 118, in test_hud_statusline_requires_an_installed_entry\n self.assertEqual(result.stdout, \"\")\n ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^\nAssertionError: '/claude/plugins/cache/cla[37 chars]js\\n' != ''\n- /claude/plugins/cache/claude-hud/claude-hud/0.10.0/dist/index.js\n\n\n----------------------------------------------------------------------\nRan 1 test in 0.038s\n\nFAILED (failures=2)\n", + "positive_command": "python3 -B -m unittest tests.test_render_config.RenderConfigTests.test_hud_statusline_requires_an_installed_entry", + "positive_exit_code": 0, + "positive_output": "Ran 1 test in 0.035s\n\nOK", + "scope": "Local behavioral regression check using instrumented Node; absent plugin and missing entry both fail with the original unguarded template and pass with the guarded template." + }, + "failed_attempts": [ + { + "command": "rtk /mcp-inspector/prefix/node_modules/.bin/mcp-inspector --cli --help", + "exit_code": 127, + "output": "[rtk: No such file or directory (os error 2)]", + "correction": "The packet records a global npm installation: use /mcp-inspector/prefix/bin/mcp-inspector. Its installed --cli --help returned exit 0 and documented --stored-auth-only as a no-op for servers requiring no auth.", + "verification_source": "The exact install.command in W1-moves.json and installed prefix/bin/mcp-inspector --cli --help at 2.9.0." + } + ], + "supplemental_test_attempts": [ + { + "command": "python3 -B -m unittest tests.test_adoption_docs_consistency tests.test_adoption_bootstrap_macos tests.test_catalog_freshness_pins tests.test_native_token_ci", + "exit_code": 1, + "decisive_output": "Ran 229 tests; FAILED (errors=2, skipped=33). Both errors were native npm pack returning exit 226.", + "classification": "Supplemental fixture setup failure; every build-contract acceptance command passed separately." + }, + { + "command": "Same supplemental unittest command with scratch npm cache and both npm config paths set to /dev/null", + "exit_code": 1, + "decisive_output": "Ran 229 tests; FAILED (errors=2, skipped=33). Native npm pack returned exit 1.", + "correction": "Native npm rejects loading the same /dev/null path as both user and global config; use distinct empty scratch files, as the W1 npm installation commands do." + }, + { + "command": "npm pack --pack-destination ", + "exit_code": 226, + "decisive_output": "npm error code EROFS\nnpm error syscall open\nnpm error errno -30\nnpm error rofs EROFS: read-only file system, open '/.npm/_cacache/tmp/'", + "diagnosis": "The native command requires a writable npm cache; the managed workspace makes the inherited home cache read-only." + }, + { + "command": "npm pack --silent --pack-destination with writable scratch cache and distinct empty user/global config files", + "exit_code": 0, + "decisive_output": "w1-pack-probe-1.0.0.tgz", + "scope": "Native npm fixture packaging only; no host configuration changed." + }, + { + "command": "python3 -B -m unittest tests.test_adoption_docs_consistency tests.test_adoption_bootstrap_macos tests.test_catalog_freshness_pins tests.test_native_token_ci", + "environment": { + "npm_config_cache": "", + "npm_config_userconfig": "/user.npmrc", + "npm_config_globalconfig": "/global.npmrc", + "npm_config_update_notifier": "false" + }, + "exit_code": 0, + "decisive_output": "..................s....................ssssssssssssss..........................s..........................................ssssssss...........................sss.........s.........................sssss.....................................................\n----------------------------------------------------------------------\nRan 253 tests in 65.608s\n\nOK (skipped=33)", + "scope": "Repository unit/integration tests with native local npm fixtures; no macOS runtime or host switch." + } + ] +} diff --git a/evidence/receipts/claude-hud-0100-qualification-20261003.json b/evidence/receipts/claude-hud-0100-qualification-20261003.json new file mode 100644 index 000000000..69c04ac20 --- /dev/null +++ b/evidence/receipts/claude-hud-0100-qualification-20261003.json @@ -0,0 +1,133 @@ +{ + "schema_version": 1, + "id": "claude-hud-0100-qualification-20261003", + "kind": "native_cli_e2e", + "recorded_at_utc": "2026-10-03T05:55:06.824136+00:00", + "component_ids": [ + "claude-hud" + ], + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "limitations": [ + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "data": { + "previous_version": "0.8.0", + "version": "0.10.0", + "source": { + "repository": "https://github.com/jarrodwatts/claude-hud", + "tag": "v0.10.0", + "commit": "75683c6de1ac07f6bbef00d739001679dba0740c", + "published_at": "2026-10-01T19:11:24Z", + "prerelease": false + }, + "artifact": { + "kind": "git tag source archive (GitHub tarball of tag v0.10.0). The existing route is a tag-pinned Claude plugin marketplace add, so there is no release asset, npm tarball or PyPI wheel (release assets: []).", + "url": "https://api.github.com/repos/jarrodwatts/claude-hud/tarball/v0.10.0", + "sha256": "6c49b71b8d4fca15d6cd9777e3724300e51eb361f4e5e8b2a12ad8085b8ac720", + "integrity_checked": true, + "integrity_source": "No published checksum exists: the release has assets: [] and GitHub publishes no checksum for generated tarballs; the sha256 above is first recorded here (file 607051 bytes, downloaded 2026-10-03), not published upstream. What matched instead: (1) git get-tar-commit-id on the tarball = 75683c6de1ac07f6bbef00d739001679dba0740c, equal to the peeled tag commit from gh api git/ref/tags/v0.10.0 + git/tags/801f75c6... and from git ls-remote refs/tags/v0.10.0^{} (git protocol, independent of the REST API); (2) all 310 extracted files match the git blob SHA-1 entries of tree d4331bf0aa622ffe0b1cc7878855bbd747d8cae1 from gh api git/trees/?recursive=1 (not truncated; 310 match, 0 mismatch, 0 missing, 0 extra); (3) archive has no absolute or .. member names and no symlinks or hardlinks. Tag object 801f75c6ca5332b7937a181e9d904bc4013974aa is annotated and unsigned (verified:false, reason unsigned); the commit is verified:true." + }, + "install_recorded": { + "command": "tar -xzf /claude-hud/claude-hud-v0.10.0.tar.gz -C /claude-hud/prefix --strip-components=1", + "exit": 0, + "prefix": "/claude-hud/prefix" + }, + "version_recorded": { + "command": "S=/claude-hud; P=$S/prefix; cd $S/smoke/workspace && env -i HOME=$S/smoke/home CLAUDE_CONFIG_DIR=$S/smoke PATH=/bin:/usr/bin:/bin timeout 20 node $P/dist/index.js --version < /dev/null; echo \"node_exit=$?\"; jq -r '.version // .metadata.version' $P/package.json $P/.claude-plugin/plugin.json $P/.claude-plugin/marketplace.json; echo \"jq_exit=$?\"", + "exit": 0, + "output": "[claude-hud] Initializing...\nnode_exit=0\n0.10.0\n0.10.0\n0.10.0\njq_exit=0\n(The first line is the empty-stdin branch of main(), dist/index.js:54-55; dist/index.js has no --version handling, so there is no binary version command. Version identity is the three jq lines: package.json, .claude-plugin/plugin.json, .claude-plugin/marketplace.json metadata.version, all 0.10.0.)" + }, + "smoke_recorded": { + "ran": true, + "command": "S=/claude-hud; printf '%s' '{\"session_id\":\"e2e\",\"model\":{\"id\":\"claude-opus-5\",\"display_name\":\"Opus 5\"},\"workspace\":{\"current_dir\":\"'$S'/smoke/workspace\",\"project_dir\":\"'$S'/smoke/workspace\"},\"cwd\":\"'$S'/smoke/workspace\",\"transcript_path\":\"/dev/null\",\"version\":\"2.1.278\"}' > $S/smoke/hud.json && cd $S/smoke/workspace && env -i HOME=$S/smoke/home CLAUDE_CONFIG_DIR=$S/smoke PATH=/bin:/usr/bin:/bin timeout 20 node $S/prefix/dist/index.js < $S/smoke/hud.json > $S/smoke/render-e2e.out 2> $S/smoke/render-e2e.err", + "exit": 0, + "output_excerpt": "stdout, escape sequences stripped (246 bytes raw; stderr 0 bytes): '[Opus 5] \u2502 workspace' then 'Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%'. This is the recipes/README.md:87 'representative input render' (formatting only) in the retained e2e command shape (evidence/artifacts/claude-repository-evidence-20260921/results.json:7731), same stdin fixture (version 2.1.278), paths changed to a non-git cwd under scratch, HOME and CLAUDE_CONFIG_DIR pointed at empty scratch dirs; smoke/home held 0 files afterwards. Second run, upstream package.json test:stdin payload without its build step, same hermetic form: exit 0, 97 bytes, '[Opus]' then 'Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%'. /claude-hud:setup (also named at recipes/README.md:87) was NOT run: it needs a live interactive Claude session and writes settings. manifests/stack.json:250-255 declares no smoke command (source_only true, skill_invocation null). Render path needs no network or credential: no fetch/http/https/net/undici/dns/tls client in dist (rg exit 1)." + }, + "input_packet": { + "name": "W1-moves.json", + "sha256": "efc142f19b4d8559510e6992fbf48cd3a308223938dbc58d07c86e4a57ecf3c1", + "workflow_run": "wf_a95468d8-3af" + }, + "upstream_refresh": { + "checks": [ + { + "endpoint": "repos/jarrodwatts/claude-hud", + "exit_code": 0, + "started_at": "2026-10-03T05:50:27.408249+00:00", + "ended_at": "2026-10-03T05:50:27.705265+00:00", + "stdout_sha256": "1eef80a1c1034f1f97ae238a2c83bfcabb8d59e20d666db68669db454cde85ef", + "status": "ok" + }, + { + "endpoint": "repos/jarrodwatts/claude-hud/releases/latest", + "exit_code": 0, + "started_at": "2026-10-03T05:50:27.705523+00:00", + "ended_at": "2026-10-03T05:50:28.002344+00:00", + "stdout_sha256": "6a227a56e88b9680c31a36105086e7bd403a3fe19de83f88c30bacc95e7e1953", + "status": "ok" + }, + { + "endpoint": "repos/jarrodwatts/claude-hud/commits/75683c6de1ac07f6bbef00d739001679dba0740c", + "exit_code": 0, + "started_at": "2026-10-03T05:50:28.002578+00:00", + "ended_at": "2026-10-03T05:50:28.260179+00:00", + "stdout_sha256": "91a438d860f1044f8b9e712ef25f81e5081f71c7e07ee27e174a7d692d1275ad", + "status": "ok" + }, + { + "endpoint": "repos/jarrodwatts/claude-hud/commits/v0.10.0", + "exit_code": 0, + "started_at": "2026-10-03T05:50:28.260485+00:00", + "ended_at": "2026-10-03T05:50:28.512459+00:00", + "stdout_sha256": "91a438d860f1044f8b9e712ef25f81e5081f71c7e07ee27e174a7d692d1275ad", + "status": "ok" + } + ], + "latest_stable_release": { + "tag_name": "v0.10.0", + "published_at": "2026-10-01T19:11:24Z", + "html_url": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0", + "target_commitish": "main", + "prerelease": false, + "draft": false + }, + "selected_pin_source": { + "ref": "75683c6de1ac07f6bbef00d739001679dba0740c", + "sha": "75683c6de1ac07f6bbef00d739001679dba0740c", + "html_url": "https://github.com/jarrodwatts/claude-hud/commit/75683c6de1ac07f6bbef00d739001679dba0740c", + "committed_at": "2026-10-01T19:09:48Z" + }, + "latest_release_source": { + "ref": "v0.10.0", + "sha": "75683c6de1ac07f6bbef00d739001679dba0740c", + "html_url": "https://github.com/jarrodwatts/claude-hud/commit/75683c6de1ac07f6bbef00d739001679dba0740c", + "committed_at": "2026-10-01T19:09:48Z" + } + }, + "cooldown_waiver": "The user ended the seven-day cooldown for clean releases on 2026-10-03; qualification requirements remain in force.", + "host_switched": false, + "upstream_test_suite_run_by_integration": false, + "residual_source_review": { + "hyperlink_spill": "PR #795 commit c0c4866780b101f0ee281f2ddd356b7ebf649879 is outside v0.10.0; this known pre-existing OSC 8 spill remains a follow-up.", + "disk_usage": "Issue #796 concerns showDiskUsage; the judge found no such field in either the old 0.8.0 or new tagged pin.", + "sources": [ + "https://github.com/jarrodwatts/claude-hud/pull/795", + "https://github.com/jarrodwatts/claude-hud/issues/796" + ], + "statusline_guard_reference": "https://github.com/jarrodwatts/claude-hud/blob/75683c6de1ac07f6bbef00d739001679dba0740c/scripts/statusline.mjs#L35" + }, + "integration_artifact_rehash": { + "method": "Python 3 hashlib.file_digest over the retained downloaded artifact; no archive regeneration", + "sha256": "6c49b71b8d4fca15d6cd9777e3724300e51eb361f4e5e8b2a12ad8085b8ac720", + "bytes": 607051, + "matches_recorded_sha256": true, + "scope": "byte identity with the qualified W1 artifact; not signature or upstream test acceptance" + }, + "integration_checks_ref": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json" + } +} diff --git a/evidence/receipts/jcodemunch-1108327-qualification-20261003.json b/evidence/receipts/jcodemunch-1108327-qualification-20261003.json new file mode 100644 index 000000000..271bc0473 --- /dev/null +++ b/evidence/receipts/jcodemunch-1108327-qualification-20261003.json @@ -0,0 +1,123 @@ +{ + "schema_version": 1, + "id": "jcodemunch-1108327-qualification-20261003", + "kind": "native_cli_e2e", + "recorded_at_utc": "2026-10-03T05:55:06.824136+00:00", + "component_ids": [ + "jcodemunch-mcp" + ], + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", + "limitations": [ + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "data": { + "previous_version": "1.108.319", + "version": "1.108.327", + "source": { + "repository": "https://github.com/jgravelle/jcodemunch-mcp", + "tag": "v1.108.327", + "commit": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "published_at": "2026-10-02T18:21:53Z", + "prerelease": false + }, + "artifact": { + "kind": "PyPI wheel (bdist_wheel, py3-none-any, 1734964 bytes); PyPI lists one wheel and one sdist for 1.108.327; downloaded to /jcodemunch-mcp/jcodemunch_mcp-1.108.327-py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/5f/0a/7027d053796993db79ccf341b6f4a5e00be3b8cb23eb81f7aef525dd8a08/jcodemunch_mcp-1.108.327-py3-none-any.whl", + "sha256": "9e2f639456e740a9497f4f238d095c9b995d54074edf01d9c61cf3517afcf88a", + "integrity_checked": true, + "integrity_source": "Local sha256sum of the download equals four published values: (1) PyPI JSON API https://pypi.org/pypi/jcodemunch-mcp/1.108.327/json urls[].digests.sha256; (2) PyPI Simple API JSON https://pypi.org/simple/jcodemunch-mcp/ files[].hashes.sha256; (3) GitHub release asset digest sha256:9e2f...f88a (gh api repos/jgravelle/jcodemunch-mcp/releases/tags/v1.108.327, assets[].digest); (4) the PEP 740 publish-attestation statement subject digest at https://pypi.org/integrity/jcodemunch-mcp/1.108.327/jcodemunch_mcp-1.108.327-py3-none-any.whl/provenance (publisher GitHub jgravelle/jcodemunch-mcp, workflow release.yml, environment pypi). Size 1734964 equals the PyPI size; a re-hash after the install was identical. The Sigstore signature and certificate chain were NOT verified (no verifier was run)." + }, + "install_recorded": { + "command": "env HOME=/jcodemunch-mcp/home UV_CACHE_DIR=/jcodemunch-mcp/uv-cache UV_PYTHON_DOWNLOADS=never UV_TOOL_DIR=/jcodemunch-mcp/prefix/python-tools UV_TOOL_BIN_DIR=/jcodemunch-mcp/prefix/bin uv --no-config --directory /jcodemunch-mcp tool install --python 3.13 --default-index https://pypi.org/simple /jcodemunch-mcp/jcodemunch_mcp-1.108.327-py3-none-any.whl", + "exit": 0, + "prefix": "/jcodemunch-mcp/prefix" + }, + "version_recorded": { + "command": "env HOME=/jcodemunch-mcp/home /jcodemunch-mcp/prefix/bin/jcodemunch-mcp --version", + "exit": 0, + "output": "jcodemunch-mcp 1.108.327" + }, + "smoke_recorded": { + "ran": true, + "command": "env HOME=/jcodemunch-mcp/home mcporter call --stdio /jcodemunch-mcp/prefix/bin/jcodemunch-mcp --env CODE_INDEX_PATH=/jcodemunch-mcp/code-index --env JCODEMUNCH_SHARE_SAVINGS=0 --cwd /jcodemunch-mcp --name jcodemunch --server jcodemunch --tool order --args '{\"action\":\"get_session_stats\",\"args\":{}}' --output json --no-oauth", + "exit": 0, + "output_excerpt": "{\"session_tokens_saved\":0,\"session_calls\":0,\"total_tokens_saved\":0,\"total_tokens_saved_basis\":{\"generation\":2,\"first_generation\":2,\"mixed_basis\":false},\"processes\":{\"live\":1,\"others\":0},\"tool_surface\":{\"surface\":\"counter\",\"profile\":\"full\",\"visible_tools\":6,\"catalog_tools\":94,\"schema_tokens_visible\":1050,\"schema_tokens_catalog\":27880,\"schema_tokens_avoided\":26830,\"heaviest_tools\":{\"order\":260,\"route\":229,\"announce_model\":161,\"jcodemunch_guide\":147,\"menu\":128,\"set_tool_tier\":125}}} (mcporter 0.14.1; /code-index/last_seen_version = 1.108.327; no scratch-prefix process remained: pgrep -af '[c]urrency-wave/jcodemunch-mcp' exit 1)" + }, + "input_packet": { + "name": "W1-moves.json", + "sha256": "efc142f19b4d8559510e6992fbf48cd3a308223938dbc58d07c86e4a57ecf3c1", + "workflow_run": "wf_a95468d8-3af" + }, + "upstream_refresh": { + "checks": [ + { + "endpoint": "repos/jgravelle/jcodemunch-mcp", + "exit_code": 0, + "started_at": "2026-10-03T05:50:26.263923+00:00", + "ended_at": "2026-10-03T05:50:26.552288+00:00", + "stdout_sha256": "23c0e08651dc4c28954690f0b7388ff807791f7ae15371fe1db2ee53b85235c8", + "status": "ok" + }, + { + "endpoint": "repos/jgravelle/jcodemunch-mcp/releases/latest", + "exit_code": 0, + "started_at": "2026-10-03T05:50:26.552568+00:00", + "ended_at": "2026-10-03T05:50:26.804972+00:00", + "stdout_sha256": "b9189cd5b951b56a22995a6d1579ff471021364848956e7d548bff0bce16b9fd", + "status": "ok" + }, + { + "endpoint": "repos/jgravelle/jcodemunch-mcp/commits/6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "exit_code": 0, + "started_at": "2026-10-03T05:50:26.805286+00:00", + "ended_at": "2026-10-03T05:50:27.105086+00:00", + "stdout_sha256": "58f7af21d83244862c88609a8ecadba60bfb001f3cebbe788c371fe6a51a17bf", + "status": "ok" + }, + { + "endpoint": "repos/jgravelle/jcodemunch-mcp/commits/v1.108.327", + "exit_code": 0, + "started_at": "2026-10-03T05:50:27.105452+00:00", + "ended_at": "2026-10-03T05:50:27.407841+00:00", + "stdout_sha256": "58f7af21d83244862c88609a8ecadba60bfb001f3cebbe788c371fe6a51a17bf", + "status": "ok" + } + ], + "latest_stable_release": { + "tag_name": "v1.108.327", + "published_at": "2026-10-02T18:21:53Z", + "html_url": "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", + "target_commitish": "main", + "prerelease": false, + "draft": false + }, + "selected_pin_source": { + "ref": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "sha": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "html_url": "https://github.com/jgravelle/jcodemunch-mcp/commit/6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "committed_at": "2026-10-02T18:09:09Z" + }, + "latest_release_source": { + "ref": "v1.108.327", + "sha": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "html_url": "https://github.com/jgravelle/jcodemunch-mcp/commit/6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "committed_at": "2026-10-02T18:09:09Z" + } + }, + "cooldown_waiver": "The user ended the seven-day cooldown for clean releases on 2026-10-03; qualification requirements remain in force.", + "host_switched": false, + "upstream_test_suite_run_by_integration": false, + "integration_checks_ref": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", + "integration_artifact_rehash": { + "method": "Python 3 hashlib.file_digest over the retained downloaded artifact; no archive regeneration", + "sha256": "9e2f639456e740a9497f4f238d095c9b995d54074edf01d9c61cf3517afcf88a", + "bytes": 1734964, + "matches_recorded_sha256": true, + "scope": "byte identity with the qualified W1 artifact; not signature or upstream test acceptance" + } + } +} diff --git a/evidence/receipts/mcp-inspector-290-qualification-20261003.json b/evidence/receipts/mcp-inspector-290-qualification-20261003.json new file mode 100644 index 000000000..31367d547 --- /dev/null +++ b/evidence/receipts/mcp-inspector-290-qualification-20261003.json @@ -0,0 +1,124 @@ +{ + "schema_version": 1, + "id": "mcp-inspector-290-qualification-20261003", + "kind": "native_cli_e2e", + "recorded_at_utc": "2026-10-03T05:55:06.824136+00:00", + "component_ids": [ + "mcp-inspector" + ], + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "limitations": [ + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "data": { + "previous_version": "2.8.0", + "version": "2.9.0", + "source": { + "repository": "https://github.com/modelcontextprotocol/inspector", + "tag": "2.9.0", + "commit": "ae865a19178ddf6f375780a02e9c77c4cf4da184", + "published_at": "2026-09-30T22:23:56Z", + "prerelease": false + }, + "artifact": { + "kind": "npm tarball", + "url": "https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.9.0.tgz", + "sha256": "0671ad3cc535b00cbfbd3a9aad7559a735ec471d72030f0e69b7add778f8ed09", + "integrity_checked": true, + "integrity_source": "npm registry version metadata https://registry.npmjs.org/@modelcontextprotocol%2Finspector/2.9.0: dist.integrity sha512-77VWBmsA18jdxQ1vqbu8SNRSC2h5uBHyUq6wTmlqEDeVIST7YEVta0OyFCDf/6VSQKbZ3ia7Qb+9bZtlTcB+tw== equals the sha512 computed over the downloaded file (MATCH) and dist.shasum 42f9d00dd6c379fc019bb64e92ef575248b40d02 equals the computed sha1 (MATCH). Cross-checks: SLSA v1 provenance (https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2finspector@2.9.0) subject sha512 efb556066b00d7c8ddc50d6fa9bbbc48d4520b6879b811f252aeb04e696a1037952124fb60456d6b43b21420dfffa55240a6d9de26bb41bfbd6d9b654dc07eb7 is the hex of the same digest, built by .github/workflows/main.yml at refs/tags/2.9.0, gitCommit ae865a19178ddf6f375780a02e9c77c4cf4da184 (equals the tag commit); and the computed sha256 equals the repo record adoption/new-wsl-profile.json:705. npm publishes sha512 and sha1 only, so the sha256 above is the value I computed (file inspector-2.9.0.tgz, 1235523 bytes, in /mcp-inspector/)." + }, + "install_recorded": { + "command": "npm install --global --no-audit --no-fund --prefix /mcp-inspector/prefix --cache /mcp-inspector/npm-cache --userconfig /mcp-inspector/npmrc-user --globalconfig /mcp-inspector/npmrc-global --logs-dir /mcp-inspector/npm-logs --update-notifier=false /mcp-inspector/inspector-2.9.0.tgz", + "exit": 0, + "prefix": "/mcp-inspector/prefix" + }, + "version_recorded": { + "command": "npm ls --global --prefix /mcp-inspector/prefix --depth=0 --cache /mcp-inspector/npm-cache --userconfig /mcp-inspector/npmrc-user --globalconfig /mcp-inspector/npmrc-global --logs-dir /mcp-inspector/npm-logs --update-notifier=false", + "exit": 0, + "output": "/mcp-inspector/prefix/lib\n\u2514\u2500\u2500 @modelcontextprotocol/inspector@2.9.0\n\n(This is the version command documented at recipes/README.md:99. `mcp-inspector --version` was deliberately NOT run: the launcher has no version flag and forwards any non-help argument to web mode, which starts the web UI server (recipes/README.md:99; adoption/bootstrap.md:127-129; 2.9.0 launcher clients/launcher/build/index.js only short-circuits -h/--help). Corroboration: jq -r .version on /lib/node_modules/@modelcontextprotocol/inspector/package.json printed 2.9.0, exit 0.)" + }, + "smoke_recorded": { + "ran": true, + "command": "MCP_AUTO_OPEN_ENABLED=false /mcp-inspector/prefix/bin/mcp-inspector --help", + "exit": 0, + "output_excerpt": "Usage: mcp-inspector [options]\n\nMCP Inspector \u2013 run web UI, CLI, or TUI\n\nOptions:\n --web Run web UI (default)\n --cli Run CLI\n --tui Run TUI\n -h, --help display help for command\n\nMode flags (--web, --cli, --tui) must appear before app options. All following arguments are forwarded unchanged.\n\n[diff of this output against the recorded 2.8.0 output evidence/artifacts/sota-refresh-20260926/mcp-inspector/stage/launcher-help-2.8.0.txt: exit 0, identical. Substitution: the row's literal command is `npx @modelcontextprotocol/inspector@2.8.0 --help` (manifests/stack.json:609); I ran the installed scratch-prefix binary instead because npx would fetch into the host npx cache. Source read before running: the launcher prints help and exits 0 when -h/--help is present without a leading mode flag (clients/launcher/build/index.js). NOT run: the recipes/README.md:99 smoke `mcp-inspector --cli --config \"$PROJECT_ROOT/.mcp.json\" --server socraticode --method tools/list --format json --stored-auth-only --cwd \"$PROJECT_ROOT\"` (needs a live MCP server and stored auth). Supplementary offline check, not the row's smoke: `mcp-inspector --cli --help` diffed against evidence/artifacts/sota-refresh-20260926/mcp-inspector/stage/cli-help-2.8.0.txt gave diff exit 1 (differences): only additions, --advertise-apps (6 lines) and --require-digests (3 lines), nothing removed; --config, --server, --method, --format, --stored-auth-only, --cwd, --tool-name, --tool-arg all present.]" + }, + "input_packet": { + "name": "W1-moves.json", + "sha256": "efc142f19b4d8559510e6992fbf48cd3a308223938dbc58d07c86e4a57ecf3c1", + "workflow_run": "wf_a95468d8-3af" + }, + "upstream_refresh": { + "checks": [ + { + "endpoint": "repos/modelcontextprotocol/inspector", + "exit_code": 0, + "started_at": "2026-10-03T05:50:26.265526+00:00", + "ended_at": "2026-10-03T05:50:26.666095+00:00", + "stdout_sha256": "3e8889965d6785f77b2b96112bed3843300fd17aafe038fbdfff3118d0985b08", + "status": "ok" + }, + { + "endpoint": "repos/modelcontextprotocol/inspector/releases/latest", + "exit_code": 0, + "started_at": "2026-10-03T05:50:26.666351+00:00", + "ended_at": "2026-10-03T05:50:26.893603+00:00", + "stdout_sha256": "25009ca28912f22d6895978660d1c4a22ef020aad64169e6d7787bda7d6d152d", + "status": "ok" + }, + { + "endpoint": "repos/modelcontextprotocol/inspector/commits/ae865a19178ddf6f375780a02e9c77c4cf4da184", + "exit_code": 0, + "started_at": "2026-10-03T05:50:26.893878+00:00", + "ended_at": "2026-10-03T05:50:27.215051+00:00", + "stdout_sha256": "820b4d5b5bb3359d805ca06189499e633efb3a4acda95414201404370f70780f", + "status": "ok" + }, + { + "endpoint": "repos/modelcontextprotocol/inspector/commits/2.9.0", + "exit_code": 0, + "started_at": "2026-10-03T05:50:27.215420+00:00", + "ended_at": "2026-10-03T05:50:27.551451+00:00", + "stdout_sha256": "820b4d5b5bb3359d805ca06189499e633efb3a4acda95414201404370f70780f", + "status": "ok" + } + ], + "latest_stable_release": { + "tag_name": "2.9.0", + "published_at": "2026-09-30T22:23:56Z", + "html_url": "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0", + "target_commitish": "ae865a19178ddf6f375780a02e9c77c4cf4da184", + "prerelease": false, + "draft": false + }, + "selected_pin_source": { + "ref": "ae865a19178ddf6f375780a02e9c77c4cf4da184", + "sha": "ae865a19178ddf6f375780a02e9c77c4cf4da184", + "html_url": "https://github.com/modelcontextprotocol/inspector/commit/ae865a19178ddf6f375780a02e9c77c4cf4da184", + "committed_at": "2026-09-30T22:23:03Z" + }, + "latest_release_source": { + "ref": "2.9.0", + "sha": "ae865a19178ddf6f375780a02e9c77c4cf4da184", + "html_url": "https://github.com/modelcontextprotocol/inspector/commit/ae865a19178ddf6f375780a02e9c77c4cf4da184", + "committed_at": "2026-09-30T22:23:03Z" + } + }, + "cooldown_waiver": "The user ended the seven-day cooldown for clean releases on 2026-10-03; qualification requirements remain in force.", + "host_switched": false, + "upstream_test_suite_run_by_integration": false, + "integration_checks_ref": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", + "integration_artifact_rehash": { + "method": "Python 3 hashlib.file_digest over the retained downloaded artifact; no archive regeneration", + "sha256": "0671ad3cc535b00cbfbd3a9aad7559a735ec471d72030f0e69b7add778f8ed09", + "bytes": 1235523, + "matches_recorded_sha256": true, + "scope": "byte identity with the qualified W1 artifact; not signature or upstream test acceptance" + } + } +} diff --git a/evidence/receipts/mcporter-0142-qualification-20261003.json b/evidence/receipts/mcporter-0142-qualification-20261003.json new file mode 100644 index 000000000..039ec91cf --- /dev/null +++ b/evidence/receipts/mcporter-0142-qualification-20261003.json @@ -0,0 +1,124 @@ +{ + "schema_version": 1, + "id": "mcporter-0142-qualification-20261003", + "kind": "native_cli_e2e", + "recorded_at_utc": "2026-10-03T05:55:06.824136+00:00", + "component_ids": [ + "mcporter" + ], + "claim": "The recorded version command printed \"0.14.2\" (exit 0). The new ad-hoc stdio order/get_session_stats canary returned \"visible_tools\": 6, \"catalog_tools\": 94 and \"session_tokens_saved\": 0 (exit 0).", + "limitations": [ + "The original documented host-config smoke is \"NOT RUN\"; the accepted canary is a fresh ad-hoc stdio call, with no daemon.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "data": { + "previous_version": "0.14.1", + "version": "0.14.2", + "source": { + "repository": "https://github.com/openclaw/mcporter", + "tag": "v0.14.2", + "commit": "aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "published_at": "2026-10-01T18:24:07Z", + "prerelease": false + }, + "artifact": { + "kind": "npm", + "url": "https://registry.npmjs.org/mcporter/-/mcporter-0.14.2.tgz", + "sha256": "f5baa5a02be64d5d75722c5739975eee79d393eb2761496f70a53474688f8f6b", + "integrity_checked": true, + "integrity_source": "Checked against four published sources, all matched. (1) npm registry dist.integrity sha512-3ajjKzPLe/39hN582XqMuOw3S9vHQfLpSBq72zVakT03xso3GDXHcht/eVLu/l2MDqulIOtLevnTKreUxymHJQ== equals `openssl dgst -sha512 -binary | base64` of the downloaded tarball, and dist.shasum ee7d91e7362e7dc5b44b5fcc5cfdea7cfaedb1fd equals sha1sum. (2) GitHub release v0.14.2 asset digest sha256:f5baa5a02be64d5d75722c5739975eee79d393eb2761496f70a53474688f8f6b for mcporter-0.14.2.tgz equals the local sha256sum; the release checksums.txt line matches (sha256sum -c: OK, exit 0); the release asset is byte-identical to the npm tarball (cmp exit 0); size 3585823 bytes. (3) npm SLSA provenance attestation (https://registry.npmjs.org/-/npm/v1/attestations/mcporter@0.14.2): subject sha512 dda8e32b...8725 equals the tarball sha512 hex, workflow .github/workflows/release.yml at refs/tags/v0.14.2, gitCommit aa0f55f9bffcde9d2070c86145f37d4dd3525f6c; the release provenance.json asset also names commit aa0f55f9 and the tgz sha256. (4) `npm audit signatures` exit 0: audited 40 packages, 40 verified registry signatures, 12 verified attestations." + }, + "install_recorded": { + "command": "S=/mcporter; env -i HOME=$S/home PATH=/bin:/usr/bin:/bin npm install --global --prefix $S/prefix --cache $S/npm-cache --userconfig $S --globalconfig $S --no-audit --no-fund --no-update-notifier $S/mcporter-0.14.2.tgz (installs from the verified local tarball, the same file-based route manifests/evidence.json:3164 records for 0.14.1; spec form is `npm install --global --prefix mcporter@0.14.2` per recipes/README.md:100; it was run via `rtk proxy` with output `added 28 packages in 8s`)", + "exit": 0, + "prefix": "/mcporter/prefix" + }, + "version_recorded": { + "command": "S=/mcporter; env -i HOME=$S/home PATH=/bin:/usr/bin:/bin $S/prefix/bin/mcporter --version (the row's version_probe is `mcporter --version`, adoption/pins-linux-x86_64.json:137-142)", + "exit": 0, + "output": "0.14.2" + }, + "smoke_recorded": { + "command": "mcporter --config \"${MCPORTER_CONFIG}\" list socraticode --brief --no-oauth", + "exit": -1, + "output_excerpt": "NOT RUN; exit -1 is a placeholder because no process ran. The row's documented smoke command (manifests/stack.json:634) needs the host MCPORTER_CONFIG ($STACK_HOME/config/mcporter.json, recipes/README.md:29), which the task forbids touching, and a live `socraticode` MCP server; prior evidence records that a mcporter call started a daemon (manifests/evidence.json:3164), which the task forbids. Extra offline checks (not the smoke): `mcporter --help` exit 0, 57 lines, showing `--log-level Adjust CLI logging (defaults to warn)`; importing dist/serve.js exit 0.", + "ran": false + }, + "input_packet": { + "name": "W1-moves.json", + "sha256": "efc142f19b4d8559510e6992fbf48cd3a308223938dbc58d07c86e4a57ecf3c1", + "workflow_run": "wf_a95468d8-3af" + }, + "upstream_refresh": { + "checks": [ + { + "endpoint": "repos/openclaw/mcporter", + "exit_code": 0, + "started_at": "2026-10-03T05:50:27.642381+00:00", + "ended_at": "2026-10-03T05:50:27.993166+00:00", + "stdout_sha256": "99540d98c8f7c763f29d150f85aa20c4d907a8ba1e893de4a6feffda56012988", + "status": "ok" + }, + { + "endpoint": "repos/openclaw/mcporter/releases/latest", + "exit_code": 0, + "started_at": "2026-10-03T05:50:27.993405+00:00", + "ended_at": "2026-10-03T05:50:28.250033+00:00", + "stdout_sha256": "0f03fb3adf27eec7af988468fb21576aa6aba61ed00e7deab129f6e82c24c68e", + "status": "ok" + }, + { + "endpoint": "repos/openclaw/mcporter/commits/aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "exit_code": 0, + "started_at": "2026-10-03T05:50:28.250309+00:00", + "ended_at": "2026-10-03T05:50:28.570581+00:00", + "stdout_sha256": "24ce8c193ab2a8cdf608ac6225ab408ca52254ae55683cb699aeab2ec175110b", + "status": "ok" + }, + { + "endpoint": "repos/openclaw/mcporter/commits/v0.14.2", + "exit_code": 0, + "started_at": "2026-10-03T05:50:28.571161+00:00", + "ended_at": "2026-10-03T05:50:28.896720+00:00", + "stdout_sha256": "24ce8c193ab2a8cdf608ac6225ab408ca52254ae55683cb699aeab2ec175110b", + "status": "ok" + } + ], + "latest_stable_release": { + "tag_name": "v0.14.2", + "published_at": "2026-10-01T18:24:07Z", + "html_url": "https://github.com/openclaw/mcporter/releases/tag/v0.14.2", + "target_commitish": "main", + "prerelease": false, + "draft": false + }, + "selected_pin_source": { + "ref": "aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "sha": "aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "html_url": "https://github.com/openclaw/mcporter/commit/aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "committed_at": "2026-10-01T05:29:15Z" + }, + "latest_release_source": { + "ref": "v0.14.2", + "sha": "aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "html_url": "https://github.com/openclaw/mcporter/commit/aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "committed_at": "2026-10-01T05:29:15Z" + } + }, + "cooldown_waiver": "The user ended the seven-day cooldown for clean releases on 2026-10-03; qualification requirements remain in force.", + "host_switched": false, + "upstream_test_suite_run_by_integration": false, + "integration_checks_ref": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", + "integration_artifact_rehash": { + "method": "Python 3 hashlib.file_digest over the retained downloaded artifact; no archive regeneration", + "sha256": "f5baa5a02be64d5d75722c5739975eee79d393eb2761496f70a53474688f8f6b", + "bytes": 3585823, + "matches_recorded_sha256": true, + "scope": "byte identity with the qualified W1 artifact; not signature or upstream test acceptance" + } + } +} diff --git a/evidence/receipts/openresearch-0215-qualification-20261003.json b/evidence/receipts/openresearch-0215-qualification-20261003.json new file mode 100644 index 000000000..f89e162b7 --- /dev/null +++ b/evidence/receipts/openresearch-0215-qualification-20261003.json @@ -0,0 +1,122 @@ +{ + "schema_version": 1, + "id": "openresearch-0215-qualification-20261003", + "kind": "native_cli_e2e", + "recorded_at_utc": "2026-10-03T05:55:06.824136+00:00", + "component_ids": [ + "openresearch" + ], + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "limitations": [ + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "data": { + "previous_version": "0.2.7", + "version": "0.2.15", + "source": { + "repository": "https://github.com/alphaXiv/OpenResearch", + "tag": "v0.2.15", + "commit": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "published_at": "2026-10-02T17:44:48Z", + "prerelease": false + }, + "artifact": { + "kind": "tarball", + "url": "https://github.com/alphaXiv/OpenResearch/releases/download/v0.2.15/openresearch-cli-x86_64-unknown-linux-musl.tar.xz", + "sha256": "f36ed4095f4839767a162a555d9e7eafc04f70f0664ce3767178f81fc0b45c86", + "integrity_checked": true, + "integrity_source": "https://github.com/alphaXiv/OpenResearch/releases/download/v0.2.15/openresearch-cli-x86_64-unknown-linux-musl.tar.xz.sha256 (release-published sidecar; `sha256sum -c` printed OK, exit 0). Same hash also in the release's sha256.sum line 5 (`sha256sum -c --ignore-missing` OK, exit 0) and in the GitHub API asset digest sha256:f36ed409... (gh api repos/alphaXiv/OpenResearch/releases/tags/v0.2.15); size 11890208 bytes matches the API size." + }, + "install_recorded": { + "command": "install -m 0755 /openresearch/stage/openresearch-cli-x86_64-unknown-linux-musl/orx /openresearch/prefix/bin/orx (preceded by `tar -xJf /openresearch-cli-x86_64-unknown-linux-musl.tar.xz -C /stage`, exit 0, and `find /stage -type f -name orx`, exit 0, exactly 1 match; D=/openresearch)", + "exit": 0, + "prefix": "/openresearch/prefix" + }, + "version_recorded": { + "command": "D=/openresearch; env -i HOME=$D/home XDG_CONFIG_HOME=$D XDG_DATA_HOME=$D/share XDG_STATE_HOME=$D/state XDG_CACHE_HOME=$D PATH=/usr/bin:/bin unshare -rn $D/prefix/bin/orx --version", + "exit": 0, + "output": "orx 0.2.15" + }, + "smoke_recorded": { + "command": "orx --no-telemetry discover keyword \"local code retrieval\" --limit 3 ; orx --no-telemetry paper \"${PAPER_ID}\" --full (the two commands of the row, manifests/stack.json:659-660)", + "exit": -1, + "ran": false, + "output_excerpt": "NOT RUN. The -1 is a sentinel meaning 'not run', not an exit code. Both documented commands need a live network service: `orx discover keyword --help` on v0.2.15 reads 'alphaXiv full-text BM25 retrieval with match snippets' and `orx paper --help` reads 'Fetch a paper: alphaXiv report/full-text, or OpenAlex/bioRxiv/PubMed metadata'. The second also needs a value for ${PAPER_ID}, which the task does not supply. The repo's own prior qualification record (evidence/artifacts/sota-refresh-20260923/pins-tools/openresearch.json, limits) says functional search needs a stored alphaXiv/OpenAlex key or account." + }, + "input_packet": { + "name": "W1-moves.json", + "sha256": "efc142f19b4d8559510e6992fbf48cd3a308223938dbc58d07c86e4a57ecf3c1", + "workflow_run": "wf_a95468d8-3af" + }, + "upstream_refresh": { + "checks": [ + { + "endpoint": "repos/alphaXiv/OpenResearch", + "exit_code": 0, + "started_at": "2026-10-03T05:50:26.264947+00:00", + "ended_at": "2026-10-03T05:50:26.600418+00:00", + "stdout_sha256": "e20328f9e56fdc90ca402b7eae1cddcff37db7c730a25c2dc143d5e3926b63f4", + "status": "ok" + }, + { + "endpoint": "repos/alphaXiv/OpenResearch/releases/latest", + "exit_code": 0, + "started_at": "2026-10-03T05:50:26.600678+00:00", + "ended_at": "2026-10-03T05:50:26.847347+00:00", + "stdout_sha256": "b0f0cab6c98d8bd47ff85c5af24891ae89cfb3a5b951dcb97f7179462df5a5de", + "status": "ok" + }, + { + "endpoint": "repos/alphaXiv/OpenResearch/commits/ee36ef0333ca3c533eace915f1bec322a1efde1c", + "exit_code": 0, + "started_at": "2026-10-03T05:50:26.848058+00:00", + "ended_at": "2026-10-03T05:50:27.128687+00:00", + "stdout_sha256": "1fd77363a6f5b8ad8fbdd13bc3cc7a9cec0af4181b3d4088361cf65b5c9fee62", + "status": "ok" + }, + { + "endpoint": "repos/alphaXiv/OpenResearch/commits/v0.2.15", + "exit_code": 0, + "started_at": "2026-10-03T05:50:27.128958+00:00", + "ended_at": "2026-10-03T05:50:27.434104+00:00", + "stdout_sha256": "1fd77363a6f5b8ad8fbdd13bc3cc7a9cec0af4181b3d4088361cf65b5c9fee62", + "status": "ok" + } + ], + "latest_stable_release": { + "tag_name": "v0.2.15", + "published_at": "2026-10-02T17:44:48Z", + "html_url": "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15", + "target_commitish": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "prerelease": false, + "draft": false + }, + "selected_pin_source": { + "ref": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "sha": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "html_url": "https://github.com/alphaXiv/OpenResearch/commit/ee36ef0333ca3c533eace915f1bec322a1efde1c", + "committed_at": "2026-10-02T02:28:29Z" + }, + "latest_release_source": { + "ref": "v0.2.15", + "sha": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "html_url": "https://github.com/alphaXiv/OpenResearch/commit/ee36ef0333ca3c533eace915f1bec322a1efde1c", + "committed_at": "2026-10-02T02:28:29Z" + } + }, + "cooldown_waiver": "The user ended the seven-day cooldown for clean releases on 2026-10-03; qualification requirements remain in force.", + "host_switched": false, + "upstream_test_suite_run_by_integration": false, + "integration_artifact_rehash": { + "method": "Python 3 hashlib.file_digest over the retained downloaded artifact; no archive regeneration", + "sha256": "f36ed4095f4839767a162a555d9e7eafc04f70f0664ce3767178f81fc0b45c86", + "bytes": 11890208, + "matches_recorded_sha256": true, + "scope": "byte identity with the qualified W1 artifact; not signature or upstream test acceptance" + } + } +} diff --git a/evidence/receipts/otelcol-contrib-0162-qualification-20261003.json b/evidence/receipts/otelcol-contrib-0162-qualification-20261003.json new file mode 100644 index 000000000..97ce2986c --- /dev/null +++ b/evidence/receipts/otelcol-contrib-0162-qualification-20261003.json @@ -0,0 +1,123 @@ +{ + "schema_version": 1, + "id": "otelcol-contrib-0162-qualification-20261003", + "kind": "native_cli_e2e", + "recorded_at_utc": "2026-10-03T05:55:06.824136+00:00", + "component_ids": [ + "opentelemetry-collector-contrib" + ], + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "limitations": [ + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "data": { + "previous_version": "0.161.0", + "version": "0.162.0", + "source": { + "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "tag": "v0.162.0", + "commit": "ae8c507510f48f433ab47dd1c6b01a59d6c388b5", + "published_at": "2026-09-29T10:11:33Z", + "prerelease": false + }, + "artifact": { + "kind": "release-asset", + "url": "https://github.com/open-telemetry/opentelemetry-collector-releases/releases/download/v0.162.0/otelcol-contrib_0.162.0_linux_amd64.tar.gz", + "sha256": "fcc063749f730f8c21fe29f2d340ff174f5f1c5885bd3156fb6c985a3036fcc3", + "integrity_checked": true, + "integrity_source": "Publisher sidecar https://github.com/open-telemetry/opentelemetry-collector-releases/releases/download/v0.162.0/otelcol-contrib_0.162.0_linux_amd64.tar.gz.sha256 (64 hex chars; sha256sum --check printed OK, exit 0) AND the GitHub release asset digest recorded in github_release_asset_digest (gh api repos/open-telemetry/opentelemetry-collector-releases/releases/tags/v0.162.0). Computed sha256 equals both; downloaded size 112285869 bytes equals the API size. Sigstore bundle otelcol-contrib_0.162.0_linux_amd64.tar.gz.sigstore.json exists upstream but was NOT verified (cosign and slsa-verifier are not installed).", + "github_release_asset_digest": "sha256:fcc063749f730f8c21fe29f2d340ff174f5f1c5885bd3156fb6c985a3036fcc3" + }, + "install_recorded": { + "command": "tar -xzf /opentelemetry-collector-contrib/otelcol-contrib_0.162.0_linux_amd64.tar.gz -C /opentelemetry-collector-contrib/prefix", + "exit": 0, + "prefix": "/opentelemetry-collector-contrib/prefix" + }, + "version_recorded": { + "command": "/opentelemetry-collector-contrib/prefix/otelcol-contrib --version", + "exit": 0, + "output": "otelcol-contrib version 0.162.0" + }, + "smoke_recorded": { + "command": "env ECOSYSTEM_OBSERVABILITY_DATA=/opentelemetry-collector-contrib/data /opentelemetry-collector-contrib/prefix/otelcol-contrib validate --config=/observability/collector/collector.yaml", + "exit": 0, + "output_excerpt": "", + "ran": true + }, + "input_packet": { + "name": "W1-moves.json", + "sha256": "efc142f19b4d8559510e6992fbf48cd3a308223938dbc58d07c86e4a57ecf3c1", + "workflow_run": "wf_a95468d8-3af" + }, + "upstream_refresh": { + "checks": [ + { + "endpoint": "repos/open-telemetry/opentelemetry-collector-contrib", + "exit_code": 0, + "started_at": "2026-10-03T05:50:27.434445+00:00", + "ended_at": "2026-10-03T05:50:27.867805+00:00", + "stdout_sha256": "1004156b020ffa0ba45ec636f07308b4f771b0781c6faae15c33f7439c694b58", + "status": "ok" + }, + { + "endpoint": "repos/open-telemetry/opentelemetry-collector-contrib/releases/latest", + "exit_code": 0, + "started_at": "2026-10-03T05:50:27.868070+00:00", + "ended_at": "2026-10-03T05:50:28.103095+00:00", + "stdout_sha256": "227509dc4de124019591bc0fe0bb8ef21b327fe52890d262d17ef4d2aec17afd", + "status": "ok" + }, + { + "endpoint": "repos/open-telemetry/opentelemetry-collector-contrib/commits/ae8c507510f48f433ab47dd1c6b01a59d6c388b5", + "exit_code": 0, + "started_at": "2026-10-03T05:50:28.104024+00:00", + "ended_at": "2026-10-03T05:50:28.529857+00:00", + "stdout_sha256": "17bbbf673f584c369735a054fcd6b92cf89b1d72b2bda1f77f8a9ac114b9bdf4", + "status": "ok" + }, + { + "endpoint": "repos/open-telemetry/opentelemetry-collector-contrib/commits/v0.162.0", + "exit_code": 0, + "started_at": "2026-10-03T05:50:28.542380+00:00", + "ended_at": "2026-10-03T05:50:28.968101+00:00", + "stdout_sha256": "17bbbf673f584c369735a054fcd6b92cf89b1d72b2bda1f77f8a9ac114b9bdf4", + "status": "ok" + } + ], + "latest_stable_release": { + "tag_name": "v0.162.0", + "published_at": "2026-09-29T10:11:33Z", + "html_url": "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0", + "target_commitish": "main", + "prerelease": false, + "draft": false + }, + "selected_pin_source": { + "ref": "ae8c507510f48f433ab47dd1c6b01a59d6c388b5", + "sha": "ae8c507510f48f433ab47dd1c6b01a59d6c388b5", + "html_url": "https://github.com/open-telemetry/opentelemetry-collector-contrib/commit/ae8c507510f48f433ab47dd1c6b01a59d6c388b5", + "committed_at": "2026-09-29T09:11:04Z" + }, + "latest_release_source": { + "ref": "v0.162.0", + "sha": "ae8c507510f48f433ab47dd1c6b01a59d6c388b5", + "html_url": "https://github.com/open-telemetry/opentelemetry-collector-contrib/commit/ae8c507510f48f433ab47dd1c6b01a59d6c388b5", + "committed_at": "2026-09-29T09:11:04Z" + } + }, + "cooldown_waiver": "The user ended the seven-day cooldown for clean releases on 2026-10-03; qualification requirements remain in force.", + "host_switched": false, + "upstream_test_suite_run_by_integration": false, + "integration_artifact_rehash": { + "method": "Python 3 hashlib.file_digest over the retained downloaded artifact; no archive regeneration", + "sha256": "fcc063749f730f8c21fe29f2d340ff174f5f1c5885bd3156fb6c985a3036fcc3", + "bytes": 112285869, + "matches_recorded_sha256": true, + "scope": "byte identity with the qualified W1 artifact; not signature or upstream test acceptance" + } + } +} diff --git a/evidence/receipts/playwright-cli-0122-qualification-20261003.json b/evidence/receipts/playwright-cli-0122-qualification-20261003.json new file mode 100644 index 000000000..628e23d04 --- /dev/null +++ b/evidence/receipts/playwright-cli-0122-qualification-20261003.json @@ -0,0 +1,123 @@ +{ + "schema_version": 1, + "id": "playwright-cli-0122-qualification-20261003", + "kind": "native_cli_e2e", + "recorded_at_utc": "2026-10-03T05:55:06.824136+00:00", + "component_ids": [ + "playwright-cli" + ], + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "limitations": [ + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "data": { + "previous_version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", + "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", + "source": { + "repository": "https://github.com/microsoft/playwright-cli", + "tag": "v0.1.22", + "commit": "b85c7a736bb473bf55b584e54a09ffa698d6d871", + "published_at": "2026-09-28T23:23:13Z", + "prerelease": false + }, + "artifact": { + "kind": "npm_tarball", + "url": "https://registry.npmjs.org/@playwright/cli/-/cli-0.1.22.tgz", + "sha256": "bb4840be17006e2b7ba856224dc3062f6571d5f647352476f95c5e77ff5d679a", + "integrity_checked": true, + "integrity_source": "npm registry version manifest https://registry.npmjs.org/%40playwright%2Fcli/0.1.22: dist.integrity sha512-6WMkQNM4VEzqMkdr/l60X9Cr7i+tI/arK87IWz2K7pB6j8I2ZJ8KN+1JfhJDLnK+SXnab6Op8xGt4adcGLsyfA== and dist.shasum 8f4bb69e84084f1fabcb4ba08f491f7e16894a06 both equal the local tarball digests (35464 bytes; 16 files = dist.fileCount). Local sha512 hex also equals the npm provenance attestation subject digest (https://registry.npmjs.org/-/npm/v1/attestations/@playwright%2fcli@0.1.22). The sha256 is a local rehash because npm publishes no sha256, the same basis as the 0.1.21 pin (adoption/new-wsl-profile.json:1010 integrity_observation downloaded_and_rehashed). Registry signatures and attestation were not cryptographically verified (npm audit signatures not run)." + }, + "install_recorded": { + "command": "npm install --prefix /playwright-cli/prefix --cache /playwright-cli/npm-cache --userconfig /dev/null --no-audit --no-fund /playwright-cli/cli-0.1.22.tgz", + "exit": 0, + "prefix": "/playwright-cli/prefix" + }, + "version_recorded": { + "command": "cd /playwright-cli && HOME=/playwright-cli/home /playwright-cli/prefix/node_modules/.bin/playwright-cli --version", + "exit": 0, + "output": "0.1.22" + }, + "smoke_recorded": { + "command": "cd /playwright-cli && HOME=/playwright-cli/home /playwright-cli/prefix/node_modules/.bin/playwright-cli --help", + "exit": 0, + "ran": true, + "output_excerpt": "playwright-cli - run playwright mcp commands from terminal\n\nAgent skill: prefix/node_modules/playwright-core/lib/tools/skills/playwright-cli/SKILL.md\n\nUsage: playwright-cli [args] [options]\nUsage: playwright-cli -s= [args] [options]\n\nCore:\n open [url] open the browser\n attach [name] attach to a running playwright browser\n ...(elided; groups Navigation, Keyboard, Mouse, Save as, Tabs, Storage, Emulation, Network, DevTools, WebMCP, Install, Browser sessions)...\nGlobal options:\n --help [command] print help\n --json output response as JSON\n --raw output only the result value, without status and code\n --version print version\n[caveat, see notes item 5: the wrapper also did an anonymous update-check GET to registry.npmjs.org and wrote cli-update-check.json under the overridden HOME]" + }, + "input_packet": { + "name": "W1-moves.json", + "sha256": "efc142f19b4d8559510e6992fbf48cd3a308223938dbc58d07c86e4a57ecf3c1", + "workflow_run": "wf_a95468d8-3af" + }, + "upstream_refresh": { + "checks": [ + { + "endpoint": "repos/microsoft/playwright-cli", + "exit_code": 0, + "started_at": "2026-10-03T05:50:26.264446+00:00", + "ended_at": "2026-10-03T05:50:26.717410+00:00", + "stdout_sha256": "8c6f21427cb3061d2ffc77ebfc71bdb48d29bf3515685cda75095a9a154d13c7", + "status": "ok" + }, + { + "endpoint": "repos/microsoft/playwright-cli/releases/latest", + "exit_code": 0, + "started_at": "2026-10-03T05:50:26.717640+00:00", + "ended_at": "2026-10-03T05:50:26.989657+00:00", + "stdout_sha256": "c33eb616038124751bfa29d1f54150323a86286afb4af42758ec5da356ec8e0b", + "status": "ok" + }, + { + "endpoint": "repos/microsoft/playwright-cli/commits/b85c7a736bb473bf55b584e54a09ffa698d6d871", + "exit_code": 0, + "started_at": "2026-10-03T05:50:26.989873+00:00", + "ended_at": "2026-10-03T05:50:27.302466+00:00", + "stdout_sha256": "8cc4e442825d47fc09f93f03448b81645efaa13090851c4226e07aff72a1f864", + "status": "ok" + }, + { + "endpoint": "repos/microsoft/playwright-cli/commits/v0.1.22", + "exit_code": 0, + "started_at": "2026-10-03T05:50:27.302725+00:00", + "ended_at": "2026-10-03T05:50:27.642073+00:00", + "stdout_sha256": "8cc4e442825d47fc09f93f03448b81645efaa13090851c4226e07aff72a1f864", + "status": "ok" + } + ], + "latest_stable_release": { + "tag_name": "v0.1.22", + "published_at": "2026-09-28T23:23:13Z", + "html_url": "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22", + "target_commitish": "main", + "prerelease": false, + "draft": false + }, + "selected_pin_source": { + "ref": "b85c7a736bb473bf55b584e54a09ffa698d6d871", + "sha": "b85c7a736bb473bf55b584e54a09ffa698d6d871", + "html_url": "https://github.com/microsoft/playwright-cli/commit/b85c7a736bb473bf55b584e54a09ffa698d6d871", + "committed_at": "2026-09-28T23:22:31Z" + }, + "latest_release_source": { + "ref": "v0.1.22", + "sha": "b85c7a736bb473bf55b584e54a09ffa698d6d871", + "html_url": "https://github.com/microsoft/playwright-cli/commit/b85c7a736bb473bf55b584e54a09ffa698d6d871", + "committed_at": "2026-09-28T23:22:31Z" + } + }, + "cooldown_waiver": "The user ended the seven-day cooldown for clean releases on 2026-10-03; qualification requirements remain in force.", + "host_switched": false, + "upstream_test_suite_run_by_integration": false, + "integration_artifact_rehash": { + "method": "Python 3 hashlib.file_digest over the retained downloaded artifact; no archive regeneration", + "sha256": "bb4840be17006e2b7ba856224dc3062f6571d5f647352476f95c5e77ff5d679a", + "bytes": 35464, + "matches_recorded_sha256": true, + "scope": "byte identity with the qualified W1 artifact; not signature or upstream test acceptance" + } + } +} diff --git a/evidence/receipts/syft-1540-qualification-20261003.json b/evidence/receipts/syft-1540-qualification-20261003.json new file mode 100644 index 000000000..5185d9b0d --- /dev/null +++ b/evidence/receipts/syft-1540-qualification-20261003.json @@ -0,0 +1,124 @@ +{ + "schema_version": 1, + "id": "syft-1540-qualification-20261003", + "kind": "native_cli_e2e", + "recorded_at_utc": "2026-10-03T05:55:06.824136+00:00", + "component_ids": [ + "syft" + ], + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "limitations": [ + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "data": { + "previous_version": "1.52.0", + "version": "1.54.0", + "source": { + "repository": "https://github.com/anchore/syft", + "tag": "v1.54.0", + "commit": "cc326e45a6213360266dda4b30cc68095946d676", + "published_at": "2026-10-01T20:54:29Z", + "prerelease": false + }, + "artifact": { + "kind": "github-release-asset", + "url": "https://github.com/anchore/syft/releases/download/v1.54.0/syft_1.54.0_linux_amd64.tar.gz", + "sha256": "54a87372498168b2d033e876fd41fa4e8035b872699e525a57046e1f2f09c860", + "integrity_checked": true, + "integrity_source": "https://github.com/anchore/syft/releases/download/v1.54.0/syft_1.54.0_checksums.txt line 8 (sha256sum --check --ignore-missing syft_1.54.0_checksums.txt -> 'syft_1.54.0_linux_amd64.tar.gz: OK', exit 0); also equal to the GitHub release asset digest sha256:54a87372498168b2d033e876fd41fa4e8035b872699e525a57046e1f2f09c860 (gh api repos/anchore/syft/releases/tags/v1.54.0). The checksums file's own sha256 e423344e663d7d14db62e51ddd31e4a5012818ed69e78358391dc487483f839c equals its API digest. Signature of the checksums file (syft_1.54.0_checksums.txt.sigstore.json) NOT verified: cosign is not installed here." + }, + "install_recorded": { + "command": "tar --no-same-owner -xzf /syft/syft_1.54.0_linux_amd64.tar.gz -C /syft/prefix", + "exit": 0, + "prefix": "/syft/prefix" + }, + "version_recorded": { + "command": "env SYFT_CHECK_FOR_APP_UPDATE=false /syft/prefix/syft version -o json", + "exit": 0, + "output": "{\n \"application\": \"syft\",\n \"buildDate\": \"2026-10-01T20:48:12Z\",\n \"compiler\": \"gc\",\n \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\",\n \"gitDescription\": \"v1.54.0\",\n \"goVersion\": \"go1.26.8\",\n \"platform\": \"linux/amd64\",\n \"schemaVersion\": \"16.1.11\",\n \"version\": \"1.54.0\"\n}" + }, + "smoke_recorded": { + "command": "bwrap --unshare-all --die-with-parent --new-session --cap-drop ALL --clearenv --ro-bind /syft/prefix/syft /syft --ro-bind /sdk-py313 /sdk --bind /syft/smoke-output /output --proc /proc --dev /dev --tmpfs /tmp --chdir /tmp --setenv HOME /tmp --setenv SYFT_CHECK_FOR_APP_UPDATE false /syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json (run under umask 077; this is manifests/stack.json:1406 inside the bubblewrap harness of blueprints/us-equities/supply-chain/README.md:112-126, scratch paths substituted)", + "exit": 0, + "output_excerpt": "No stdout or stderr. smoke-output/runtime.syft.json (1230272 B): descriptor syft 1.54.0, schema 16.1.11, source equity-worker-sdk (directory), 36 artifacts, 166 files, 177 relationships. smoke-output/runtime.cdx.json (160043 B): CycloneDX 1.7, 123 components (36 library + 87 file), tool syft 1.54.0. The 36 name/version/purl tuples are identical to the 36 in blueprints/us-equities/supply-chain/receipt.json (the 1.52.0 acceptance, which also records 166 files, 177 relationships, 36 library + 87 file components, CycloneDX 1.7, schemaVersion 16.1.10); diff exit 0. CycloneDX library components equal the syft-json artifacts (diff exit 0).", + "ran": true + }, + "input_packet": { + "name": "W1-moves.json", + "sha256": "efc142f19b4d8559510e6992fbf48cd3a308223938dbc58d07c86e4a57ecf3c1", + "workflow_run": "wf_a95468d8-3af" + }, + "upstream_refresh": { + "checks": [ + { + "endpoint": "repos/anchore/syft", + "exit_code": 0, + "started_at": "2026-10-03T05:50:28.512869+00:00", + "ended_at": "2026-10-03T05:50:28.825921+00:00", + "stdout_sha256": "c9793fbd5c0319983ccf6f9f6b2cd3836296e718bb4071d422f75de865a48e24", + "status": "ok" + }, + { + "endpoint": "repos/anchore/syft/releases/latest", + "exit_code": 0, + "started_at": "2026-10-03T05:50:28.826194+00:00", + "ended_at": "2026-10-03T05:50:29.100900+00:00", + "stdout_sha256": "a611ca1c6865b189c03778f245761b88defb6e1d830a3505957d02d7b7fa9588", + "status": "ok" + }, + { + "endpoint": "repos/anchore/syft/commits/cc326e45a6213360266dda4b30cc68095946d676", + "exit_code": 0, + "started_at": "2026-10-03T05:50:29.101689+00:00", + "ended_at": "2026-10-03T05:50:29.448978+00:00", + "stdout_sha256": "64720efc1828ec8905184f903735d526962be49ad8def251379b5d273c294797", + "status": "ok" + }, + { + "endpoint": "repos/anchore/syft/commits/v1.54.0", + "exit_code": 0, + "started_at": "2026-10-03T05:50:29.449234+00:00", + "ended_at": "2026-10-03T05:50:29.732600+00:00", + "stdout_sha256": "64720efc1828ec8905184f903735d526962be49ad8def251379b5d273c294797", + "status": "ok" + } + ], + "latest_stable_release": { + "tag_name": "v1.54.0", + "published_at": "2026-10-01T20:54:29Z", + "html_url": "https://github.com/anchore/syft/releases/tag/v1.54.0", + "target_commitish": "main", + "prerelease": false, + "draft": false + }, + "selected_pin_source": { + "ref": "cc326e45a6213360266dda4b30cc68095946d676", + "sha": "cc326e45a6213360266dda4b30cc68095946d676", + "html_url": "https://github.com/anchore/syft/commit/cc326e45a6213360266dda4b30cc68095946d676", + "committed_at": "2026-10-01T19:00:50Z" + }, + "latest_release_source": { + "ref": "v1.54.0", + "sha": "cc326e45a6213360266dda4b30cc68095946d676", + "html_url": "https://github.com/anchore/syft/commit/cc326e45a6213360266dda4b30cc68095946d676", + "committed_at": "2026-10-01T19:00:50Z" + } + }, + "cooldown_waiver": "The user ended the seven-day cooldown for clean releases on 2026-10-03; qualification requirements remain in force.", + "host_switched": false, + "upstream_test_suite_run_by_integration": false, + "signature_verified": false, + "integration_artifact_rehash": { + "method": "Python 3 hashlib.file_digest over the retained downloaded artifact; no archive regeneration", + "sha256": "54a87372498168b2d033e876fd41fa4e8035b872699e525a57046e1f2f09c860", + "bytes": 29217540, + "matches_recorded_sha256": true, + "scope": "byte identity with the qualified W1 artifact; not signature or upstream test acceptance" + } + } +} diff --git a/evidence/receipts/worktrunk-0800-qualification-20261003.json b/evidence/receipts/worktrunk-0800-qualification-20261003.json new file mode 100644 index 000000000..ef6ce2888 --- /dev/null +++ b/evidence/receipts/worktrunk-0800-qualification-20261003.json @@ -0,0 +1,122 @@ +{ + "schema_version": 1, + "id": "worktrunk-0800-qualification-20261003", + "kind": "native_cli_e2e", + "recorded_at_utc": "2026-10-03T05:55:06.824136+00:00", + "component_ids": [ + "worktrunk" + ], + "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", + "limitations": [ + "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", + "The host installation and rollback launcher were not switched.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "data": { + "previous_version": "0.79.0", + "version": "0.80.0", + "source": { + "repository": "https://github.com/max-sixty/worktrunk", + "tag": "v0.80.0", + "commit": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "published_at": "2026-09-27T21:18:46Z", + "prerelease": false + }, + "artifact": { + "kind": "github-release-asset", + "url": "https://github.com/max-sixty/worktrunk/releases/download/v0.80.0/worktrunk-x86_64-unknown-linux-musl.tar.xz", + "sha256": "532ce3ed5eecb1be274c925b5887f61671e2434a4ca2561b9a8ac9379dbba199", + "integrity_checked": true, + "integrity_source": "Published per-asset checksum https://github.com/max-sixty/worktrunk/releases/download/v0.80.0/worktrunk-x86_64-unknown-linux-musl.tar.xz.sha256 (sha256sum -c: OK, exit 0). Cross-checked: aggregate release asset sha256.sum (sha256sum -c --ignore-missing: OK, exit 0); GitHub API asset digest sha256:532ce3ed... from releases/tags/v0.80.0; gh release verify v0.80.0 and gh release verify-asset on the archive (GitHub release attestation, both exit 0); adoption/new-wsl-profile.json:815 records the same value." + }, + "install_recorded": { + "command": "tar -xJf /worktrunk/worktrunk-x86_64-unknown-linux-musl.tar.xz -C /worktrunk/prefix", + "exit": 0, + "prefix": "/worktrunk/prefix" + }, + "version_recorded": { + "command": "/worktrunk/prefix/worktrunk-x86_64-unknown-linux-musl/wt --version", + "exit": 0, + "output": "wt v0.80.0" + }, + "smoke_recorded": { + "command": "wt list (the row's documented command, manifests/stack.json:1067-1069). Binary: /worktrunk-x86_64-unknown-linux-musl/wt. cwd: /worktrunk/smoke/repo, a one-commit synthetic scratch repo (not 0c/base). Run as env -i with HOME, XDG_*, WORKTRUNK_CONFIG_PATH and WORKTRUNK_SYSTEM_CONFIG_PATH in the scratch dir, GIT_CONFIG_GLOBAL=/dev/null, GIT_CONFIG_NOSYSTEM=1, stdin /dev/null.", + "exit": 0, + "output_excerpt": " Branch Status HEAD\u00b1 main\u2195 main\u2026\u00b1 Remote\u21c5 Path Commit Age Message\n@ main ^ . 54a02d5 1w synthetic fixture\n\n\u25cb Showing 1 worktree", + "ran": true + }, + "input_packet": { + "name": "W1-moves.json", + "sha256": "efc142f19b4d8559510e6992fbf48cd3a308223938dbc58d07c86e4a57ecf3c1", + "workflow_run": "wf_a95468d8-3af" + }, + "upstream_refresh": { + "checks": [ + { + "endpoint": "repos/max-sixty/worktrunk", + "exit_code": 0, + "started_at": "2026-10-03T05:50:27.551710+00:00", + "ended_at": "2026-10-03T05:50:27.850863+00:00", + "stdout_sha256": "caf913d3aaf6e621b46ce4b59f1fa53be35032d7f304f94453ae82d4f22d57b7", + "status": "ok" + }, + { + "endpoint": "repos/max-sixty/worktrunk/releases/latest", + "exit_code": 0, + "started_at": "2026-10-03T05:50:27.851194+00:00", + "ended_at": "2026-10-03T05:50:28.131482+00:00", + "stdout_sha256": "c65bee197fd1e89af27be32310e1683af8bf1bebdd7fd6da43f495dad4606d05", + "status": "ok" + }, + { + "endpoint": "repos/max-sixty/worktrunk/commits/b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "exit_code": 0, + "started_at": "2026-10-03T05:50:28.131899+00:00", + "ended_at": "2026-10-03T05:50:28.413949+00:00", + "stdout_sha256": "f6463368e4353d375593a0e6cf478df0577658046a300234276f27b758d6026c", + "status": "ok" + }, + { + "endpoint": "repos/max-sixty/worktrunk/commits/v0.80.0", + "exit_code": 0, + "started_at": "2026-10-03T05:50:28.414318+00:00", + "ended_at": "2026-10-03T05:50:28.691238+00:00", + "stdout_sha256": "f6463368e4353d375593a0e6cf478df0577658046a300234276f27b758d6026c", + "status": "ok" + } + ], + "latest_stable_release": { + "tag_name": "v0.80.0", + "published_at": "2026-09-27T21:18:46Z", + "html_url": "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0", + "target_commitish": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "prerelease": false, + "draft": false + }, + "selected_pin_source": { + "ref": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "sha": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "html_url": "https://github.com/max-sixty/worktrunk/commit/b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "committed_at": "2026-09-27T20:55:48Z" + }, + "latest_release_source": { + "ref": "v0.80.0", + "sha": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "html_url": "https://github.com/max-sixty/worktrunk/commit/b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "committed_at": "2026-09-27T20:55:48Z" + } + }, + "cooldown_waiver": "The user ended the seven-day cooldown for clean releases on 2026-10-03; qualification requirements remain in force.", + "host_switched": false, + "upstream_test_suite_run_by_integration": false, + "integration_artifact_rehash": { + "method": "Python 3 hashlib.file_digest over the retained downloaded artifact; no archive regeneration", + "sha256": "532ce3ed5eecb1be274c925b5887f61671e2434a4ca2561b9a8ac9379dbba199", + "bytes": 8173256, + "matches_recorded_sha256": true, + "scope": "byte identity with the qualified W1 artifact; not signature or upstream test acceptance" + } + } +} diff --git a/manifests/landscape.json b/manifests/landscape.json index a504324a6..d472d3bbf 100644 --- a/manifests/landscape.json +++ b/manifests/landscape.json @@ -355,10 +355,10 @@ "additional_supply_chain_candidates": [ { "repo": "anchore/syft", - "version": "v1.52.0", - "published_at": "2026-09-17T14:38:17Z", - "source_commit": "02ba369d13b4248395b20a504eca94b0cab564d8", - "url": "https://github.com/anchore/syft/releases/tag/v1.52.0" + "version": "v1.54.0", + "published_at": "2026-10-01T20:54:29Z", + "source_commit": "cc326e45a6213360266dda4b30cc68095946d676", + "url": "https://github.com/anchore/syft/releases/tag/v1.54.0" }, { "repo": "google/osv-scanner", diff --git a/manifests/stack.json b/manifests/stack.json index 9dc22bcff..416bae218 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -242,8 +242,8 @@ }, { "id": "claude-hud", - "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0", - "version": "0.8.0", + "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0", + "version": "0.10.0", "license": "MIT", "profile": "optional", "role": "Claude statusline rendering", @@ -259,13 +259,14 @@ "token-practice-gap-followup-20260920", "native-claude-hud-interactive-20260920", "current-session-observation-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "claude-hud-0100-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0" + "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0" ], - "source_pin": null, - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "75683c6de1ac07f6bbef00d739001679dba0740c", + "freshness": "2026-10-03 W1 scratch qualification: The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.8.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core.", "command_scope": "Metadata/help/setup reference only; historical functional evidence retained separately. See native recipe for selected live workflow." }, @@ -601,32 +602,33 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.8.0", - "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.9.0", + "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.8.0 --help" + "npx @modelcontextprotocol/inspector@2.9.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926" + "mcp-inspector-280-qualification-20260926", + "mcp-inspector-290-qualification-20261003" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" ], "source_pin": null, - "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { "id": "mcporter", - "repository": "https://github.com/openclaw/mcporter/tree/v0.14.1", - "version": "0.14.1", + "repository": "https://github.com/openclaw/mcporter/tree/v0.14.2", + "version": "0.14.2", "license": "MIT", "profile": "core", "role": "Native CLI bridge with persistent MCP daemon connection", @@ -640,18 +642,20 @@ "current-session-observation-20260920", "claude-upstream-checks-20260921", "claude-repository-evidence-20260921", - "mcporter-0141-qualification-20260925" + "mcporter-0141-qualification-20260925", + "mcporter-0142-qualification-20261003" ], "upstream_sources": [ - "https://github.com/openclaw/mcporter/tree/v0.14.1" + "https://github.com/openclaw/mcporter/tree/v0.14.2", + "https://github.com/openclaw/mcporter/releases/tag/v0.14.2" ], "source_pin": null, - "freshness": "0.14.1 serves bin/mcporter on the NativeStack WSL2 host since 2026-09-25 after a matched 37-step comparison against 0.13.13 (independent review). 0.14.x runs ps from PATH, so whatever launches the daemon needs ps on its PATH. 0.13.13 is kept for rollback. The Mac pin stays 0.13.13, and the landscape winner pin stays 0.13.13 until a new verdict wave." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.14.2\" (exit 0). The new ad-hoc stdio order/get_session_stats canary returned \"visible_tools\": 6, \"catalog_tools\": 94 and \"session_tokens_saved\": 0 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.14.1 receipts retain their original scope." }, { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.7", + "version": "0.2.15", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -666,19 +670,20 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "openresearch-0215-qualification-20261003" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" ], - "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." + "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", + "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -690,13 +695,15 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "playwright-cli-0122-qualification-20261003" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli" + "https://github.com/microsoft/playwright-cli", + "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" ], "source_pin": null, - "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1060,7 +1067,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.79.0", + "version": "0.80.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1075,20 +1082,21 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "worktrunk-0800-qualification-20261003" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" ], - "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.161.0", + "version": "0.162.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1108,13 +1116,15 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "otelcol-contrib-0162-qualification-20261003" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib" + "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." }, { "id": "prometheus", @@ -1397,10 +1407,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.52.0", + "version": "1.54.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1409,13 +1419,14 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "syft-1540-qualification-20261003" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.52.0" + "https://github.com/anchore/syft/releases/tag/v1.54.0" ], - "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." }, { "id": "alpaca-py", @@ -1678,7 +1689,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.319", + "version": "1.108.327", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1691,7 +1702,7 @@ } } ], - "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1704,13 +1715,14 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "jcodemunch-1108327-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", - "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", + "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" ], - "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { diff --git a/observability/README.md b/observability/README.md index f355f8fba..7c607ad2e 100644 --- a/observability/README.md +++ b/observability/README.md @@ -27,7 +27,7 @@ notifications. [Machine-readable evidence](receipt.json) records the exact scope | Native execution | openai/codex; anthropics/claude-code; official Codex SDK | Existing native subscriptions and model choices; no API-account migration | | Context and accounting | mksglu/context-mode; rtk-ai/rtk; ccusage/ccusage | Context/output estimates separate from native usage; scoped retrieval rather than full-log ingestion | | Memory and retrieval | akitaonrails/ai-memory; SocratiCode; qdrant/qdrant; vllm-project/vllm; QMD | Prior memory/RAG acceptance plus current service metrics; no new universal memory index | -| Collection | open-telemetry/opentelemetry-collector-contrib 0.161.0 | One Collector process using core/contrib components; selected private correlation IDs retained | +| Collection | open-telemetry/opentelemetry-collector-contrib 0.162.0 | One Collector process using core/contrib components; selected private correlation IDs retained | | Storage and viewing | prometheus/prometheus 3.14.0; grafana/loki 3.7.8; grafana/grafana 13.2.2 | Native queries, dashboard, bounded retention and restart acceptance | | Alert delivery | prometheus/alertmanager 0.34.1; binwiederhier/ntfy 2.28.0 | Native webhook and bundled ntfy template; local inbox only | | Workflow/research | Dagu; DeerFlow; native Astra SDK; LEAN | Existing execution receipts plus local service observation; no connected broker | diff --git a/observability/collector/README.md b/observability/collector/README.md index 416c51443..f2b5ae55b 100644 --- a/observability/collector/README.md +++ b/observability/collector/README.md @@ -1,15 +1,15 @@ # Native Collector profile -Pinned distribution: `otelcol-contrib` **0.161.0**, Linux amd64, from the official -[release](https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.161.0). -Archive SHA256: `778c689efa681ff6e4722ce9f66b9b7f57c3ba009ab2e2b43dc2e0315862c731`. -The downloaded publisher `.sha256` file matched before extraction. +Pinned distribution: `otelcol-contrib` **0.162.0**, Linux amd64, from the official +[release](https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.162.0). +Archive SHA256: `fcc063749f730f8c21fe29f2d340ff174f5f1c5885bd3156fb6c985a3036fcc3`. +The downloaded publisher `.sha256` file matched before extraction. The [2026-10-03 scratch qualification](../../evidence/receipts/otelcol-contrib-0162-qualification-20261003.json) ran `--version` and `validate`; prior runtime tests below retain their 0.161.0 scope. No host service was switched. These are upstream installation commands for a new explicit installation path. Do not overwrite an existing installation or customized configuration. ```bash -version=0.161.0 +version=0.162.0 asset="otelcol-contrib_${version}_linux_amd64.tar.gz" release="https://github.com/open-telemetry/opentelemetry-collector-releases/releases/download/v${version}" mkdir -p "$PRIVATE_DOWNLOAD_DIR" "$COLLECTOR_INSTALL_DIR" diff --git a/observability/paper-trading-live/collector-paper-trading.yaml b/observability/paper-trading-live/collector-paper-trading.yaml index c215085cc..0f16161f3 100644 --- a/observability/paper-trading-live/collector-paper-trading.yaml +++ b/observability/paper-trading-live/collector-paper-trading.yaml @@ -1,4 +1,4 @@ -# Merge into the ecosystem OpenTelemetry Collector config (otelcol-contrib 0.161.0). +# Merge into the ecosystem OpenTelemetry Collector config (otelcol-contrib 0.162.0). # Paper-trading run records -> local Loki. Bodies are kept (they are the manifest); # account identifiers and AccountState balances/margins are redacted before export. Paths use the collector user's HOME. receivers: diff --git a/recipes/README.md b/recipes/README.md index 2dfa0adbf..702439160 100644 --- a/recipes/README.md +++ b/recipes/README.md @@ -84,7 +84,7 @@ Commands assume the selected upstream executable is on the current shell's PATH. | `ast-grep` · `0.45.3` | `npm install --global --prefix "$STACK_HOME/tools/ast-grep-0.45.3" @ast-grep/cli@0.45.3` | `ast-grep run --lang javascript --pattern 'function $NAME($$$ARGS) { $$$BODY }' --json=compact --stdin < evidence/artifacts/usage-report.source.txt`. `--stdin` is intentional because this JavaScript fixture has a `.txt` suffix. At 0.45.3 every command, `run` included, first looks for `sgconfig.yml`/`sgconfig.yaml` in the working directory and each parent and registers the native `customLanguages` libraries it names, with no opt-in ([`lib.rs` L107-139](https://github.com/ast-grep/ast-grep/blob/0.45.3/crates/cli/src/lib.rs#L107-L139), [`config.rs` L98-131 and L280-299](https://github.com/ast-grep/ast-grep/blob/0.45.3/crates/cli/src/config.rs#L98-L131)): run it from a directory whose ancestors hold no unreviewed config, or pass `-c` with a reviewed one. The `--allow-custom-languages` opt-in ([#2960](https://github.com/ast-grep/ast-grep/pull/2960)) is merged but in no release yet; qualify it once released. A passing call-match check does not establish `outline` hierarchy (open [#2957](https://github.com/ast-grep/ast-grep/issues/2957)) or YAML rule scope (unknown rule keys are ignored, open [#2963](https://github.com/ast-grep/ast-grep/issues/2963)); check other structural tasks against the original source. | | `ccusage` · `20.0.26` | [Qualified isolated-prefix installation](native-upgrades-20260921.md#installation) with explicit candidate executable; for this pin, `npm install --global --prefix "$STACK_HOME/tools/ccusage-20.0.26" ccusage@20.0.26` ([receipt](../evidence/receipts/ccusage-20026-qualification-20260927.json)) | [History and usage](#history-and-usage). Read existing logs; never manufacture provider usage by replaying a receipt. Keep reports token-only (`--no-cost`) unless every model is priced: ccusage charges usage with no known price at 0, lists those models in `totals.unpricedModels` and marks each entry `missingPricing: true` ([JSON output](https://github.com/ccusage/ccusage/blob/v20.0.26/docs/guide/json-output.md#unpriced-models)). On 2026-09-27, 20.0.24's offline snapshot left `claude-opus-5-5` and `gpt-6-luna` unpriced in the retained native histories; 20.0.26's snapshot prices both and reports no unpriced model for the same range, with identical token totals. Its prices are upstream snapshot values, not a contract price: a cost figure still needs a separately qualified price for each model, through [`pricingOverrides`](https://github.com/ccusage/ccusage/blob/v20.0.26/docs/guide/config-files.md#pricing-overrides) where they differ. Totals are consumption, never tokens saved. | | `claude-code` · `2.1.278` | Download the [official native installer](https://code.claude.com/docs/en/setup) with `curl -fsSL https://claude.ai/install.sh -o "$STACK_HOME/downloads/claude-install.sh"`; inspect it, then `bash "$STACK_HOME/downloads/claude-install.sh" 2.1.278` | `claude --version` verifies installation. A real [native client pass](#native-client-acceptance) requires the user's normal signed-in account. Native auto-update can subsequently change this installed version. | -| `claude-hud` · `0.8.0` / `ef5f1c8b167572ad1443c70629763ea8780af96b` | `claude plugin marketplace add jarrodwatts/claude-hud@v0.8.0 --scope user`; `claude plugin install claude-hud@claude-hud --scope user --json` | Optional: run `/claude-hud:setup` inside a fresh Claude session. Preserve any existing statusline before choosing the documented integration. A representative input render validates formatting only, not live context or savings. | +| `claude-hud` · `0.10.0` | `claude plugin marketplace add jarrodwatts/claude-hud@v0.10.0 --scope user`, then `claude plugin install claude-hud@claude-hud --scope user --json`; reviewed commit `75683c6de1ac07f6bbef00d739001679dba0740c` | Representative stdin rendering passed in the [W1 scratch qualification](../evidence/receipts/claude-hud-0100-qualification-20261003.json); this proves formatting, with no live interactive host switch. Template-managed hosts keep their statusLine command and skip `/claude-hud:setup`: v0.10.0 setup backs up settings, replaces a command containing `claude-hud` and selects Bun or Node from PATH ([setup source](https://github.com/jarrodwatts/claude-hud/blob/75683c6de1ac07f6bbef00d739001679dba0740c/scripts/setup.mjs)). Existing setups keep working; the template guards against a missing plugin entry before invoking Node ([upstream launcher](https://github.com/jarrodwatts/claude-hud/blob/75683c6de1ac07f6bbef00d739001679dba0740c/scripts/statusline.mjs)). | | `codebase-memory-mcp` · `0.11.0` | Official [DeusData/codebase-memory-mcp v0.11.0](https://github.com/DeusData/codebase-memory-mcp/releases/tag/v0.11.0), asset `codebase-memory-mcp-linux-amd64.tar.gz`; recorded SHA-256 `032b33c1833919a2d1de67ff6367fa6ea46aee8689c86ef223c88fae3b6e4536` | [Static code graph](#static-code-graph). Invoke the binary directly; its all-client auto-installer is unnecessary. | | `codex` · `0.159.2` | Changed after `v2026.09.26.2` (0.155.1 at that tag, then 0.157.1 from 2026-09-26 to 2026-09-30). Official [openai/codex rust-v0.159.2](https://github.com/openai/codex/releases/tag/rust-v0.159.2), complete package and hash above. Supported package-manager alternative: `npm install --global --prefix "$STACK_HOME/tools/codex-0.159.2" @openai/codex@0.159.2` | `codex --version`, then [native client acceptance](#native-client-acceptance). Preserve the existing account, model, approval policy and sandbox settings. A top-level `--search` does not reach `codex exec` in 0.155.1 or 0.157.1: `codex --search exec ...` keeps exec's default `web_search = "cached"` mode, so request live search with `codex exec -c web_search="live" ...` (measured 2026-09-26 against a loopback fake provider: the search requests carried `external_web_access` false with `--search` and true with the override; not re-measured at 0.159.2, whose `codex --help` and `codex exec --help` are byte-identical to 0.157.1's). Before the first interactive launch of 0.157.x or later, keep `daemon_auto_start = false` under `[features]` in `~/.codex/config.toml` (the bootstrap's [template](../adoption/templates/codex.config.template.toml) sets it; otherwise run `codex features disable daemon_auto_start`): without it that launch copies the package into `CODEX_HOME/packages/app-server-daemon` and starts a self-updating background app-server outside the pinned prefix (measured at 0.157.1; 0.159.2 still lists `daemon_auto_start` as stable and on, and the disable command still writes the key). The template also sets `check_for_update_on_startup = false` (changed after `v2026.09.26.2`), because upgrades follow this pin rather than Codex's startup prompt ([`config_toml.rs:520-523`](https://github.com/openai/codex/blob/rust-v0.157.1/codex-rs/config/src/config_toml.rs#L520-L523): "Set to `false` only if your Codex updates are centrally managed"). The NativeStack WSL2 host switched from 0.155.1 to 0.157.1 on 2026-09-26 and keeps 0.155.1 for rollback; `evidence/receipts/codex-01571-qualification-20260926.json` holds the qualification and the switch and rollback commands. On 2026-09-30 its launcher already ran a 0.159.2 prefix that another session had installed; `evidence/receipts/codex-01592-qualification-20260930.json` qualifies that prefix without a model call and lists the upstream changes between the two releases. `python3 -B scripts/codex_quota.py --json` reads the account's shared usage window through `codex app-server` ([token practice](../docs/token-practice.md#shared-codex-quota-2026-09-26)). | | `codex-for-claude` · `1.0.6` / `db52e28f4d9ded852ab3942cea316258ae4ef346` | `claude plugin marketplace add openai/codex-plugin-cc@v1.0.6 --scope user`; `claude plugin install codex@openai-codex --scope user --json` | Optional: `/codex:setup` and `/codex:status` inside Claude. [Bridge scope](#optional-codex-for-claude). A status handshake does not consume a Codex model task or prove one completed. | @@ -96,10 +96,10 @@ Commands assume the selected upstream executable is on the current shell's PATH. | `headroom` · `0.37.0` | `uv tool install --python 3.13 'headroom-ai[mcp]==0.37.0'` | [Upstream MCP compression and retrieval](#headroom-native-compression-and-recovery). The earlier local exact-recovery guard remains separate; no automatic agent-traffic interception. [v0.39.1](https://github.com/headroomlabs-ai/headroom/releases/tag/v0.39.1) (2026-09-26) changes only the proxy rate limiter ([compare](https://github.com/headroomlabs-ai/headroom/compare/v0.39.0...v0.39.1) touches no log compressor), so the omission-count defect that kept 0.39.0 out ([receipt](../evidence/receipts/headroom-039-qualification-20260925.json)) stands. Qualify a release on omission counts, required facts and exact retrieval before moving the pin. | | `huggingface-hub-native` · `1.32.0` | `uv tool install huggingface-hub==1.32.0` | `hf --version`; [revision-pinned model download](#local-semantic-code-search). Authentication, if needed, uses native `hf auth login`; never publish credentials. | | `markitdown` · `0.1.8` | `uv tool install markitdown==0.1.8` | `markitdown fixtures/greeting.html -o "$STACK_HOME/output/greeting.md"`; inspect the greeting in the result. This uses the base HTML converter; PDF/Office extras are separate decisions. 0.1.8 replaced 0.1.7 on the NativeStack WSL2 host on 2026-09-25 after a discriminating comparison (`evidence/receipts/markitdown-018-qualification-20260925.json`): fixture, 8-K and committed-HTML outputs are byte-identical, while `` now stays inline HTML and ``, `%2F` paths and `data-src` images convert differently. The converter follows the file extension: HTML saved as `.txt` exits 0 with its markup passed through unchanged ([E1 receipt](../evidence/artifacts/token-e2e-ultracode-20260925/README.md#retained-failures-and-gaps)). Give the type with `-x html` or `-m text/html` ([`__main__.py`](https://github.com/microsoft/markitdown/blob/v0.1.8/packages/markitdown/src/markitdown/__main__.py#L65-L75)), then check that the output has no raw tags and holds the required facts. Install and qualify only the extras a workload needs ([optional dependencies](https://github.com/microsoft/markitdown/blob/v0.1.8/README.md#optional-dependencies)); one HTML success says nothing about other formats. The host runs the qualification prefix, and the bootstrap's `install_pin` form, which omits `--exclude-newer`, has no fresh-host equivalence check yet (receipt limitations). | -| `mcp-inspector` · `2.8.0` | `npm install --global --prefix "$STACK_HOME/tools/mcp-inspector-2.8.0" @modelcontextprotocol/inspector@2.8.0` | `mcp-inspector --cli --config "$PROJECT_ROOT/.mcp.json" --server socraticode --method tools/list --format json --stored-auth-only --cwd "$PROJECT_ROOT"`. Handshake/schema discovery only; follow with a selected tool call for functionality. Read the installed version with `npm ls --global --prefix "$STACK_HOME/tools/mcp-inspector-2.8.0" --depth=0`: the launcher has no version flag and forwards unknown arguments to the default web mode, so `mcp-inspector --version` starts the web UI with `--version` as a stdio server command (observed 2026-09-25 on 2.7.0; the 2.8.0 launcher file is byte-identical). Unless `MCP_AUTO_OPEN_ENABLED=false`, that web mode also opens a browser tab (on WSL, the Windows browser), which then shows `spawn --version ENOENT`; both client templates set it to `false` for agent commands (`resolveAutoOpen` in the 2.7.0 and 2.8.0 web builds). 2.8.0's web server turns its API token gate off only for `DANGEROUSLY_OMIT_AUTH` set to `true` or `1`; 2.7.0 turned it off for any non-empty value, including `false` and `0` ([PR #2390](https://github.com/modelcontextprotocol/inspector/pull/2390), measured in the receipt below). npm 11 reports the package's `postinstall` as not allowed; that script exits at once for a package installed under `node_modules`, so nothing is missing. 2.8.0's package license is `SEE LICENSE IN LICENSE`, which describes an MIT-to-Apache-2.0 relicensing transition. 2.8.0 replaced 2.7.0 on the NativeStack WSL2 host on 2026-09-26 after a matched comparison (`evidence/receipts/mcp-inspector-280-qualification-20260926.json`). | -| `mcporter` · `0.14.1` | `npm install --global --prefix "$STACK_HOME/tools/mcporter-0.14.1" mcporter@0.14.1` | `mcporter --config "$MCPORTER_CONFIG" list socraticode --brief --no-oauth`, then [local semantic search](#local-semantic-code-search) or [Context Mode](#retained-context-mode). Node >=24 is required, and so is `ps` on the PATH of whatever launches the daemon: 0.14.x finds `ps` through PATH, and without it the daemon cannot connect keep-alive servers and `mcporter daemon stop` refuses. Before switching versions, stop a running daemon once `mcporter daemon status --json` shows `activeCalls` 0 on every server; both versions speak daemon protocol 3, so an old daemon keeps serving new clients. 0.14.1 replaced 0.13.13 on the NativeStack WSL2 host on 2026-09-25 after a matched 37-step comparison (`evidence/receipts/mcporter-0141-qualification-20260925.json`). With `--stdio`, `--name` only names the ad-hoc server ([`ephemeral-flags.ts` L97-105](https://github.com/openclaw/mcporter/blob/v0.14.1/src/cli/ephemeral-flags.ts#L97-L105)); without `--server` or a `server.tool` selector, 0.14.1 takes the first positional token, such as `content=@file`, as the server ([`call-arguments.ts` L164-192](https://github.com/openclaw/mcporter/blob/v0.14.1/src/cli/call-arguments.ts#L164-L192)), so the argument never reaches the tool. Pass `--server NAME --tool TOOL` with `--name NAME`. A successful call is transport acceptance, not a token saving. | -| `openresearch` · `0.2.7` | Official [alphaXiv/OpenResearch v0.2.7](https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7), asset `openresearch-cli-x86_64-unknown-linux-musl.tar.xz`; [qualified archive and rollback](native-upgrades-20260921.md) | `orx --no-telemetry discover keyword 'agent memory' --published-after 2026-06-21 --published-before 2026-09-19 --limit 3`; retrieve only a selected result with `orx --no-telemetry paper "$PAPER_ID" --full`. Public literature access, not a model-quality ranking. | -| `playwright-cli` · `0.1.21` | `npm install --global --prefix "$STACK_HOME/tools/playwright-cli-0.1.21" @playwright/cli@0.1.21`; bundled Playwright `1.64.0-alpha-1789764292000` | Optional alternative to agent-browser. `playwright-cli --help` checks installation only; consult its native skill for the chosen browser workflow. Historical installation evidence is Windows-scoped, not a claimed Linux browser E2E. | +| `mcp-inspector` · `2.9.0` | `npm install --global --prefix "$STACK_HOME/tools/mcp-inspector-2.9.0" @modelcontextprotocol/inspector@2.9.0` | `mcp-inspector --cli --config "$PROJECT_ROOT/.mcp.json" --server socraticode --method tools/list --format json --stored-auth-only --cwd "$PROJECT_ROOT"`. Handshake/schema discovery only; follow with a selected tool call for functionality. Read the installed version with `npm ls --global --prefix "$STACK_HOME/tools/mcp-inspector-2.9.0" --depth=0`: the launcher has no version flag and forwards unknown arguments to the default web mode, so `mcp-inspector --version` starts the web UI with `--version` as a stdio server command (observed 2026-09-25 on 2.7.0; the 2.8.0 launcher file was byte-identical; the 2.9.0 help still exposes only mode/help flags). Unless `MCP_AUTO_OPEN_ENABLED=false`, that web mode also opens a browser tab (on WSL, the Windows browser), which then shows `spawn --version ENOENT`; both client templates set it to `false` for agent commands (`resolveAutoOpen` in the 2.7.0 and 2.8.0 web builds). 2.8.0's web server turns its API token gate off only for `DANGEROUSLY_OMIT_AUTH` set to `true` or `1`; 2.7.0 turned it off for any non-empty value, including `false` and `0` ([PR #2390](https://github.com/modelcontextprotocol/inspector/pull/2390), measured in the receipt below). npm 11 reports the package's `postinstall` as not allowed; that script exits at once for a package installed under `node_modules`, so nothing is missing. 2.9.0's package license is `SEE LICENSE IN LICENSE`, which describes an MIT-to-Apache-2.0 relicensing transition. 2.8.0 replaced 2.7.0 on the NativeStack WSL2 host on 2026-09-26 after a matched comparison (`evidence/receipts/mcp-inspector-280-qualification-20260926.json`). The [2.9.0 scratch qualification](../evidence/receipts/mcp-inspector-290-qualification-20261003.json) passed stdio tools/list, tools/call and an unknown-tool control with a temporary config and `--stored-auth-only`; the installed host prefix was not switched. OAuth storage migration and multi-profile behavior remain outside that qualification. | +| `mcporter` · `0.14.2` | `npm install --global --prefix "$STACK_HOME/tools/mcporter-0.14.2" mcporter@0.14.2` | `mcporter --config "$MCPORTER_CONFIG" list socraticode --brief --no-oauth`, then [local semantic search](#local-semantic-code-search) or [Context Mode](#retained-context-mode). Node >=24 is required, and so is `ps` on the PATH of whatever launches the daemon: 0.14.x finds `ps` through PATH, and without it the daemon cannot connect keep-alive servers and `mcporter daemon stop` refuses. Before switching versions, stop a running daemon once `mcporter daemon status --json` shows `activeCalls` 0 on every server; both versions speak daemon protocol 3, so an old daemon keeps serving new clients. 0.14.1 replaced 0.13.13 on the NativeStack WSL2 host on 2026-09-25 after a matched 37-step comparison (`evidence/receipts/mcporter-0141-qualification-20260925.json`). With `--stdio`, `--name` only names the ad-hoc server ([`ephemeral-flags.ts` L97-105](https://github.com/openclaw/mcporter/blob/v0.14.1/src/cli/ephemeral-flags.ts#L97-L105)); without `--server` or a `server.tool` selector, 0.14.1 takes the first positional token, such as `content=@file`, as the server ([`call-arguments.ts` L164-192](https://github.com/openclaw/mcporter/blob/v0.14.1/src/cli/call-arguments.ts#L164-L192)), so the argument never reaches the tool. Pass `--server NAME --tool TOOL` with `--name NAME`. A successful call is transport acceptance, not a token saving. The [0.14.2 scratch canary](../evidence/receipts/mcporter-0142-qualification-20261003.json) returned get_session_stats over ad-hoc stdio with no daemon; the host remains at its prior installed version. Keep-alive/daemon, OAuth and `serve` remain unqualified at 0.14.2. | +| `openresearch` · `0.2.15` | Official [alphaXiv/OpenResearch v0.2.15](https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15), asset `openresearch-cli-x86_64-unknown-linux-musl.tar.xz`; [qualified archive and rollback](native-upgrades-20260921.md) | `orx --no-telemetry discover keyword 'agent memory' --published-after 2026-06-21 --published-before 2026-09-19 --limit 3`; retrieve only a selected result with `orx --no-telemetry paper "$PAPER_ID" --full`. Public literature access, not a model-quality ranking. The [0.2.15 qualification](../evidence/receipts/openresearch-0215-qualification-20261003.json) covers archive integrity and isolated version output; discover/paper did not run. Retain 0.2.7 as the rollback source. | +| `playwright-cli` · `0.1.22` | `npm install --global --prefix "$STACK_HOME/tools/playwright-cli-0.1.22" @playwright/cli@0.1.22`; bundled Playwright `1.64.0-alpha-1790635538000` | Optional alternative to agent-browser. `playwright-cli --help` checks installation only; consult its native skill for the chosen browser workflow. Historical installation evidence is Windows-scoped, not a claimed Linux browser E2E. The [0.1.22 qualification](../evidence/receipts/playwright-cli-0122-qualification-20261003.json) covers version/help only; the existing-Chrome fixture was not repeated. Its help/version invocations may perform the upstream anonymous update check and cache write. | | `promptfoo` · `0.123.1` | `npm install --global --prefix "$STACK_HOME/tools/promptfoo-0.123.1" promptfoo@0.123.1` | `PROMPTFOO_DISABLE_TELEMETRY=1 promptfoo eval --config "$EVAL_CONFIG" --no-cache --no-table --no-progress-bar --no-share --no-write --output "$EVAL_RESULT"`. The retained native fixture used a local echo provider and passed two exact assertions with zero model tokens. Select the intended provider/data explicitly; no paid default is supplied. | | `qdrant` · `1.19.1` | Official [qdrant/qdrant v1.19.1](https://github.com/qdrant/qdrant/releases/tag/v1.19.1), archive/hash above; retain Apache-2.0 license | `qdrant --config-path "$QDRANT_CONFIG" --disable-telemetry`; [loopback service and RAG](#local-semantic-code-search). Persistent data paths are separate from the versioned binary. | | `qmd` · `2.8.3` | `npm install --global --prefix "$STACK_HOME/tools/qmd-2.8.3" @tobilu/qmd@2.8.3` | [Document workflow](#documents-and-selected-artifacts). BM25 `search` uses no model weights; native dependencies can still occupy substantial disk. `query`/`embed` are separate model-enabled choices; the MCP `query` tool expands plain text and reranks by default, so a lexical call passes typed `lex` searches with `rerank: false` ([document workflow](#documents-and-selected-artifacts)). | @@ -112,7 +112,7 @@ Commands assume the selected upstream executable is on the current shell's PATH. | `socraticode` · `1.15.0` | `npm install --global --prefix "$STACK_HOME/tools/socraticode-1.15.0" --ignore-scripts --before=2026-09-24T12:00:00Z socraticode@1.15.0` | [Local semantic code search](#local-semantic-code-search). Source `f6191f076a42405f0d5508139f3a8b505cfef93a`; AGPL-3.0-only with upstream commercial alternative. This profile uses external local services, not Docker or a cloud key. `--before` reproduces the qualified dependency tree; the package ships no shrinkwrap. The macOS pin stays 1.14.0 until a Mac qualifies 1.15.0. | | `toon` · `4.1.1` | `npm install --global --prefix "$STACK_HOME/tools/toon-4.1.1" @toon-format/cli@4.1.1` | `toon fixtures/records.json --stats -o "$STACK_HOME/output/records.toon"`; `toon "$STACK_HOME/output/records.toon" --decode --strict -o "$STACK_HOME/output/records.recovered.json"`. Compare decoded JSON values to the original, including numeric precision. Token estimates are not provider billing. Keep the original JSON unless the strict decode is value-equal: 4.1.1 emits a root string that starts with U+FEFF unquoted, and decoding strips it, which can change the value or its type (open [#339](https://github.com/toon-format/toon/issues/339)). Choose TOON by the exact encoded size and that equality. No record count is an upstream threshold: the tabular encoder takes any number of non-empty objects that share one key set, with columns of primitives or, recursively, of non-empty objects that share one key set; an empty object or an array-valued column falls back to list form ([`tabular.ts` L6-78](https://github.com/toon-format/toon/blob/v4.1.1/packages/toon/src/encode/tabular.ts#L6-L78)). | | `vllm` · `0.30.0` | `uv venv --python 3.13 "$STACK_HOME/tools/vllm-0.30.0"`; `uv pip install --python "$STACK_HOME/tools/vllm-0.30.0/bin/python" vllm==0.30.0` | [Pinned local GPU embedding service](#local-semantic-code-search). 0.30.0 carries the WSL pinned-memory fallback and serves the production embeddings on the NativeStack WSL2 host since 2026-09-25, qualified against 0.25.0 first (identical embeddings and code-index results; `evidence/receipts/vllm-030-switch-20260925.json`). 0.29.0 failed GPU startup under WSL with unavailable UVA; keep 0.25.0 installed for rollback until the new pin has run a while. | -| `worktrunk` · `0.79.0` | Official [max-sixty/worktrunk v0.79.0](https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0); [qualified archive and rollback](native-upgrades-20260921.md) | `wt list --format json`; for an actual owned writing task, `wt switch --create "$BRANCH" --base "$BASE_REF" --no-cd --no-hooks --format json`. The retained disposable lifecycle verified selection and `wt remove "$BRANCH" --foreground --no-hooks --format json`, leaving only the original worktree. | +| `worktrunk` · `0.80.0` | Official [max-sixty/worktrunk v0.80.0](https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0); [qualified archive and rollback](native-upgrades-20260921.md) | `wt list --format json`; for an actual owned writing task, `wt switch --create "$BRANCH" --base "$BASE_REF" --no-cd --no-hooks --format json`. The retained 0.79.0 disposable lifecycle verified selection and `wt remove "$BRANCH" --foreground --no-hooks --format json`, leaving only the original worktree. The [0.80.0 scratch qualification](../evidence/receipts/worktrunk-0800-qualification-20261003.json) ran `wt list` in a synthetic repository only; retain 0.79.0 for rollback. | ## Context Hub opt-out @@ -519,8 +519,8 @@ rendered entry would name a missing file (changed after `v2026.09.26.2`): ```sh eco="${ECO_INSTALL_ROOT:-$HOME/.local/share/codex-ecosystem}" UV_TOOL_DIR="$eco/python-tools" UV_TOOL_BIN_DIR="$eco/bin" \ - uv tool install --python 3.13 jcodemunch-mcp==1.108.319 -"$eco/bin/jcodemunch-mcp" --version # jcodemunch-mcp 1.108.319 + uv tool install --python 3.13 jcodemunch-mcp==1.108.327 +"$eco/bin/jcodemunch-mcp" --version # jcodemunch-mcp 1.108.327 ``` The retained upstream license is **Dual-Use License 1.1**; the bounded local diff --git a/scripts/native_token_ci.py b/scripts/native_token_ci.py index b93661203..5e29b6683 100644 --- a/scripts/native_token_ci.py +++ b/scripts/native_token_ci.py @@ -57,9 +57,9 @@ # and the commit is its identity (adoption/pins-linux-x86_64.json, kind uv-tool-from-git). SERENA_COMMIT = "c6fbd1c5932df2494ffa0020af5a9fbe80b82143" PINS = {"rtk": "0.50.0", "qmd": "2.8.3", "repomix": "1.18.1", "toon": "4.1.1", - "mcporter": "0.14.1", "markitdown": "0.1.8", "ast-grep": "0.45.3", + "mcporter": "0.14.2", "markitdown": "0.1.8", "ast-grep": "0.45.3", "ccusage": "20.0.26", "codebase-memory-mcp": "0.11.0", "headroom": "0.37.0", - "jcodemunch-mcp": "1.108.319", "context-mode": "1.0.169", + "jcodemunch-mcp": "1.108.327", "context-mode": "1.0.169", "serena": f"2.0.0.dev0 @ {SERENA_COMMIT}", "ai-memory": "2.4.1", "context-hub": "0.1.4", "agentsview": "0.43.0"} # The Linux adoption pins, checked against PINS for every tool they list (version, and Serena's diff --git a/tests/test_adoption_bootstrap_macos.py b/tests/test_adoption_bootstrap_macos.py index cc3973b30..8033270ad 100644 --- a/tests/test_adoption_bootstrap_macos.py +++ b/tests/test_adoption_bootstrap_macos.py @@ -258,7 +258,7 @@ def test_urls_are_https_and_name_a_darwin_arm64_or_npm_asset(self): # exactly, so a move on either side fails here until this table is reviewed again. MAC_PIN_LAGS_LINUX = { "ai-memory": ("2.3.2", "2.4.1", "evidence/receipts/ai-memory-241-qualification-20260925.json"), - "mcporter": ("0.13.13", "0.14.1", "evidence/receipts/mcporter-0141-qualification-20260925.json"), + "mcporter": ("0.13.13", "0.14.2", "evidence/receipts/mcporter-0142-qualification-20261003.json"), # Linux moved to 0.159.3 on 2026-10-01; the Mac keeps 0.155.1 until its own # qualification (the receipts' limitations). "codex": ("0.155.1", "0.159.3", "evidence/receipts/codex-01593-native-queue-20261001.json"), diff --git a/tests/test_adoption_docs_consistency.py b/tests/test_adoption_docs_consistency.py index 6815d54b8..d3cab97cd 100644 --- a/tests/test_adoption_docs_consistency.py +++ b/tests/test_adoption_docs_consistency.py @@ -614,7 +614,7 @@ def test_the_checks_reject_drift(self): "renamed plugin key": (self.revision_errors, bootstrap.replace('"claude-hud@claude-hud":', '"claude-hud@hud":'), recipe), "bootstrap command": (self.command_errors, - bootstrap.replace("claude-hud@v0.8.0 --scope user", "claude-hud@v0.7.0 --scope user"), recipe), + bootstrap.replace("claude-hud@v0.10.0 --scope user", "claude-hud@v0.7.0 --scope user"), recipe), "missing install": (self.command_errors, bootstrap.replace("claude plugin install codex@openai-codex --scope user --json\n", ""), recipe), } @@ -732,7 +732,7 @@ def test_no_documented_claude_marketplace_add_passes_a_commit(self): def test_the_check_rejects_a_commit_ref_and_accepts_tags_and_no_ref(self): self.assertEqual(len(self.errors(f"`claude plugin marketplace add mksglu/context-mode@{'a' * 40} --scope user`", "mutant")), 1) self.assertEqual(len(self.errors("claude plugin marketplace add owner/repo@6f0cc68 --scope user", "mutant")), 1) - self.assertEqual(self.errors("claude plugin marketplace add jarrodwatts/claude-hud@v0.8.0 --scope user\n" + self.assertEqual(self.errors("claude plugin marketplace add jarrodwatts/claude-hud@v0.10.0 --scope user\n" "claude plugin marketplace add mksglu/context-mode --scope user\n" "codex plugin marketplace add mksglu/context-mode --ref " + "a" * 40, "ok"), []) diff --git a/tests/test_render_config.py b/tests/test_render_config.py index f44d2a9d8..4eeea5a79 100644 --- a/tests/test_render_config.py +++ b/tests/test_render_config.py @@ -80,6 +80,49 @@ def test_templates_round_trip_with_string_template_substitute(self): if name.endswith(".json"): json.loads(rendered) # still valid JSON once rendered + def test_hud_statusline_requires_an_installed_entry(self): + # Upstream claude-hud v0.10.0 scripts/statusline.mjs checks that the + # selected entry exists. A missing plugin must never fall back to the + # open project's dist/index.js during installation or rollback. + ecosystem = self.tmp_path / "ecosystem" + node = ecosystem / "bin" / "node" + node.parent.mkdir(parents=True) + node.write_text('#!/bin/sh\nprintf "%s\\n" "$1"\n') + node.chmod(0o755) + workspace = self.tmp_path / "workspace" + (workspace / "dist").mkdir(parents=True) + (workspace / "dist" / "index.js").write_text("project code must not run\n") + config = self.tmp_path / "claude" + values = {**FIXTURE_VALUES, "ECO_ROOT": str(ecosystem)} + settings = json.loads(string.Template( + (TEMPLATES / "claude.settings.template.json").read_text() + ).substitute(values)) + env = {**os.environ, "CLAUDE_CONFIG_DIR": str(config), "COLUMNS": "120"} + + def invoke(): + return subprocess.run( + ["bash", "-c", settings["statusLine"]["command"]], + cwd=workspace, env=env, stdin=subprocess.DEVNULL, + capture_output=True, text=True, check=False, + ) + + with self.subTest(plugin="absent"): + result = invoke() + self.assertEqual(result.returncode, 0, result.stderr) + self.assertEqual(result.stdout, "") + plugin = config / "plugins" / "cache" / "claude-hud" / "claude-hud" / "0.10.0" + (plugin / "dist").mkdir(parents=True) + with self.subTest(plugin="missing_entry"): + result = invoke() + self.assertEqual(result.returncode, 0, result.stderr) + self.assertEqual(result.stdout, "") + entry = plugin / "dist" / "index.js" + entry.write_text("installed plugin fixture\n") + with self.subTest(plugin="installed"): + result = invoke() + self.assertEqual(result.returncode, 0, result.stderr) + self.assertEqual(result.stdout, str(entry) + "\n") + def test_versioned_tool_paths_follow_the_linux_pins(self): # A pinned install's own path in a template (${ECO_ROOT}/tools/-/) moves with that pin. # The templates carry the WSL2 workstation's values, so the Linux pins file is the reference. diff --git a/tools/token-report/README.md b/tools/token-report/README.md index 7f81749d7..7a9c515b7 100644 --- a/tools/token-report/README.md +++ b/tools/token-report/README.md @@ -30,9 +30,9 @@ gh release download v0.50.0 --repo rtk-ai/rtk \ ) uv venv "$REPORT_TOOLS/headroom-0.37.0" uv pip install --python "$REPORT_TOOLS/headroom-0.37.0/bin/python" headroom-ai==0.37.0 -uv tool install jcodemunch-mcp==1.108.319 -npm install --prefix "$REPORT_TOOLS/mcporter-0.14.1" mcporter@0.14.1 -export PATH="$REPORT_TOOLS/rtk-0.50.0:$REPORT_TOOLS/headroom-0.37.0/bin:$REPORT_TOOLS/mcporter-0.14.1/node_modules/.bin:$HOME/.local/bin:$PATH" +uv tool install jcodemunch-mcp==1.108.327 +npm install --prefix "$REPORT_TOOLS/mcporter-0.14.2" mcporter@0.14.2 +export PATH="$REPORT_TOOLS/rtk-0.50.0:$REPORT_TOOLS/headroom-0.37.0/bin:$REPORT_TOOLS/mcporter-0.14.2/node_modules/.bin:$HOME/.local/bin:$PATH" ``` The checksum command must report the selected archive as `OK`. Other operating From ea10c096e8fbc59cf528f9fb600d8b0b261c288b Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 02:23:25 -0400 Subject: [PATCH 02/50] Register the W1 pin-move files (hot-file protocol, last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 297 ++++++++++++++++++++++++++++++++++------ 1 file changed, 253 insertions(+), 44 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index d2e226e2a..473a70e0e 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -3900,6 +3900,155 @@ "The earlier final-native-scan-record.json remains historical output for its bound earlier workflow/config. completion-native-record.json records the strengthened partition, shortened 2026-10-17 expiry, fresh active/expired controls and 161-test run; neither is an unchanged upstream test suite. The first completion validation failed on a stale hash row for an already-empty output and is retained, with the corrected diagnosis in publication-correction.md." ], "path": "evidence/receipts/wsl-retrieval-retirement-20261003.json" + }, + { + "id": "jcodemunch-1108327-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "jcodemunch-mcp" + ], + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", + "limitations": [ + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" + }, + { + "id": "playwright-cli-0122-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "playwright-cli" + ], + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "limitations": [ + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + }, + { + "id": "openresearch-0215-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "openresearch" + ], + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "limitations": [ + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + }, + { + "id": "mcp-inspector-290-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "mcp-inspector" + ], + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "limitations": [ + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + }, + { + "id": "claude-hud-0100-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-hud" + ], + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "limitations": [ + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + }, + { + "id": "otelcol-contrib-0162-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "opentelemetry-collector-contrib" + ], + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "limitations": [ + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + }, + { + "id": "worktrunk-0800-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "worktrunk" + ], + "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", + "limitations": [ + "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", + "The host installation and rollback launcher were not switched.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" + }, + { + "id": "mcporter-0142-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "mcporter" + ], + "claim": "The recorded version command printed \"0.14.2\" (exit 0). The new ad-hoc stdio order/get_session_stats canary returned \"visible_tools\": 6, \"catalog_tools\": 94 and \"session_tokens_saved\": 0 (exit 0).", + "limitations": [ + "The original documented host-config smoke is \"NOT RUN\"; the accepted canary is a fresh ad-hoc stdio call, with no daemon.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + }, + { + "id": "syft-1540-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "syft" + ], + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "limitations": [ + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/syft-1540-qualification-20261003.json" } ], "files": [ @@ -3985,7 +4134,7 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "3c44cc475010380ab18985ce2715bcd9d1290e2ced7c161d80c4d8c73b816f46", + "sha256": "a72122cf9dd28620bdaab95594ee6a8eaad65bae8947bed83c8c6984907aa245", "bytes": 23346 }, { @@ -4020,7 +4169,7 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "6e3212ba3134a62b27bc4d24129a3054a0f94263c0c0f148af94456152fd00c1", + "sha256": "e6341c41b5bcc49971dc490a42b3c16f396b35d432cee5e443d2f5a20eec6cf4", "bytes": 19723 }, { @@ -4035,8 +4184,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "a752c1be5c7e73642085b3fd91f3e97c4b42167dbe5b3452b2bd1191652e9c24", - "bytes": 7411 + "sha256": "4688fbcd032ef2f74e72d61945e1f2ab3f707f53e04a1ce8c296b32f8ef504ec", + "bytes": 7424 }, { "path": ".github/workflows/token-report.yml", @@ -4180,8 +4329,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "bc342f0e98ae95e3128b58f9e4780d594de38b1753fb9af28799a353a3f7961c", - "bytes": 63199 + "sha256": "1718c5b0acd021df75308ca42aa35cea8039702d2f638842a47cf62c87938f68", + "bytes": 63692 }, { "path": "adoption/credential-inventory.json", @@ -4325,12 +4474,12 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "0dd40eea9c39e1e61ca73c9e8f55cfe0e92106d0af5cd1933318f3bf7a3a31cf", - "bytes": 31759 + "sha256": "5afb235eaafc76c1348809329800a6414cff1bc797e119e5ff5e0297ce04c402", + "bytes": 32270 }, { "path": "adoption/pins-macos-arm64.json", - "sha256": "1d693b66002e8931af2370fc9da919f667bfbf3a1a22ddd54bdd2c1d81cf19e4", + "sha256": "58cce2b4581117c729fa60126b1cef24d2c8cf2fa19950bbef669b8881f2311c", "bytes": 43700 }, { @@ -4340,8 +4489,8 @@ }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "149b05c61320363dca3264f88962019fcd51523dbbc78f1be818a6df9fbd3cba", - "bytes": 25956 + "sha256": "f3298bc8b8a105a0179be003fd916282e2db2009cee22a9536ed097e706023db", + "bytes": 26276 }, { "path": "adoption/platforms/macos-arm64.md", @@ -4395,8 +4544,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "e8c900df3e4858098e0fd64687b30831fe1f7d402f7c201cdd4a6ff5f5e7bd35", - "bytes": 13034 + "sha256": "34af3ebea418d513974798d99fda7ce4c7bf15f324d72e95d3dcbaafe77b0f0c", + "bytes": 13112 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -9716,8 +9865,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "cafdde5e9aabfbe9d61bc138e4201596e2b0436f978b4dd8a8039eaed70dcd32", - "bytes": 483389 + "sha256": "57d619d6904e3f80148e81245cf7b4180c581c4680acc26e4f970be6c9f94e95", + "bytes": 491131 }, { "path": "blueprints/trials-20260926/README.md", @@ -14941,7 +15090,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "ae37c318ba29ed51c3845db7a26db847f185f656310915be7846f7d986483a7f", + "sha256": "01edff80c79284ae799bfcd8e8b165bb9be9ac9326ff8e2b3ec78a32dee389d6", "bytes": 34731 }, { @@ -15056,8 +15205,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "3cb76b4e7cd3d1d122f088bcf5598d5aa51d9699497d8caddf8e35d5f55c2778", - "bytes": 287704 + "sha256": "883e38a6e70bd5ac44f327bc7ac8beb56c2bb252c41ebd361de85031a93c63ab", + "bytes": 287705 }, { "path": "catalogs/landscape/research-state.json", @@ -15066,8 +15215,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "2217a36d560e887b651aaf57028580175e1644c45134c6ef3d8208913998b02c", - "bytes": 251264 + "sha256": "58fce711495355032ff360a018099a5bcc9f4fac5d89ae0a90e17f07c2e16370", + "bytes": 286129 }, { "path": "catalogs/landscape/us-equities.json", @@ -15526,8 +15675,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "6a86756198376a5ad58c8a64c21ba4fe070ef7d780e0f1e4dfc845f8c76c5836", - "bytes": 56050 + "sha256": "4580fc567fb070eedb63ec252cb76512af14c604ba7ba3e33f430853954658f8", + "bytes": 56365 }, { "path": "docs/comparison-progress-20260922.md", @@ -15804,6 +15953,11 @@ "sha256": "f3234c014072e6a567a42fcc989c7e8bf716823f52c96a633bbe76e1c8d10e26", "bytes": 16881 }, + { + "path": "docs/decisions/2026-10-03-currency-wave-w1.md", + "sha256": "104573cffd9f10cd25cf3069044ceffc3f167e39b8ad86dee916b9bf019c55b7", + "bytes": 14492 + }, { "path": "docs/direct-results.md", "sha256": "12a511fee11f22c90b9b622701d5485be9c8247167102b5768d694244f939a5b", @@ -15886,7 +16040,7 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "5a20461ffdd76482f30e8beb0f5ea670ccc53dc656931c5de91ec2dd2c80cea8", + "sha256": "defe70a1d1e4bb7acb094a1fd339d68931a120c25ec2f984d1e2a6251d087246", "bytes": 39778 }, { @@ -15926,7 +16080,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "595a97353798afdbaa5153db1393231a0ad0ac38d045e5f3bf1fa37be2bfbe14", + "sha256": "98318d7695677775a3c446923d3392385704b87d7dc4743f41f5af8a500c50ea", "bytes": 96941 }, { @@ -16056,8 +16210,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "245c7942ca34c078ddb8adc0d8a845efee8f42ea35e0fc4709175a14a9d79abb", - "bytes": 18483 + "sha256": "48ced30b2922fe638af083fd873724c39f062b2903f79aaf1cdc8f51acfd759e", + "bytes": 18484 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -16166,8 +16320,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "b43af443e3ec7dd81efe16f7adc6ead8fe99a4748bc59a541f8ca8696799b80e", - "bytes": 587560 + "sha256": "d27e356ba812e5983a83021f833a9f60c3fe860e307871b0a571054243c1a420", + "bytes": 587562 }, { "path": "docs/token-efficiency-stack.md", @@ -16186,7 +16340,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "caf81fa3aa0fa3e662e1807869331dc024ca787233a4844a0eca3e92e4ea46d6", + "sha256": "2b775aac29cd7967924baeb874bccc35e7804c728792489ea340b24743a51a09", "bytes": 90785 }, { @@ -17779,6 +17933,11 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", + "sha256": "2c6b027eab8daac79c7d9a9699b3f9242c45c12ed6a36072099d7fce46461062", + "bytes": 25082 + }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -47809,6 +47968,11 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, + { + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", + "sha256": "c7e09ae0997038440c5e987f182e6df3a442bcd24893247e78b98bb1747dbbe0", + "bytes": 10041 + }, { "path": "evidence/receipts/claude-max-default-effort-20260929.json", "sha256": "d6b3ee54f8620e28b029fe0a45f4139a57b5ae03a49c3620121ba420e49bac12", @@ -47999,6 +48163,11 @@ "sha256": "0d32534357501c011298420c07161c59940929cabd00a9b71d5d7817126f88c9", "bytes": 17126 }, + { + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", + "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", + "bytes": 8187 + }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -48024,11 +48193,21 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, + { + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", + "sha256": "e0e4f8e4a520feed7063ff459a043546085853060f5104c5aa827ec72bb3bea7", + "bytes": 9678 + }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, + { + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", + "sha256": "c315511e5a9ae286cd633492fecb0aabc4ae6ba1a64b7f75d27d3f49e5de4c7d", + "bytes": 7976 + }, { "path": "evidence/receipts/memory-landscape-20260921.json", "sha256": "6a31608a721b3561ebf5daf59d0363cda7ef563777f47e3e2f64e16fca24a948", @@ -48279,6 +48458,11 @@ "sha256": "0f6a0c171872cde9689d9d5f2ff60b881ae2328b96769dc78613f625cf9d1017", "bytes": 16128 }, + { + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", + "sha256": "b9fa82bdf1c29918712d946860176fb16060ca54a748d594ef930c0f55a9779a", + "bytes": 7129 + }, { "path": "evidence/receipts/osv-oauthlib-pyjwt-reachability-20260929.json", "sha256": "f89e3a45ac10d44d00c268cc617c1fb7b5f77636fb1150af3c9e7bf4b26441ef", @@ -48299,11 +48483,21 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, + { + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", + "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", + "bytes": 6732 + }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, + { + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", + "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", + "bytes": 7731 + }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -48364,6 +48558,11 @@ "sha256": "24be77b12057c9cc7d29d0edbd0ba8af5005ceff82c2f1b1ffe34e5c424d1ab2", "bytes": 4906 }, + { + "path": "evidence/receipts/syft-1540-qualification-20261003.json", + "sha256": "d47ea459b15e9bc3b10f06e60bcbfd1a24d6509af2a28d6120351078c2424e4f", + "bytes": 7907 + }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -48439,6 +48638,11 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, + { + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", + "sha256": "2963fee5cebb9f3d0dd6bb220bfcc5b29e0764e1fba245e6540009930de95702", + "bytes": 6616 + }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -48801,17 +49005,17 @@ }, { "path": "manifests/landscape.json", - "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", + "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "b10693331a67883d86a47ec40b6345f5f48d80aa287a991e20df4b40355ed72a", - "bytes": 100006 + "sha256": "824878f6c49975e564590ef3a0d760b4ec14ea43708cec6947b745ab64f914c6", + "bytes": 103602 }, { "path": "observability/README.md", - "sha256": "c4fd4a7d69704bd51edf9e1eff5e14c96a5eb9938fdd55f18aaa99ec47b30d94", + "sha256": "0c9395106ed32420ea5b26cbd2d7c2f30218c6850c7290680643dedb9292d288", "bytes": 15457 }, { @@ -48911,8 +49115,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "6e476fbf535971627466ec7b39b99b1952d938464ab894c231d59e7c0e2f0f55", - "bytes": 41579 + "sha256": "3aae043c4b175ef1a9de9774033c2e178deacac3f9df972a51ac3bbf3654f5e1", + "bytes": 41808 }, { "path": "observability/collector/claude-settings.json.example", @@ -49069,6 +49273,11 @@ "sha256": "ec68f05a9dea2c8d3e37888b2928760bd085ce1567bcdd09145e82a6196fb68b", "bytes": 29140 }, + { + "path": "observability/paper-trading-live/collector-paper-trading.yaml", + "sha256": "f4af2a8c0cfbf72ec1a3895d36d3a1ea24fd68bd17295f035349d937aeb5fd95", + "bytes": 2942 + }, { "path": "observability/receipt.json", "sha256": "22a7c2d84e16af7dcb2e0fe911845754a7585fc2ce06fb13adec3aee693030b4", @@ -49086,8 +49295,8 @@ }, { "path": "recipes/README.md", - "sha256": "2961a95fe20b829b92a9a01812bf6aa240955378674d1ee7afc8e4df727cc041", - "bytes": 124550 + "sha256": "9b2da5a65fd73850c4774a3f075f00070885351edd38b44779ae3e9bdc0a7eda", + "bytes": 126428 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -49206,7 +49415,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "df9d794668e8942a053cc3c76f2cb5e063c55671f286abdb14788b3dde04737b", + "sha256": "11277c5a212ceaabfffc811fda1f6d41ab781949585ab4b0da7168bd9778d44c", "bytes": 114715 }, { @@ -49536,7 +49745,7 @@ }, { "path": "tests/test_adoption_bootstrap_macos.py", - "sha256": "8dd9d881d0ae3472eddf91c9be6da13a5ee891983fe70367dce22d798ae3cfb7", + "sha256": "5fe82766d90ffeab29262eb776ed7b43f599b59a88d755e630cb91c116a77a8a", "bytes": 228097 }, { @@ -49546,8 +49755,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "ad1cde3c41739de6fc54af2eee6670ff42c7654628731fd150b3f83d5740a1f1", - "bytes": 52212 + "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", + "bytes": 52214 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -50181,8 +50390,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "6f1ecd5731cb676c0b50ee54a15375eeea4858742b460723046211b756ea3448", - "bytes": 43257 + "sha256": "34e49d029c39e916c7256361bad8226acdec2b3ea47a445285bc572f93c7e122", + "bytes": 45368 }, { "path": "tests/test_research_efficiency.py", @@ -50926,7 +51135,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "d1f538abf502fc3575991144ea15f72fc93eae0fd67393fb5edc8be007f28d87", + "sha256": "c389f35a9dde4b18f6e52a6505b527546cdf97d40ab022d2294848a7531f9d1a", "bytes": 25833 }, { From 3f3638bfc25deb90b3337d7ce577f34eaf78b243 Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 03:37:17 -0400 Subject: [PATCH 03/50] W1 review round: collector test selectors, receipt paths, claude-hud guard, recipe notes; fix the export-isolation path check Review findings on ea10c096 (Opus approve with minors; GPT-6.1 Sol repair): - Native Collector tests now select the otelcol-contrib version from the manifest pin instead of hard-coding 0.161.0 (35 native tests run on 0.162.0, zero skips). - Receipts keep distinct path placeholders and cite stack rows by JSON pointer, not base line numbers. - The claude-hud template guard picks the newest installation whose dist/index.js exists, as upstream's launcher does (jarrodwatts/claude-hud@75683c6 scripts/statusline.mjs:30-39); its regression failed before the fix. - docs/foundation-stack.md chronology, recipe documents carrying the moved versions, hosted-only limitations and an owner handoff for adoption/new-wsl-profile.json's mixed versions in the decision record. Hosted validate at ea10c096 failed tests.test_blind_checkout RealExportIsolationTests with ENAMETOOLONG: tools/sota-convergence/export_isolation_check.py prose_exposure probed every space-free JSON string value with Path.is_file(), which raises on Python 3.13 for a value longer than NAME_MAX (a receipt's one-line JSON excerpt). os.path.isfile/isdir answer False for such values, as blind_checkout's own os.path.lexists check already does; a regression test fails before the fix and passes after; tests.test_blind_checkout 41 tests OK. Co-Authored-By: Claude Opus 5.5 --- .../templates/claude.settings.template.json | 2 +- docs/decisions/2026-10-03-currency-wave-w1.md | 113 +++++++- docs/foundation-stack.md | 2 +- .../native-checks.json | 2 +- .../review-repair-checks.json | 267 ++++++++++++++++++ ...laude-hud-0100-qualification-20261003.json | 11 +- ...-inspector-290-qualification-20261003.json | 2 +- .../mcporter-0142-qualification-20261003.json | 11 +- ...nresearch-0215-qualification-20261003.json | 7 +- .../syft-1540-qualification-20261003.json | 2 +- ...worktrunk-0800-qualification-20261003.json | 2 +- observability/collector/README.md | 13 +- .../collector-paper-trading.yaml | 2 +- recipes/native-upgrades-20260921.md | 14 + tests/test_blind_checkout.py | 19 ++ tests/test_observability_run_correlation.py | 9 +- tests/test_observability_tool_names.py | 12 +- tests/test_observability_writer_identity.py | 9 +- tests/test_render_config.py | 9 +- tests/test_sdk_usage_scope.py | 2 +- .../export_isolation_check.py | 8 +- 21 files changed, 473 insertions(+), 45 deletions(-) create mode 100644 evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json diff --git a/adoption/templates/claude.settings.template.json b/adoption/templates/claude.settings.template.json index 03bf55b08..ff1753709 100644 --- a/adoption/templates/claude.settings.template.json +++ b/adoption/templates/claude.settings.template.json @@ -324,7 +324,7 @@ "workflowSizeGuideline": "unrestricted", "statusLine": { "type": "command", - "command": "bash -c 'cols=$${COLUMNS:-}; case \"$$cols\" in \"\"|*[!0-9]*) cols=$$(stty size 2>/dev/null 4 ? cols - 4 : 1 )); plugin_dir=$$(ls -d \"$${CLAUDE_CONFIG_DIR:-$$HOME/.claude}\"/plugins/cache/*/claude-hud/*/ 2>/dev/null | awk -F/ '\"'\"'{ print $$(NF-1) \"\\t\" $$(0) }'\"'\"' | grep -E '\"'\"'^[0-9]+\\.[0-9]+\\.[0-9]+[[:space:]]'\"'\"' | sort -t. -k1,1n -k2,2n -k3,3n -k4,4n | tail -1 | cut -f2-); [ -n \"$$plugin_dir\" ] && [ -f \"$${plugin_dir}dist/index.js\" ] || exit 0; exec \"${ECO_ROOT}/bin/node\" \"$${plugin_dir}dist/index.js\"'", + "command": "bash -c 'cols=$${COLUMNS:-}; case \"$$cols\" in \"\"|*[!0-9]*) cols=$$(stty size 2>/dev/null 4 ? cols - 4 : 1 )); plugin_dir=$$(ls -d \"$${CLAUDE_CONFIG_DIR:-$$HOME/.claude}\"/plugins/cache/*/claude-hud/*/ 2>/dev/null | while IFS= read -r candidate_dir; do [ -f \"$${candidate_dir}dist/index.js\" ] && printf \"%s\\n\" \"$$candidate_dir\"; done | awk -F/ '\"'\"'{ print $$(NF-1) \"\\t\" $$(0) }'\"'\"' | grep -E '\"'\"'^[0-9]+\\.[0-9]+\\.[0-9]+[[:space:]]'\"'\"' | sort -t. -k1,1n -k2,2n -k3,3n -k4,4n | tail -1 | cut -f2-); [ -n \"$$plugin_dir\" ] && [ -f \"$${plugin_dir}dist/index.js\" ] || exit 0; exec \"${ECO_ROOT}/bin/node\" \"$${plugin_dir}dist/index.js\"'", "refreshInterval": 5 }, "enabledPlugins": { diff --git a/docs/decisions/2026-10-03-currency-wave-w1.md b/docs/decisions/2026-10-03-currency-wave-w1.md index 09a297839..de3a7581d 100644 --- a/docs/decisions/2026-10-03-currency-wave-w1.md +++ b/docs/decisions/2026-10-03-currency-wave-w1.md @@ -71,12 +71,14 @@ not establish signature verification or SPDX output on the new release. ## HUD integration and M14 amendment -The template now checks that the selected plugin directory and entry file exist -before invoking Node. This adopts the entry-existence check in upstream +The template now filters cached plugin directories for `dist/index.js` before +sorting versions and invoking Node. It selects the newest complete installation, +including an older complete version beside an incomplete newer directory, as in upstream [scripts/statusline.mjs at the selected commit](https://github.com/jarrodwatts/claude-hud/blob/75683c6de1ac07f6bbef00d739001679dba0740c/scripts/statusline.mjs#L35). The previous command could resolve a missing plugin to the open project's `dist/index.js`. The regression test invokes the rendered command with an -instrumented Node fixture for absent plugin, missing entry and installed entry +instrumented Node fixture for absent plugin, missing entry, incomplete newer +installation beside a complete older version, and newest installed entry conditions; it does not execute arbitrary project code. The same test against the original unguarded template failed both missing-plugin conditions (exit 1, two subtest failures), and passed against the guarded template (exit 0). Both @@ -151,10 +153,41 @@ requalification units, beads regression repair and AgentsView recipe rewire are the next candidate classes; this bounded wave does not establish complete ecosystem saturation or a model-quality improvement. -Off-limit configuration-owner files, all `blueprints/us-equities/` files, -historical receipts, prior decisions, dated catalogs and sweep manifests retain -their bytes. Reports may display the intentional difference between current -stack pins and older sealed landscape winners. +Hosted evidence remains separate: W1 exercised jCodeMunch 1.108.327 through +`get_session_stats`; it did not repeat `index_folder`, `search_symbols` or +`get_symbol_source` against a frozen source oracle. The coordinator must retain +the `native-token-e2e` result for the committed repair head to close that gap. +Syft 1.54.0's first hosted `sbom-vuln` run against the reproduced +`nautilus_trader` environment also remains a hosted qualification gap; the W1 +inventory comparison covered the equity-worker SDK. `publish-catalog` runs on +dispatch or a `v*` tag, so PR CI does not exercise its updated Syft installation +path. Its next dispatch/tag result must be retained as that path's first +execution. This repair neither dispatches those workflows nor infers their +results from local structural checks. + +Off-limit configuration-owner files, including `adoption/new-wsl-profile.json`, +all `blueprints/us-equities/` files, historical receipts, prior decisions, +dated catalogs and sweep manifests retain their bytes. The trading-owned +`observability/paper-trading-live/collector-paper-trading.yaml` comment is +restored to its base 0.161.0 text in R642. Reports may display the intentional +difference between current stack pins and older sealed landscape winners. + +Owner handoffs for the next unit: + +- The configuration owner must reconcile `adoption/new-wsl-profile.json`: + it carries Inspector 2.9.0, Worktrunk 0.80.0 and Collector 0.162.0, while + mcporter 0.14.1, playwright-cli 0.1.21 and Syft 1.52.0 remain older than + the W1 selections. This file is outside the repair's edit scope. +- The trading owner must update the canonical + `blueprints/us-equities/supply-chain/README.md` recipe for Syft 1.54.0, + including its 1.52.0 archive/hash instructions, using the W1 receipt's + publisher checksum URL and `54a87372498168b2d033e876fd41fa4e8035b872699e525a57046e1f2f09c860`. + The trading owner also owns the Collector version comment in + `observability/paper-trading-live/collector-paper-trading.yaml`. +- The coordinator supplies the required CI buckets, macOS result, hosted + secret scans, PR labels/body and any required trading acknowledgement for + the committed repair head. No commit, push or PR metadata mutation is part + of this repair. ## Supplemental test environment correction @@ -165,11 +198,67 @@ against the inherited home npm cache. A first scratch-cache attempt also used path with exit 1. Distinct empty scratch user/global files and a writable cache restored native packaging (exit 0). This follows the distinct npm config paths in the W1 installation records, preserves both failed attempts and does not -change host configuration or repository test behavior. Both affected native -npm fixture classes then passed (25 tests), and the original four-module -supplemental suite passed with the isolated configuration; its complete -returned test totals are retained in native-checks.json. The required build -contract checks passed with their original command lines. +change host configuration or repository test behavior. The retained +four-module supplemental run reports 253 tests and `OK (skipped=33)` with +the isolated configuration. Its complete returned totals are retained in +native-checks.json; no separate 25-test result was retained, and the earlier +claim that every original build-contract check passed lacked retained command +output. Those unsupported specifics are withdrawn. R642's new checks retain +their own command lines, exit codes and returned output in +[review-repair-checks.json](../../evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json). + +## R642 bounded repair and completeness critic + +This review repair serves the same foundation maintenance and north-star +research action as W1. Search-first selected the existing repository unittest +and validation commands. No new installer, dependency or acceptance runner was +needed. The installed Collector's help/version and the pinned HUD launcher +source were checked before changing their integration paths. The alternative +of leaving tests bound to 0.161.0 would continue to skip the current installed +pin; hard-coding 0.162.0 would repeat the drift on the next move. The three +current Collector selectors now read the component version from +`manifests/stack.json`; `OTELCOL_TEST_BIN` permits a scratch binary without a +host installation. SDK usage tests inherit that same selector. + +The selector variant search started with the exact stale tool-names selector, +then widened the same path pattern to the repository root and checked skip +messages. It found the run-correlation and writer-identity selectors and the +inherited SDK guard. The 0.161.0 fake binary in +`tests/test_observability_writer_identity_host.py` belongs to a copied, dated +host-apply fixture, not the current native Collector pipeline, and is retained. +Source review and historical receipt citations likewise keep their dates. + +Receipt command paths were restored from the hashed W1 packet before +sanitization. Distinct npm user/global files, XDG directories and HUD config +paths now survive as distinct scratch placeholders. Stack command citations +use a component id and the component-relative JSON pointer `/commands`. +Each archive/package receipt names its primary published digest URL; HUD +explicitly has no publisher archive checksum and instead names its exact +upstream source-tree integrity URL. The earlier review's DNS failure was a +review-environment limitation; no mismatch was established and no pin or +digest is changed for it. + +The new HUD mixed-install regression failed against the pre-repair template +and passed after filtering entries before sorting. Those returned results are +retained as local fixture evidence. This session exposed no scoped ai-memory +MCP tool. Installed CLI help supports a scoped search with limit 2 but no +pin-priority option; the initial R642 search returned HTTP 404 because the +requested project was absent from the default workspace. This is a scope +lookup failure, not evidence that the service is unavailable. The repair used +the recipe's `local` workspace on retry and received no hits. It then used +the exact decision and original source packet +and adopted no memory claim. Completeness checks cover all requested findings, +current selectors, canonical recipe entry points, reproducible receipt paths, +component-relative citations and owner boundaries. Remaining source/runtime +modalities feed the lifecycle sweep above; hosted and owner work is handed off. + +The staged publication check uses Git 2.43.0's documented +[`GIT_INDEX_FILE`, `GIT_OBJECT_DIRECTORY` and read-only alternate objects](https://github.com/git/git/blob/v2.43.0/Documentation/git.txt) +in writable repair scratch, so the ordinary worktree index remains untouched. +Native `read-tree HEAD`, `git add -A` and `git reset -- .` provide the stage and +cleanup. The installed Gitleaks wrapper could not create its host runtime lock +in this sandbox; the bounded staged scan uses the pinned upstream Gitleaks +8.30.1 executable. Its result does not qualify host-local guarded containment. ## Overturn condition and rollback diff --git a/docs/foundation-stack.md b/docs/foundation-stack.md index 414f5be37..91f52d6fc 100644 --- a/docs/foundation-stack.md +++ b/docs/foundation-stack.md @@ -15,7 +15,7 @@ The foundation wave's [acceptance receipt](../evidence/receipts/foundation-nativ | Reduce selected tool context | [RTK](https://github.com/rtk-ai/rtk/releases/tag/v0.50.0), [Context Mode](https://github.com/mksglu/context-mode), [jCodeMunch](https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327), [Headroom](https://github.com/headroomlabs-ai/headroom) | Choose the smallest representation satisfying the task; preserve full output/recovery and signed comparisons. These do not automatically intercept every client call. | | Optional gateway | [OmniRoute 3.8.50](https://github.com/diegosouzapw/OmniRoute/releases/tag/v3.8.50) | Separate process-level route and scoped inference key. Local lifecycle can pass while provider acceptance remains unavailable. | -The pins above are the component pins in [manifests/stack.json](../manifests/stack.json), re-checked 2026-09-26. The 2026-09-20 acceptance receipt predates four of them: it records ai-memory 2.3.2, and this table then named vLLM 0.25.0, RTK 0.49.0 and SocratiCode 1.14.0. Each newer pin's qualification is in its component's `freshness` note, except SocratiCode 1.15.0, qualified on 2026-09-27 in [its receipt](../evidence/receipts/socraticode-1150-qualification-20260927.json). For ai-memory and RTK that note also records that the landscape winner pin keeps its verdict wave's version (2.3.2 and 0.49.0) until a new wave; SocratiCode's winner pin likewise stays 1.14.0. Headroom's canonical upstream is `headroomlabs-ai/headroom`; `chopratejas/headroom` redirects there. +The pins above are the component pins in [manifests/stack.json](../manifests/stack.json), checked on 2026-09-26 and updated for jCodeMunch on 2026-10-03. The 2026-09-20 acceptance receipt predates five current pins: ai-memory, vLLM, RTK, SocratiCode and jCodeMunch. It records ai-memory 2.3.2; the earlier table named vLLM 0.25.0, RTK 0.49.0 and SocratiCode 1.14.0. Each newer pin's qualification is in its component's `freshness` note, except SocratiCode 1.15.0, qualified on 2026-09-27 in [its receipt](../evidence/receipts/socraticode-1150-qualification-20260927.json), and jCodeMunch 1.108.319 → 1.108.327, qualified on 2026-10-03 in [its version and session-stats receipt](../evidence/receipts/jcodemunch-1108327-qualification-20261003.json). For ai-memory and RTK that note also records that the landscape winner pin keeps its verdict wave's version (2.3.2 and 0.49.0) until a new wave; SocratiCode's winner pin likewise stays 1.14.0. Headroom's canonical upstream is `headroomlabs-ai/headroom`; `chopratejas/headroom` redirects there. Native client sign-ins, generation models, caching, compaction and existing project MCP remain the default. OmniRoute conversational memory is a separate optional injection store; it does not replace ai-memory or the code index. Do not chain competing gateways or activate every catalog alternative. diff --git a/evidence/artifacts/currency-wave-w1-20261003/native-checks.json b/evidence/artifacts/currency-wave-w1-20261003/native-checks.json index 0a0f586b8..2c5c17071 100644 --- a/evidence/artifacts/currency-wave-w1-20261003/native-checks.json +++ b/evidence/artifacts/currency-wave-w1-20261003/native-checks.json @@ -137,7 +137,7 @@ "command": "python3 -B -m unittest tests.test_adoption_docs_consistency tests.test_adoption_bootstrap_macos tests.test_catalog_freshness_pins tests.test_native_token_ci", "exit_code": 1, "decisive_output": "Ran 229 tests; FAILED (errors=2, skipped=33). Both errors were native npm pack returning exit 226.", - "classification": "Supplemental fixture setup failure; every build-contract acceptance command passed separately." + "classification": "Supplemental fixture setup failure; this run is not a build-contract acceptance result." }, { "command": "Same supplemental unittest command with scratch npm cache and both npm config paths set to /dev/null", diff --git a/evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json b/evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json new file mode 100644 index 000000000..6a898b9bd --- /dev/null +++ b/evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json @@ -0,0 +1,267 @@ +{ + "schema_version": 1, + "observed_date_utc": "2026-10-03", + "evidence_class": "native_local_integration", + "repair_contract": "R642", + "source_head": "ea10c096e8fbc59cf528f9fb600d8b0b261c288b", + "upstream_sources": [ + "https://github.com/jarrodwatts/claude-hud/blob/75683c6de1ac07f6bbef00d739001679dba0740c/scripts/statusline.mjs#L30-L39", + "https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.162.0", + "https://docs.astral.sh/uv/guides/scripts/#running-a-script-with-dependencies", + "https://pypi.org/project/PyYAML/6.0.3/" + ], + "native_recipe": "observability/collector/README.md (optional PyYAML==6.0.3 via uv run)", + "collector_environment": { + "OTELCOL_TEST_BIN": "/opentelemetry-collector-contrib/prefix/otelcol-contrib", + "UV_CACHE_DIR": "/uv-cache" + }, + "collector_version": { + "command": "/opentelemetry-collector-contrib/prefix/otelcol-contrib --version", + "exit_code": 0, + "returned_output": "otelcol-contrib version 0.162.0\n" + }, + "hud_control": { + "command": "python3 -B -m unittest tests.test_render_config.RenderConfigTests.test_hud_statusline_requires_an_installed_entry", + "negative_template": "Pre-repair guarded template at source_head, with the new mixed-install subtest", + "negative_exit_code": 1, + "negative_output": "F\n======================================================================\nFAIL: test_hud_statusline_requires_an_installed_entry (tests.test_render_config.RenderConfigTests.test_hud_statusline_requires_an_installed_entry) (plugin='incomplete_newer_with_complete_older')\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 125, in test_hud_statusline_requires_an_installed_entry\n self.assertEqual(result.stdout, str(older_entry) + \"\\n\")\n ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nAssertionError: '' != '/claude/plugins/cache/cla[36 chars]js\\n'\n+ /claude/plugins/cache/claude-hud/claude-hud/0.9.0/dist/index.js\n\n\n----------------------------------------------------------------------\nRan 1 test in 0.042s\n\nFAILED (failures=1)\n", + "positive_exit_code": 0, + "positive_output": ".\n----------------------------------------------------------------------\nRan 1 test in 0.043s\n\nOK\n", + "scope": "Instrumented Node fixture. An incomplete 0.10.0 directory beside a complete 0.9.0 entry must select 0.9.0; after 0.10.0 completes, it must select 0.10.0." + }, + "required_unittest_attempts": [ + { + "command": "python3 -B -m unittest tests.test_stack_lifecycle tests.test_render_config tests.test_adoption_contract tests.test_grand_dashboard tests.test_landscape_sweep_harness tests.test_observability_tool_names tests.test_observability_run_correlation tests.test_sdk_usage_scope", + "environment": { + "OTELCOL_TEST_BIN": "/opentelemetry-collector-contrib/prefix/otelcol-contrib" + }, + "python_version": "3.13.15", + "exit_code": 0, + "returned_output": ".........................................................................................................................................s.................................................................................................ss............................ssssssss..s...sssss\n----------------------------------------------------------------------\nRan 284 tests in 45.862s\n\nOK (skipped=17)\nInstalled dashboard and two units; service activation remains explicit.\nstarted start-race\nnot started launch-refused: the job runner could not start\n", + "scope": "Initial interpreter lacked PyYAML; 17 skips do not qualify the native Collector paths." + }, + { + "command": "uv run --no-project --with PyYAML==6.0.3 python3 -B -m unittest tests.test_stack_lifecycle tests.test_render_config tests.test_adoption_contract tests.test_grand_dashboard tests.test_landscape_sweep_harness tests.test_observability_tool_names tests.test_observability_run_correlation tests.test_sdk_usage_scope", + "environment": { + "OTELCOL_TEST_BIN": "/opentelemetry-collector-contrib/prefix/otelcol-contrib", + "UV_CACHE_DIR": "/uv-cache" + }, + "python_version": "3.14.7", + "exit_code": 0, + "returned_output": "Installed 1 package in 10ms\n.........................................................................................................................................s.................................................................................................ss.........................................../.local/share/uv/python/cpython-3.14.7-linux-x86_64-gnu/lib/python3.14/tempfile.py:484: ResourceWarning: Implicitly cleaning up \n _warnings.warn(self.warn_message, ResourceWarning)\n...Installed dashboard and two units; service activation remains explicit.\nstarted start-race\nnot started launch-refused: the job runner could not start\n{\"dashboard_result\": [], \"stage\": \"start_and_resume\"}\n{\"dashboard_result\": [], \"stage\": \"same_id_replay_and_new_id_republication\"}\n{\"dashboard_result\": [], \"stage\": \"unavailable_and_legacy_without_additive_baseline\"}\n.\n----------------------------------------------------------------------\nRan 284 tests in 104.986s\n\nOK (skipped=3)\n", + "scope": "Native supported uv wrapper adds the documented optional PyYAML in a scratch cache. The command ran 284 tests, with three unrelated optional landscape harness skips." + }, + { + "command": "uv run --no-project --python 3.13 --with PyYAML==6.0.3 python3 -B -m unittest tests.test_stack_lifecycle tests.test_render_config tests.test_adoption_contract tests.test_grand_dashboard tests.test_landscape_sweep_harness tests.test_observability_tool_names tests.test_observability_run_correlation tests.test_sdk_usage_scope", + "environment": { + "OTELCOL_TEST_BIN": "/opentelemetry-collector-contrib/prefix/otelcol-contrib", + "UV_CACHE_DIR": "/uv-cache", + "UV_PYTHON_DOWNLOADS": "never" + }, + "python_version": "3.13.15", + "exit_code": 0, + "returned_output": ".........................................................................................................................................s.................................................................................................ss..............................................Installed dashboard and two units; service activation remains explicit.\nstarted start-race\nnot started launch-refused: the job runner could not start\n{\"dashboard_result\": [], \"stage\": \"start_and_resume\"}\n{\"dashboard_result\": [], \"stage\": \"same_id_replay_and_new_id_republication\"}\n{\"dashboard_result\": [], \"stage\": \"unavailable_and_legacy_without_additive_baseline\"}\n.\n----------------------------------------------------------------------\nRan 284 tests in 104.216s\n\nOK (skipped=3)\n", + "scope": "Required suite on the original Python 3.13 line with the documented optional PyYAML. The three skips are the optional context-mode security JS fixture, missing ShellCheck and unavailable real Bash 3.2 in test_landscape_sweep_harness; native Collector checks execute." + } + ], + "validation_checks": [ + { + "id": "validate", + "command": "python3 scripts/validate.py", + "started_at_utc": "2026-10-03T07:09:44.011Z", + "returned_at_utc": "2026-10-03T07:10:31.086Z", + "exit_code": 0, + "returned_output": "{\"components\": 69, \"hashed_files\": 9422, \"profiles\": 4, \"receipts\": 196, \"status\": \"passed\"}\nIntegrity and scope checks only; no live provider or GPU execution.\n", + "output_sha256_original": "e6ac2f4e28d35828e6e2798646edd1577d8d3990901ca2fc55f597ba2f66d22e" + }, + { + "id": "convergence", + "command": "python3 scripts/validate_convergence.py --all-recorded --root . --json", + "started_at_utc": "2026-10-03T07:09:44.024Z", + "returned_at_utc": "2026-10-03T07:10:31.089Z", + "exit_code": 0, + "returned_output": "{\"records\": [{\"errors\": [], \"observations\": 3, \"path\": \"blueprints/blind-catalog-convergence/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 3, \"path\": \"blueprints/blind-catalog-convergence/memory-experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 4, \"path\": \"blueprints/catalog-runtime-review/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 15, \"path\": \"blueprints/convergence-practice/application-delivery/experiment-macos-20260924.json\", \"valid\": true}, {\"errors\": [], \"observations\": 3, \"path\": \"blueprints/convergence-practice/application-delivery/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/ci-security/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/document-ingestion/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 0, \"path\": \"blueprints/convergence-practice/gpt6-family-tiering-20260926/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/gpu-inference/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 3, \"path\": \"blueprints/convergence-practice/job-recovery/experiment-macos.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/job-recovery/experiment-wsl.json\", \"valid\": true}, {\"errors\": [], \"observations\": 7, \"path\": \"blueprints/convergence-practice/local-inference-latest-20260926/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 2, \"path\": \"blueprints/convergence-practice/mac-memory-patch/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/native-recovery/claude/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/native-recovery/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 2, \"path\": \"blueprints/convergence-practice/native-worker/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 20, \"path\": \"blueprints/convergence-practice/omniroute-routing-20260928/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/wsl-memory-maintenance/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 2, \"path\": \"blueprints/convergence-practice/wsl-native-tools/experiment-wsl.json\", \"valid\": true}, {\"errors\": [], \"observations\": 0, \"path\": \"blueprints/convergence-practice/wsl-new-distro-image-20261001/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/wsl-retrieval/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 3, \"path\": \"blueprints/convergence-practice/wsl-transport-recovery/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 8, \"path\": \"blueprints/us-equities/sim-capacity/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 6, \"path\": \"evidence/artifacts/local-model-workloads-20260924/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 24, \"path\": \"evidence/artifacts/memory-stack-20260925/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 3, \"path\": \"evidence/artifacts/native-workflow-writing-recovery-20260921/experiment.json\", \"valid\": true}], \"valid\": true}\n", + "output_sha256_original": "672ad5b6c96651f6d613a584d812f00e78339b7db50fec643a27aaaf148c906c" + }, + { + "id": "landscape", + "command": "python3 scripts/landscape.py --root .", + "started_at_utc": "2026-10-03T07:09:44.024Z", + "returned_at_utc": "2026-10-03T07:09:44.835Z", + "exit_code": 0, + "returned_output": "{\"counts\": {\"applied_skills\": 3, \"comparison_candidates\": 365, \"comparison_repositories\": 161, \"current_public_stars\": 343, \"dispositions\": {\"conditional\": 164, \"measured_tradeoff\": 9, \"out_of_scope\": 9, \"overlap\": 14, \"selected\": 136, \"unqualified\": 33}, \"domain_layers\": 4, \"explained_components\": 69, \"foundation_decisions\": 54, \"foundation_layers\": 20, \"foundation_statuses\": {\"accepted_within_scope\": 44, \"partial_acceptance\": 2, \"source_review\": 8}, \"historical_candidate_cards\": 154, \"layers\": 32, \"quality_review_repositories\": 16, \"research_queue_layers\": 32, \"research_repositories\": 875, \"selected_components\": 69}, \"scope\": \"Coverage and reference integrity; no new runtime or ranking acceptance.\", \"status\": \"passed\"}\n", + "output_sha256_original": "f2ffcf6bb1442024fdf17236278925740ad8416a239fe8aa8133c7b75cabeadb" + }, + { + "id": "catalogs", + "command": "python3 scripts/validate_catalogs.py", + "started_at_utc": "2026-10-03T07:09:44.024Z", + "returned_at_utc": "2026-10-03T07:09:44.358Z", + "exit_code": 0, + "returned_output": "{\"beyond_star_catalog_repositories\": 102, \"models\": 20, \"public_stars\": 357, \"repository_entries\": 154, \"starred_catalog_repositories\": 46, \"unique_catalog_repositories\": 148}\nCatalog structure and evidence classes validated; source claims and native executions were not rerun.\n", + "output_sha256_original": "8f241daedb4f7a5eaaff358e5653981120ee9436a8959c7b968eedb30dbe9a01" + }, + { + "id": "foundation", + "command": "python3 scripts/validate_foundation.py --root . --json", + "started_at_utc": "2026-10-03T07:09:44.024Z", + "returned_at_utc": "2026-10-03T07:09:44.282Z", + "exit_code": 0, + "returned_output": "{\n \"ok\": true,\n \"counts\": {\n \"layers\": 20,\n \"decisions\": 54,\n \"foundation_components\": 61,\n \"domain_components\": 7,\n \"evidence_receipts\": 84,\n \"candidates\": 3\n },\n \"errors\": []\n}\n", + "output_sha256_original": "b6535ffab61c1faafa85b93dbe965f253fa479ac0c58dfb6af61c0094a001d3f" + }, + { + "id": "component-matrix", + "command": "python3 scripts/component_matrix.py --check", + "started_at_utc": "2026-10-03T07:09:44.024Z", + "returned_at_utc": "2026-10-03T07:09:44.386Z", + "exit_code": 0, + "returned_output": "{\"rows\": 32, \"status\": \"checked\"}\n", + "output_sha256_original": "08ce4f275c99b7f91a141cfca5b7384f060aacf620f23a324cde692d55e6ffcd" + }, + { + "id": "new-host", + "command": "python3 scripts/new_host_grand_list.py --check", + "started_at_utc": "2026-10-03T07:09:44.024Z", + "returned_at_utc": "2026-10-03T07:09:44.261Z", + "exit_code": 0, + "returned_output": "{\"status\": \"passed\", \"layers\": 32, \"winners\": 66}\n", + "output_sha256_original": "63d8d8221f6c7c051149b1405ef5de7623dbb2d37257fad49a8a774b02d49226" + }, + { + "id": "ecosystem", + "command": "python3 scripts/build_ecosystem.py --check", + "started_at_utc": "2026-10-03T07:09:44.024Z", + "returned_at_utc": "2026-10-03T07:10:31.091Z", + "exit_code": 0, + "returned_output": "{\"architecture_pin_drift\": [{\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"foundation/native-clients\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"worktrunk\", \"edition_pin\": \"0.79.0\", \"row\": \"foundation/workers\", \"stack_pin\": \"0.80.0\"}, {\"component_id\": \"worktrunk\", \"edition_pin\": \"0.79.0\", \"row\": \"foundation/isolation\", \"stack_pin\": \"0.80.0\"}, {\"component_id\": \"jcodemunch-mcp\", \"edition_pin\": \"1.108.319\", \"row\": \"foundation/code-navigation\", \"stack_pin\": \"1.108.327\"}, {\"component_id\": \"openresearch\", \"edition_pin\": \"0.2.7\", \"row\": \"foundation/web-research\", \"stack_pin\": \"0.2.15\"}, {\"component_id\": \"syft\", \"edition_pin\": \"1.52.0\", \"row\": \"foundation/ci-supply-chain\", \"stack_pin\": \"1.54.0\"}, {\"component_id\": \"nextjs\", \"edition_pin\": \"16.3.6\", \"row\": \"foundation/hosting-services\", \"stack_pin\": \"16.3.8\"}, {\"component_id\": \"opentelemetry-collector-contrib\", \"edition_pin\": \"0.161.0\", \"row\": \"foundation/observation-inference\", \"stack_pin\": \"0.162.0\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"foundation/agent-sdks\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"mcporter\", \"edition_pin\": \"0.14.1\", \"row\": \"foundation/mcp-surfaces\", \"stack_pin\": \"0.14.2\"}, {\"component_id\": \"mcp-inspector\", \"edition_pin\": \"2.8.0\", \"row\": \"foundation/mcp-surfaces\", \"stack_pin\": \"2.9.0\"}, {\"component_id\": \"worktrunk\", \"edition_pin\": \"0.79.0\", \"row\": \"foundation/git-github-automation\", \"stack_pin\": \"0.80.0\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"us-equities/data-quality-orchestration\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"opentelemetry-collector-contrib\", \"edition_pin\": \"0.161.0\", \"row\": \"us-equities/data-quality-orchestration\", \"stack_pin\": \"0.162.0\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"us-equities/evaluation-experiments\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"opentelemetry-collector-contrib\", \"edition_pin\": \"0.161.0\", \"row\": \"us-equities/evaluation-experiments\", \"stack_pin\": \"0.162.0\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"us-equities/agents-models-workers\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"us-equities/observability-hosting\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"opentelemetry-collector-contrib\", \"edition_pin\": \"0.161.0\", \"row\": \"us-equities/observability-hosting\", \"stack_pin\": \"0.162.0\"}, {\"component_id\": \"syft\", \"edition_pin\": \"1.52.0\", \"row\": \"us-equities/security-supply-chain\", \"stack_pin\": \"1.54.0\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"cross/cross:gpt6-harnesses\", \"stack_pin\": \"0.159.3\"}], \"bytes\": 15133644, \"input_sha256\": \"0095070fcf373bf0e9f48cb127e080a4e9a62face5f1133f2220cb9a80f01b47\", \"output_sha256\": \"c3898a15da5cae3880fcd9b033a30b92391056b14d4f8d63ab236005d1a42307\", \"status\": \"passed\"}\n", + "output_sha256_original": "094109f93729cd8ad822797326dc480fbde45fb12032fca2ce5fa317587aea1b" + }, + { + "id": "pre-push-registry", + "command": "python3 -B -m unittest tests.test_osv_lockfile_coverage.LockfileInventoryTests.test_every_tracked_lockfile_and_manifest_is_listed tests.test_blind_checkout.RepositoryClassificationTests.test_every_blueprint_value_under_a_label_key_is_classified tests.test_workflow_security_coverage.NewWorkflowSecurityCoverageTests.test_all_published_workflows_are_listed_and_covered", + "started_at_utc": "2026-10-03T07:09:44.024Z", + "returned_at_utc": "2026-10-03T07:09:44.494Z", + "exit_code": 0, + "returned_output": "...\n----------------------------------------------------------------------\nRan 3 tests in 0.221s\n\nOK\n", + "output_sha256_original": "b156155ebdfc8e14121e2f6c0e9305a1291afc8d9dbc64547f47c785c416e61f" + } + ], + "limitations": [ + "Local repository integration checks and synthetic fixtures, not unchanged upstream tests, provider runs or host deployment acceptance.", + "Command outputs below are retained exactly except portable repository, home and scratch-path sanitization; commands executed via rtk proxy.", + "HUD controls and the initial unittest runs did not capture start/end UTC timestamps; no timestamp is inferred.", + "Hosted CI and other owners remain separate scopes. PR metadata observations bind to the unchanged source_head, not a future repair commit." + ], + "native_collector_checks": { + "command": "uv run --no-project --python 3.13 --with PyYAML==6.0.3 python3 -B -m unittest tests.test_observability_tool_names tests.test_observability_run_correlation tests.test_sdk_usage_scope tests.test_observability_writer_identity", + "environment": { + "OTELCOL_TEST_BIN": "/opentelemetry-collector-contrib/prefix/otelcol-contrib", + "UV_CACHE_DIR": "/uv-cache", + "UV_PYTHON_DOWNLOADS": "never" + }, + "python_version": "3.13.15", + "exit_code": 0, + "returned_output": "Installed 1 package in 16ms\n..................{\"dashboard_result\": [], \"stage\": \"start_and_resume\"}\n{\"dashboard_result\": [], \"stage\": \"same_id_replay_and_new_id_republication\"}\n{\"dashboard_result\": [], \"stage\": \"unavailable_and_legacy_without_additive_baseline\"}\n.................\n----------------------------------------------------------------------\nRan 35 tests in 65.620s\n\nOK\n", + "scope": "35 repository native/structural tests with zero skips, covering logs, run/tool/cost correlation, SDK file receipts and metrics/writer identity through pinned Collector 0.162.0; synthetic fixtures only." + }, + "additional_writer_identity": { + "command": "uv run --no-project --with PyYAML==6.0.3 python3 -B -m unittest tests.test_observability_writer_identity", + "environment": { + "OTELCOL_TEST_BIN": "/opentelemetry-collector-contrib/prefix/otelcol-contrib", + "UV_CACHE_DIR": "/uv-cache" + }, + "python_version": "3.14.7", + "exit_code": 0, + "returned_output": "................\n----------------------------------------------------------------------\nRan 16 tests in 9.687s\n\nOK\n", + "scope": "Additional variant selector check before fixing the acceptance interpreter to the original Python 3.13 line." + }, + "hosted_observation": { + "command": "gh pr checks 642 --required --json name,bucket; gh pr view 642 --json headRefOid,labels,body,comments", + "exit_code": 0, + "head": "ea10c096e8fbc59cf528f9fb600d8b0b261c288b", + "required_buckets": [ + { + "bucket": "fail", + "name": "validate" + }, + { + "bucket": "pass", + "name": "verdict-review-gate" + }, + { + "bucket": "pass", + "name": "token-report" + }, + { + "bucket": "pass", + "name": "secret-scan" + }, + { + "bucket": "pass", + "name": "osv-scanner" + }, + { + "bucket": "pass", + "name": "dependency-review" + }, + { + "bucket": "pass", + "name": "sota-sources" + }, + { + "bucket": "pending", + "name": "validate-macos" + } + ], + "labels": [ + "lane:shared" + ], + "sota_sources_section_present": true, + "candidate_ack_comment_found": false, + "scope": "Read-only PR observation at source_head. Review acknowledgements were not fetched; absent candidate comments do not prove absence of an acknowledgement review. Hosted results for a future repair commit remain a coordinator handoff." + }, + "memory_attempts": [ + { + "command": "ai-memory search '\"currency-wave-w1\" OR \"R642\"' --project native-agent-stack --limit 2 --json", + "exit_code": 1, + "stdout": "", + "stderr": "2026-10-03T07:05:59.484944Z INFO ai_memory_cli: ai-memory starting version=\"2.4.2\" server_url=http://127.0.0.1:49474 data_dir=/.local/share/ai-memory bind=127.0.0.1:49474\nError: GET /admin/search: server returned 404 Not Found: {\"error\":\"project 'native-agent-stack' not found in workspace 'default'\"}\n", + "scope": "Initial default workspace lookup failed; this does not imply service unavailability." + }, + { + "command": "ai-memory search '\"currency-wave-w1\" OR \"R642\"' --workspace local --project native-agent-stack --limit 2 --json", + "exit_code": 0, + "stdout": "[]\n", + "stderr": "2026-10-03T07:08:44.366140Z INFO ai_memory_cli: ai-memory starting version=\"2.4.2\" server_url=http://127.0.0.1:49474 data_dir=/.local/share/ai-memory bind=127.0.0.1:49474\n", + "scope": "Correct recipe workspace returned no hits; no memory claim adopted. Installed CLI help does not expose pin-priority arguments." + } + ], + "optional_skip_observation": { + "method": "unittest.defaultTestLoader.loadTestsFromModule and __unittest_skip__ / __unittest_skip_why__ inspection", + "skips": [ + "OmniRouteLaneBuildTests.test_context_mode_reads_only_the_listed_skill_files: set CONTEXT_MODE_SECURITY_JS to an installed context-mode build/security.js", + "ShellTests.test_runs_under_bash_3_2: no real bash 3.2 binary", + "ShellTests.test_shellcheck: shellcheck is not installed" + ] + }, + "publication_check_environment": { + "guarded_preflight": { + "command": "gitleaks protect --help", + "exit_code": 1, + "returned_output": "/bin/gitleaks: line 22: /run/user/1000/ecosystem-gitleaks.lock: Read-only file system\n", + "scope": "No scan started. The installed containment wrapper cannot create its per-user lock in this sandbox." + }, + "native_scanner": { + "version": "8.30.1", + "source": "https://github.com/gitleaks/gitleaks/releases/tag/v8.30.1", + "help_checked": "protect --help exposes --staged and --redact" + }, + "git_index_plan": { + "version": "2.43.0", + "source": "https://github.com/git/git/blob/v2.43.0/Documentation/git.txt", + "method": "Native GIT_INDEX_FILE and GIT_OBJECT_DIRECTORY in writable repair scratch; GIT_ALTERNATE_OBJECT_DIRECTORIES reads existing repository objects without writing them. read-tree HEAD seeds the clean initial tree, git add -A stages the actual worktree, git reset -- . clears that scratch index." + }, + "scope": "Bounded native staged publication scan in the existing execution sandbox; not acceptance of host-local guarded job containment. The ordinary worktree Git index is outside writable roots and is kept unchanged." + } +} diff --git a/evidence/receipts/claude-hud-0100-qualification-20261003.json b/evidence/receipts/claude-hud-0100-qualification-20261003.json index 69c04ac20..d45a23d4f 100644 --- a/evidence/receipts/claude-hud-0100-qualification-20261003.json +++ b/evidence/receipts/claude-hud-0100-qualification-20261003.json @@ -30,7 +30,7 @@ "url": "https://api.github.com/repos/jarrodwatts/claude-hud/tarball/v0.10.0", "sha256": "6c49b71b8d4fca15d6cd9777e3724300e51eb361f4e5e8b2a12ad8085b8ac720", "integrity_checked": true, - "integrity_source": "No published checksum exists: the release has assets: [] and GitHub publishes no checksum for generated tarballs; the sha256 above is first recorded here (file 607051 bytes, downloaded 2026-10-03), not published upstream. What matched instead: (1) git get-tar-commit-id on the tarball = 75683c6de1ac07f6bbef00d739001679dba0740c, equal to the peeled tag commit from gh api git/ref/tags/v0.10.0 + git/tags/801f75c6... and from git ls-remote refs/tags/v0.10.0^{} (git protocol, independent of the REST API); (2) all 310 extracted files match the git blob SHA-1 entries of tree d4331bf0aa622ffe0b1cc7878855bbd747d8cae1 from gh api git/trees/?recursive=1 (not truncated; 310 match, 0 mismatch, 0 missing, 0 extra); (3) archive has no absolute or .. member names and no symlinks or hardlinks. Tag object 801f75c6ca5332b7937a181e9d904bc4013974aa is annotated and unsigned (verified:false, reason unsigned); the commit is verified:true." + "integrity_source": "No published checksum exists: the release has assets: [] and GitHub publishes no checksum for generated tarballs; the sha256 above is first recorded here (file 607051 bytes, downloaded 2026-10-03), not published upstream. What matched instead: (1) git get-tar-commit-id on the tarball = 75683c6de1ac07f6bbef00d739001679dba0740c, equal to the peeled tag commit from gh api git/ref/tags/v0.10.0 + git/tags/801f75c6... and from git ls-remote refs/tags/v0.10.0^{} (git protocol, independent of the REST API); (2) all 310 extracted files match the git blob SHA-1 entries of tree d4331bf0aa622ffe0b1cc7878855bbd747d8cae1 from gh api git/trees/?recursive=1 (not truncated; 310 match, 0 mismatch, 0 missing, 0 extra); (3) archive has no absolute or .. member names and no symlinks or hardlinks. Tag object 801f75c6ca5332b7937a181e9d904bc4013974aa is annotated and unsigned (verified:false, reason unsigned); the commit is verified:true. Primary source-tree integrity locator: https://api.github.com/repos/jarrodwatts/claude-hud/git/trees/d4331bf0aa622ffe0b1cc7878855bbd747d8cae1?recursive=1 (Git blob hashes, not a published archive SHA256)." }, "install_recorded": { "command": "tar -xzf /claude-hud/claude-hud-v0.10.0.tar.gz -C /claude-hud/prefix --strip-components=1", @@ -38,15 +38,15 @@ "prefix": "/claude-hud/prefix" }, "version_recorded": { - "command": "S=/claude-hud; P=$S/prefix; cd $S/smoke/workspace && env -i HOME=$S/smoke/home CLAUDE_CONFIG_DIR=$S/smoke PATH=/bin:/usr/bin:/bin timeout 20 node $P/dist/index.js --version < /dev/null; echo \"node_exit=$?\"; jq -r '.version // .metadata.version' $P/package.json $P/.claude-plugin/plugin.json $P/.claude-plugin/marketplace.json; echo \"jq_exit=$?\"", + "command": "S=/claude-hud; P=$S/prefix; cd $S/smoke/workspace && env -i HOME=$S/smoke/ CLAUDE_CONFIG_DIR=$S/smoke//.claude PATH=/bin:/usr/bin:/bin timeout 20 node $P/dist/index.js --version < /dev/null; echo \"node_exit=$?\"; jq -r '.version // .metadata.version' $P/package.json $P/.claude-plugin/plugin.json $P/.claude-plugin/marketplace.json; echo \"jq_exit=$?\"", "exit": 0, "output": "[claude-hud] Initializing...\nnode_exit=0\n0.10.0\n0.10.0\n0.10.0\njq_exit=0\n(The first line is the empty-stdin branch of main(), dist/index.js:54-55; dist/index.js has no --version handling, so there is no binary version command. Version identity is the three jq lines: package.json, .claude-plugin/plugin.json, .claude-plugin/marketplace.json metadata.version, all 0.10.0.)" }, "smoke_recorded": { "ran": true, - "command": "S=/claude-hud; printf '%s' '{\"session_id\":\"e2e\",\"model\":{\"id\":\"claude-opus-5\",\"display_name\":\"Opus 5\"},\"workspace\":{\"current_dir\":\"'$S'/smoke/workspace\",\"project_dir\":\"'$S'/smoke/workspace\"},\"cwd\":\"'$S'/smoke/workspace\",\"transcript_path\":\"/dev/null\",\"version\":\"2.1.278\"}' > $S/smoke/hud.json && cd $S/smoke/workspace && env -i HOME=$S/smoke/home CLAUDE_CONFIG_DIR=$S/smoke PATH=/bin:/usr/bin:/bin timeout 20 node $S/prefix/dist/index.js < $S/smoke/hud.json > $S/smoke/render-e2e.out 2> $S/smoke/render-e2e.err", + "command": "S=/claude-hud; printf '%s' '{\"session_id\":\"e2e\",\"model\":{\"id\":\"claude-opus-5\",\"display_name\":\"Opus 5\"},\"workspace\":{\"current_dir\":\"'$S'/smoke/workspace\",\"project_dir\":\"'$S'/smoke/workspace\"},\"cwd\":\"'$S'/smoke/workspace\",\"transcript_path\":\"/dev/null\",\"version\":\"2.1.278\"}' > $S/smoke/hud.json && cd $S/smoke/workspace && env -i HOME=$S/smoke/ CLAUDE_CONFIG_DIR=$S/smoke//.claude PATH=/bin:/usr/bin:/bin timeout 20 node $S/prefix/dist/index.js < $S/smoke/hud.json > $S/smoke/render-e2e.out 2> $S/smoke/render-e2e.err", "exit": 0, - "output_excerpt": "stdout, escape sequences stripped (246 bytes raw; stderr 0 bytes): '[Opus 5] \u2502 workspace' then 'Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%'. This is the recipes/README.md:87 'representative input render' (formatting only) in the retained e2e command shape (evidence/artifacts/claude-repository-evidence-20260921/results.json:7731), same stdin fixture (version 2.1.278), paths changed to a non-git cwd under scratch, HOME and CLAUDE_CONFIG_DIR pointed at empty scratch dirs; smoke/home held 0 files afterwards. Second run, upstream package.json test:stdin payload without its build step, same hermetic form: exit 0, 97 bytes, '[Opus]' then 'Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%'. /claude-hud:setup (also named at recipes/README.md:87) was NOT run: it needs a live interactive Claude session and writes settings. manifests/stack.json:250-255 declares no smoke command (source_only true, skill_invocation null). Render path needs no network or credential: no fetch/http/https/net/undici/dns/tls client in dist (rg exit 1)." + "output_excerpt": "stdout, escape sequences stripped (246 bytes raw; stderr 0 bytes): '[Opus 5] \u2502 workspace' then 'Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%'. This is the recipes/README.md:87 'representative input render' (formatting only) in the retained e2e command shape (evidence/artifacts/claude-repository-evidence-20260921/results.json:7731), same stdin fixture (version 2.1.278), paths changed to a non-git cwd under scratch, HOME and CLAUDE_CONFIG_DIR pointed at empty scratch dirs; smoke/home held 0 files afterwards. Second run, upstream package.json test:stdin payload without its build step, same hermetic form: exit 0, 97 bytes, '[Opus]' then 'Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%'. /claude-hud:setup (also named at recipes/README.md:87) was NOT run: it needs a live interactive Claude session and writes settings. manifests/stack.json (component id claude-hud, JSON pointer /commands) declares no smoke command (source_only true, skill_invocation null). Render path needs no network or credential: no fetch/http/https/net/undici/dns/tls client in dist (rg exit 1)." }, "input_packet": { "name": "W1-moves.json", @@ -128,6 +128,7 @@ "matches_recorded_sha256": true, "scope": "byte identity with the qualified W1 artifact; not signature or upstream test acceptance" }, - "integration_checks_ref": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json" + "integration_checks_ref": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", + "command_sanitization": "Restored from the hashed W1-moves.json packet. Qualification and host prefixes remain distinct; scratch HOME path segments use , retaining all child paths including separate npm user/global config files and XDG directories." } } diff --git a/evidence/receipts/mcp-inspector-290-qualification-20261003.json b/evidence/receipts/mcp-inspector-290-qualification-20261003.json index 31367d547..b98f476b2 100644 --- a/evidence/receipts/mcp-inspector-290-qualification-20261003.json +++ b/evidence/receipts/mcp-inspector-290-qualification-20261003.json @@ -46,7 +46,7 @@ "ran": true, "command": "MCP_AUTO_OPEN_ENABLED=false /mcp-inspector/prefix/bin/mcp-inspector --help", "exit": 0, - "output_excerpt": "Usage: mcp-inspector [options]\n\nMCP Inspector \u2013 run web UI, CLI, or TUI\n\nOptions:\n --web Run web UI (default)\n --cli Run CLI\n --tui Run TUI\n -h, --help display help for command\n\nMode flags (--web, --cli, --tui) must appear before app options. All following arguments are forwarded unchanged.\n\n[diff of this output against the recorded 2.8.0 output evidence/artifacts/sota-refresh-20260926/mcp-inspector/stage/launcher-help-2.8.0.txt: exit 0, identical. Substitution: the row's literal command is `npx @modelcontextprotocol/inspector@2.8.0 --help` (manifests/stack.json:609); I ran the installed scratch-prefix binary instead because npx would fetch into the host npx cache. Source read before running: the launcher prints help and exits 0 when -h/--help is present without a leading mode flag (clients/launcher/build/index.js). NOT run: the recipes/README.md:99 smoke `mcp-inspector --cli --config \"$PROJECT_ROOT/.mcp.json\" --server socraticode --method tools/list --format json --stored-auth-only --cwd \"$PROJECT_ROOT\"` (needs a live MCP server and stored auth). Supplementary offline check, not the row's smoke: `mcp-inspector --cli --help` diffed against evidence/artifacts/sota-refresh-20260926/mcp-inspector/stage/cli-help-2.8.0.txt gave diff exit 1 (differences): only additions, --advertise-apps (6 lines) and --require-digests (3 lines), nothing removed; --config, --server, --method, --format, --stored-auth-only, --cwd, --tool-name, --tool-arg all present.]" + "output_excerpt": "Usage: mcp-inspector [options]\n\nMCP Inspector \u2013 run web UI, CLI, or TUI\n\nOptions:\n --web Run web UI (default)\n --cli Run CLI\n --tui Run TUI\n -h, --help display help for command\n\nMode flags (--web, --cli, --tui) must appear before app options. All following arguments are forwarded unchanged.\n\n[diff of this output against the recorded 2.8.0 output evidence/artifacts/sota-refresh-20260926/mcp-inspector/stage/launcher-help-2.8.0.txt: exit 0, identical. Substitution: the W1 base row's literal command was `npx @modelcontextprotocol/inspector@2.8.0 --help` (manifests/stack.json at dcae68bd08a191f37ba564eceda9fc4a9d6d4a6e, component id mcp-inspector, JSON pointer /commands); I ran the installed scratch-prefix binary instead because npx would fetch into the host npx cache. Source read before running: the launcher prints help and exits 0 when -h/--help is present without a leading mode flag (clients/launcher/build/index.js). NOT run: the recipes/README.md:99 smoke `mcp-inspector --cli --config \"$PROJECT_ROOT/.mcp.json\" --server socraticode --method tools/list --format json --stored-auth-only --cwd \"$PROJECT_ROOT\"` (needs a live MCP server and stored auth). Supplementary offline check, not the row's smoke: `mcp-inspector --cli --help` diffed against evidence/artifacts/sota-refresh-20260926/mcp-inspector/stage/cli-help-2.8.0.txt gave diff exit 1 (differences): only additions, --advertise-apps (6 lines) and --require-digests (3 lines), nothing removed; --config, --server, --method, --format, --stored-auth-only, --cwd, --tool-name, --tool-arg all present.]" }, "input_packet": { "name": "W1-moves.json", diff --git a/evidence/receipts/mcporter-0142-qualification-20261003.json b/evidence/receipts/mcporter-0142-qualification-20261003.json index 039ec91cf..ef3e19be8 100644 --- a/evidence/receipts/mcporter-0142-qualification-20261003.json +++ b/evidence/receipts/mcporter-0142-qualification-20261003.json @@ -30,22 +30,22 @@ "url": "https://registry.npmjs.org/mcporter/-/mcporter-0.14.2.tgz", "sha256": "f5baa5a02be64d5d75722c5739975eee79d393eb2761496f70a53474688f8f6b", "integrity_checked": true, - "integrity_source": "Checked against four published sources, all matched. (1) npm registry dist.integrity sha512-3ajjKzPLe/39hN582XqMuOw3S9vHQfLpSBq72zVakT03xso3GDXHcht/eVLu/l2MDqulIOtLevnTKreUxymHJQ== equals `openssl dgst -sha512 -binary | base64` of the downloaded tarball, and dist.shasum ee7d91e7362e7dc5b44b5fcc5cfdea7cfaedb1fd equals sha1sum. (2) GitHub release v0.14.2 asset digest sha256:f5baa5a02be64d5d75722c5739975eee79d393eb2761496f70a53474688f8f6b for mcporter-0.14.2.tgz equals the local sha256sum; the release checksums.txt line matches (sha256sum -c: OK, exit 0); the release asset is byte-identical to the npm tarball (cmp exit 0); size 3585823 bytes. (3) npm SLSA provenance attestation (https://registry.npmjs.org/-/npm/v1/attestations/mcporter@0.14.2): subject sha512 dda8e32b...8725 equals the tarball sha512 hex, workflow .github/workflows/release.yml at refs/tags/v0.14.2, gitCommit aa0f55f9bffcde9d2070c86145f37d4dd3525f6c; the release provenance.json asset also names commit aa0f55f9 and the tgz sha256. (4) `npm audit signatures` exit 0: audited 40 packages, 40 verified registry signatures, 12 verified attestations." + "integrity_source": "Checked against four published sources, all matched. (1) npm registry version metadata https://registry.npmjs.org/mcporter/0.14.2: dist.integrity sha512-3ajjKzPLe/39hN582XqMuOw3S9vHQfLpSBq72zVakT03xso3GDXHcht/eVLu/l2MDqulIOtLevnTKreUxymHJQ== equals `openssl dgst -sha512 -binary | base64` of the downloaded tarball, and dist.shasum ee7d91e7362e7dc5b44b5fcc5cfdea7cfaedb1fd equals sha1sum. (2) GitHub release v0.14.2 asset digest sha256:f5baa5a02be64d5d75722c5739975eee79d393eb2761496f70a53474688f8f6b for mcporter-0.14.2.tgz equals the local sha256sum; the release checksums.txt line matches (sha256sum -c: OK, exit 0); the release asset is byte-identical to the npm tarball (cmp exit 0); size 3585823 bytes. (3) npm SLSA provenance attestation (https://registry.npmjs.org/-/npm/v1/attestations/mcporter@0.14.2): subject sha512 dda8e32b...8725 equals the tarball sha512 hex, workflow .github/workflows/release.yml at refs/tags/v0.14.2, gitCommit aa0f55f9bffcde9d2070c86145f37d4dd3525f6c; the release provenance.json asset also names commit aa0f55f9 and the tgz sha256. (4) `npm audit signatures` exit 0: audited 40 packages, 40 verified registry signatures, 12 verified attestations." }, "install_recorded": { - "command": "S=/mcporter; env -i HOME=$S/home PATH=/bin:/usr/bin:/bin npm install --global --prefix $S/prefix --cache $S/npm-cache --userconfig $S --globalconfig $S --no-audit --no-fund --no-update-notifier $S/mcporter-0.14.2.tgz (installs from the verified local tarball, the same file-based route manifests/evidence.json:3164 records for 0.14.1; spec form is `npm install --global --prefix mcporter@0.14.2` per recipes/README.md:100; it was run via `rtk proxy` with output `added 28 packages in 8s`)", + "command": "S=/mcporter; env -i HOME=$S/ PATH=/bin:/usr/bin:/bin npm install --global --prefix $S/prefix --cache $S/npm-cache --userconfig $S//.npmrc --globalconfig $S//.npmrc-global --no-audit --no-fund --no-update-notifier $S/mcporter-0.14.2.tgz (installs from the verified local tarball, the same file-based route manifests/evidence.json:3164 records for 0.14.1; spec form is `npm install --global --prefix mcporter@0.14.2` per recipes/README.md:100; it was run via `rtk proxy` with output `added 28 packages in 8s`)", "exit": 0, "prefix": "/mcporter/prefix" }, "version_recorded": { - "command": "S=/mcporter; env -i HOME=$S/home PATH=/bin:/usr/bin:/bin $S/prefix/bin/mcporter --version (the row's version_probe is `mcporter --version`, adoption/pins-linux-x86_64.json:137-142)", + "command": "S=/mcporter; env -i HOME=$S/ PATH=/bin:/usr/bin:/bin $S/prefix/bin/mcporter --version (the row's version_probe is `mcporter --version`, adoption/pins-linux-x86_64.json:137-142)", "exit": 0, "output": "0.14.2" }, "smoke_recorded": { "command": "mcporter --config \"${MCPORTER_CONFIG}\" list socraticode --brief --no-oauth", "exit": -1, - "output_excerpt": "NOT RUN; exit -1 is a placeholder because no process ran. The row's documented smoke command (manifests/stack.json:634) needs the host MCPORTER_CONFIG ($STACK_HOME/config/mcporter.json, recipes/README.md:29), which the task forbids touching, and a live `socraticode` MCP server; prior evidence records that a mcporter call started a daemon (manifests/evidence.json:3164), which the task forbids. Extra offline checks (not the smoke): `mcporter --help` exit 0, 57 lines, showing `--log-level Adjust CLI logging (defaults to warn)`; importing dist/serve.js exit 0.", + "output_excerpt": "NOT RUN; exit -1 is a placeholder because no process ran. The row's documented smoke command (manifests/stack.json (component id mcporter, JSON pointer /commands)) needs the host MCPORTER_CONFIG ($STACK_HOME/config/mcporter.json, recipes/README.md:29), which the task forbids touching, and a live `socraticode` MCP server; prior evidence records that a mcporter call started a daemon (manifests/evidence.json:3164), which the task forbids. Extra offline checks (not the smoke): `mcporter --help` exit 0, 57 lines, showing `--log-level Adjust CLI logging (defaults to warn)`; importing dist/serve.js exit 0.", "ran": false }, "input_packet": { @@ -119,6 +119,7 @@ "bytes": 3585823, "matches_recorded_sha256": true, "scope": "byte identity with the qualified W1 artifact; not signature or upstream test acceptance" - } + }, + "command_sanitization": "Restored from the hashed W1-moves.json packet. Qualification and host prefixes remain distinct; scratch HOME path segments use , retaining all child paths including separate npm user/global config files and XDG directories." } } diff --git a/evidence/receipts/openresearch-0215-qualification-20261003.json b/evidence/receipts/openresearch-0215-qualification-20261003.json index f89e162b7..4ac235dfb 100644 --- a/evidence/receipts/openresearch-0215-qualification-20261003.json +++ b/evidence/receipts/openresearch-0215-qualification-20261003.json @@ -37,12 +37,12 @@ "prefix": "/openresearch/prefix" }, "version_recorded": { - "command": "D=/openresearch; env -i HOME=$D/home XDG_CONFIG_HOME=$D XDG_DATA_HOME=$D/share XDG_STATE_HOME=$D/state XDG_CACHE_HOME=$D PATH=/usr/bin:/bin unshare -rn $D/prefix/bin/orx --version", + "command": "D=/openresearch; env -i HOME=$D/ XDG_CONFIG_HOME=$D//.config XDG_DATA_HOME=$D//.local/share XDG_STATE_HOME=$D//.local/state XDG_CACHE_HOME=$D//.cache PATH=/usr/bin:/bin unshare -rn $D/prefix/bin/orx --version", "exit": 0, "output": "orx 0.2.15" }, "smoke_recorded": { - "command": "orx --no-telemetry discover keyword \"local code retrieval\" --limit 3 ; orx --no-telemetry paper \"${PAPER_ID}\" --full (the two commands of the row, manifests/stack.json:659-660)", + "command": "orx --no-telemetry discover keyword \"local code retrieval\" --limit 3 ; orx --no-telemetry paper \"${PAPER_ID}\" --full (the two commands of the row, manifests/stack.json (component id openresearch, JSON pointer /commands))", "exit": -1, "ran": false, "output_excerpt": "NOT RUN. The -1 is a sentinel meaning 'not run', not an exit code. Both documented commands need a live network service: `orx discover keyword --help` on v0.2.15 reads 'alphaXiv full-text BM25 retrieval with match snippets' and `orx paper --help` reads 'Fetch a paper: alphaXiv report/full-text, or OpenAlex/bioRxiv/PubMed metadata'. The second also needs a value for ${PAPER_ID}, which the task does not supply. The repo's own prior qualification record (evidence/artifacts/sota-refresh-20260923/pins-tools/openresearch.json, limits) says functional search needs a stored alphaXiv/OpenAlex key or account." @@ -117,6 +117,7 @@ "bytes": 11890208, "matches_recorded_sha256": true, "scope": "byte identity with the qualified W1 artifact; not signature or upstream test acceptance" - } + }, + "command_sanitization": "Restored from the hashed W1-moves.json packet. Qualification and host prefixes remain distinct; scratch HOME path segments use , retaining all child paths including separate npm user/global config files and XDG directories." } } diff --git a/evidence/receipts/syft-1540-qualification-20261003.json b/evidence/receipts/syft-1540-qualification-20261003.json index 5185d9b0d..1de1212b9 100644 --- a/evidence/receipts/syft-1540-qualification-20261003.json +++ b/evidence/receipts/syft-1540-qualification-20261003.json @@ -43,7 +43,7 @@ "output": "{\n \"application\": \"syft\",\n \"buildDate\": \"2026-10-01T20:48:12Z\",\n \"compiler\": \"gc\",\n \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\",\n \"gitDescription\": \"v1.54.0\",\n \"goVersion\": \"go1.26.8\",\n \"platform\": \"linux/amd64\",\n \"schemaVersion\": \"16.1.11\",\n \"version\": \"1.54.0\"\n}" }, "smoke_recorded": { - "command": "bwrap --unshare-all --die-with-parent --new-session --cap-drop ALL --clearenv --ro-bind /syft/prefix/syft /syft --ro-bind /sdk-py313 /sdk --bind /syft/smoke-output /output --proc /proc --dev /dev --tmpfs /tmp --chdir /tmp --setenv HOME /tmp --setenv SYFT_CHECK_FOR_APP_UPDATE false /syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json (run under umask 077; this is manifests/stack.json:1406 inside the bubblewrap harness of blueprints/us-equities/supply-chain/README.md:112-126, scratch paths substituted)", + "command": "bwrap --unshare-all --die-with-parent --new-session --cap-drop ALL --clearenv --ro-bind /syft/prefix/syft /syft --ro-bind /sdk-py313 /sdk --bind /syft/smoke-output /output --proc /proc --dev /dev --tmpfs /tmp --chdir /tmp --setenv HOME /tmp --setenv SYFT_CHECK_FOR_APP_UPDATE false /syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json (run under umask 077; this is manifests/stack.json (component id syft, JSON pointer /commands) inside the bubblewrap harness of blueprints/us-equities/supply-chain/README.md:112-126, scratch paths substituted)", "exit": 0, "output_excerpt": "No stdout or stderr. smoke-output/runtime.syft.json (1230272 B): descriptor syft 1.54.0, schema 16.1.11, source equity-worker-sdk (directory), 36 artifacts, 166 files, 177 relationships. smoke-output/runtime.cdx.json (160043 B): CycloneDX 1.7, 123 components (36 library + 87 file), tool syft 1.54.0. The 36 name/version/purl tuples are identical to the 36 in blueprints/us-equities/supply-chain/receipt.json (the 1.52.0 acceptance, which also records 166 files, 177 relationships, 36 library + 87 file components, CycloneDX 1.7, schemaVersion 16.1.10); diff exit 0. CycloneDX library components equal the syft-json artifacts (diff exit 0).", "ran": true diff --git a/evidence/receipts/worktrunk-0800-qualification-20261003.json b/evidence/receipts/worktrunk-0800-qualification-20261003.json index ef6ce2888..4f952c706 100644 --- a/evidence/receipts/worktrunk-0800-qualification-20261003.json +++ b/evidence/receipts/worktrunk-0800-qualification-20261003.json @@ -42,7 +42,7 @@ "output": "wt v0.80.0" }, "smoke_recorded": { - "command": "wt list (the row's documented command, manifests/stack.json:1067-1069). Binary: /worktrunk-x86_64-unknown-linux-musl/wt. cwd: /worktrunk/smoke/repo, a one-commit synthetic scratch repo (not 0c/base). Run as env -i with HOME, XDG_*, WORKTRUNK_CONFIG_PATH and WORKTRUNK_SYSTEM_CONFIG_PATH in the scratch dir, GIT_CONFIG_GLOBAL=/dev/null, GIT_CONFIG_NOSYSTEM=1, stdin /dev/null.", + "command": "wt list (the row's documented command, manifests/stack.json (component id worktrunk, JSON pointer /commands)). Binary: /worktrunk-x86_64-unknown-linux-musl/wt. cwd: /worktrunk/smoke/repo, a one-commit synthetic scratch repo (not 0c/base). Run as env -i with HOME, XDG_*, WORKTRUNK_CONFIG_PATH and WORKTRUNK_SYSTEM_CONFIG_PATH in the scratch dir, GIT_CONFIG_GLOBAL=/dev/null, GIT_CONFIG_NOSYSTEM=1, stdin /dev/null.", "exit": 0, "output_excerpt": " Branch Status HEAD\u00b1 main\u2195 main\u2026\u00b1 Remote\u21c5 Path Commit Age Message\n@ main ^ . 54a02d5 1w synthetic fixture\n\n\u25cb Showing 1 worktree", "ran": true diff --git a/observability/collector/README.md b/observability/collector/README.md index f2b5ae55b..9b6ac8d40 100644 --- a/observability/collector/README.md +++ b/observability/collector/README.md @@ -3,7 +3,7 @@ Pinned distribution: `otelcol-contrib` **0.162.0**, Linux amd64, from the official [release](https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.162.0). Archive SHA256: `fcc063749f730f8c21fe29f2d340ff174f5f1c5885bd3156fb6c985a3036fcc3`. -The downloaded publisher `.sha256` file matched before extraction. The [2026-10-03 scratch qualification](../../evidence/receipts/otelcol-contrib-0162-qualification-20261003.json) ran `--version` and `validate`; prior runtime tests below retain their 0.161.0 scope. No host service was switched. +The downloaded publisher `.sha256` file matched before extraction. The [2026-10-03 scratch qualification](../../evidence/receipts/otelcol-contrib-0162-qualification-20261003.json) ran `--version` and `validate`. The [R642 native checks](../../evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json) also exercise the current logs, metrics and SDK fixtures on 0.162.0 with zero native skips; earlier dated runtime observations retain their 0.161.0 scope. No host service was switched. These are upstream installation commands for a new explicit installation path. Do not overwrite an existing installation or customized configuration. @@ -114,7 +114,7 @@ missing telemetry remains unknown. Validation: `python3 -m unittest tests.test_observability_run_correlation -v`. The always-on allowlist regression fails if either required field is dropped. -With PyYAML and the documented Collector **0.161.0** and Loki **3.7.8** binaries, +With PyYAML and the current Collector **0.162.0** and Loki **3.7.8** binaries, the native test sends synthetic OTLP records through the committed logs processors and exporters to isolated loopback services. It checks workflow arm token sums, matching resource/event copies of the run key, whole-run prefix and @@ -127,6 +127,15 @@ not a pass: run them with an interpreter that has PyYAML and confirm zero skips. This is **local integration with synthetic fixtures**; it is not a new provider run, an unchanged upstream test suite or proof of deployment on the active host. +**Current selector, 2026-10-03:** the native Collector tests read the +`opentelemetry-collector-contrib` version from `manifests/stack.json`. Their +default executable is +`$HOME/.local/share/codex-ecosystem/tools/otelcol-/otelcol-contrib`. +For an isolated candidate installation, set `OTELCOL_TEST_BIN` to its absolute +executable path and confirm `--version` before running the same tests. This +overrides only the test process; it does not replace a host service. Dated +0.161.0 source reviews and receipts below keep their original scope. + **Dated clarification, 2026-09-27:** base `ec27a300` already kept the resource run key and `workflow.run_id` (added in #366, `a464d288`, after #364 merged at `c71d66d0`); `tool_use_id` and `cost_usd` were still missing. The historical diff --git a/observability/paper-trading-live/collector-paper-trading.yaml b/observability/paper-trading-live/collector-paper-trading.yaml index 0f16161f3..c215085cc 100644 --- a/observability/paper-trading-live/collector-paper-trading.yaml +++ b/observability/paper-trading-live/collector-paper-trading.yaml @@ -1,4 +1,4 @@ -# Merge into the ecosystem OpenTelemetry Collector config (otelcol-contrib 0.162.0). +# Merge into the ecosystem OpenTelemetry Collector config (otelcol-contrib 0.161.0). # Paper-trading run records -> local Loki. Bodies are kept (they are the manifest); # account identifiers and AccountState balances/margins are redacted before export. Paths use the collector user's HOME. receivers: diff --git a/recipes/native-upgrades-20260921.md b/recipes/native-upgrades-20260921.md index d1c05ec0c..dcb8241c1 100644 --- a/recipes/native-upgrades-20260921.md +++ b/recipes/native-upgrades-20260921.md @@ -13,6 +13,20 @@ model, hook and service settings were not changed by these upgrades. | OpenResearch | [0.2.7](https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7), 24e404ecbe19cb9184ea8177e8e9f90d4f3205b0 | Three-paper discovery, complete selected paper retrieval, seven unchanged Markdown tests | | Worktrunk | [0.79.0](https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0), 5ba6f148e8505c20794f2d8bc706aa4f26335c95 | Disposable worktree create/list/remove and source-backed child-directory comparison | +**Current pins, 2026-10-03:** OpenResearch is now +[0.2.15](https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15), commit +`ee36ef0333ca3c533eace915f1bec322a1efde1c`, and Worktrunk is +[0.80.0](https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0), commit +`b49ca7eea9b03145791a5b94eccaf9c59412ed37`. +Use the current [installation rows](README.md#component-catalog-install-and-check) and +[Linux artifact pins](../adoption/pins-linux-x86_64.json); the +[W1 decision](../docs/decisions/2026-10-03-currency-wave-w1.md) links their +qualification receipts and rollback boundary. OpenResearch's new receipt +establishes version and integrity only; its live discovery/paper smoke was not +run. Worktrunk's new receipt covers `wt list`; create/remove and dirty-refusal +were not repeated. The September 21 table and outputs below remain dated +acceptance and rollback references. + ## Installation Choose an explicit user-owned `NATIVE_TOOLS` prefix. Preserve lockfiles and diff --git a/tests/test_blind_checkout.py b/tests/test_blind_checkout.py index ae14efb73..790c47f20 100644 --- a/tests/test_blind_checkout.py +++ b/tests/test_blind_checkout.py @@ -919,6 +919,25 @@ def test_prose_exposure_reads_json_string_values(self): "scored": True, "cited_files": ["evidence/receipt.json"], "export_files": ["evidence/broken.json", "evidence/log.jsonl", "evidence/receipt.json"]}) + def test_prose_exposure_skips_a_json_value_too_long_to_name_a_file(self): + # 2026-10-03, #642 hosted validate: a cited receipt's output excerpt held a one-line JSON document longer + # than NAME_MAX, bare_reference() kept it as one token, and Path.is_file() raised ENAMETOOLONG instead of + # answering False. A value that cannot name a file is not a reference. + isolation = load_module("export_isolation_check", "export_isolation_check.py") + scratch = Path(tempfile.mkdtemp()) + self.addCleanup(shutil.rmtree, scratch) + packets, export = scratch / "packets", scratch / "export" + (export / "evidence").mkdir(parents=True) + packets.mkdir() + (packets / "foundation__layer.json").write_text(json.dumps({"candidates": [ + {"key": "c1", "name": "Worktrunk", "repository": "https://github.com/acme/worktrunk", "adopted": True, + "evidence_refs": ["evidence/receipt.json"]}]}), encoding="utf-8") + long_value = json.dumps({"session_tokens_saved": 0, "padding": "x" * 400}, separators=(",", ":")) + self.assertIsNone(re.search(r"\s", long_value)) + (export / "evidence" / "receipt.json").write_text(json.dumps({"output_excerpt": long_value}), encoding="utf-8") + report = isolation.prose_exposure(export, packets, {"foundation::layer": [("github.com/acme/worktrunk", "")]}) + self.assertTrue(report["foundation::layer"]["scored"]) + def test_an_exact_component_id_picks_one_of_two_candidates_of_one_repository(self): # Codex review of #145 at 68e74f2c: alpaca-py and data-alpaca-py share alpacahq/alpaca-py, and normalizing # both to alpaca-py made a verdict for one match both. diff --git a/tests/test_observability_run_correlation.py b/tests/test_observability_run_correlation.py index d50b8f4e8..0b09b53da 100644 --- a/tests/test_observability_run_correlation.py +++ b/tests/test_observability_run_correlation.py @@ -29,6 +29,7 @@ from __future__ import annotations import json +import os import re import socket import subprocess @@ -44,7 +45,11 @@ COLLECTOR = ROOT / "observability/collector/collector.yaml" LOKI_CONFIG = ROOT / "observability/backends/templates/ecosystem-loki.yml.example" TOOLS = Path.home() / ".local/share/codex-ecosystem/tools" -OTELCOL = TOOLS / "otelcol-0.161.0/otelcol-contrib" +OTELCOL_VERSION = next(component["version"] for component in + json.loads((ROOT / "manifests/stack.json").read_text())["components"] + if component["id"] == "opentelemetry-collector-contrib") +OTELCOL = Path(os.environ.get("OTELCOL_TEST_BIN", str(TOOLS / + f"otelcol-{OTELCOL_VERSION}/otelcol-contrib"))) LOKI = TOOLS / "ecosystem-loki-3.7.8/loki-linux-amd64" try: @@ -156,7 +161,7 @@ def otlp_attributes(values): @unittest.skipUnless(yaml and OTELCOL.exists() and LOKI.exists(), - "requires PyYAML, otelcol-contrib 0.161.0 and Loki 3.7.8 at documented paths") + f"requires PyYAML, otelcol-contrib {OTELCOL_VERSION} and Loki 3.7.8; set OTELCOL_TEST_BIN for a scratch install") class NativeRunCorrelationTests(unittest.TestCase): """Synthetic OTLP -> native Collector -> native Loki, on isolated loopback ports.""" diff --git a/tests/test_observability_tool_names.py b/tests/test_observability_tool_names.py index a1bf835af..07a0a2fa8 100644 --- a/tests/test_observability_tool_names.py +++ b/tests/test_observability_tool_names.py @@ -2,13 +2,14 @@ (observability/collector/README.md#tool-mcp-skill-and-subagent-invoke-rates). Structural checks always run (the YAML ones need PyYAML). One class runs the committed logs pipeline on the pinned -otelcol-contrib 0.161.0 with synthetic OTLP log records when the binary is installed at its documented path, and +otelcol-contrib version in manifests/stack.json with synthetic OTLP log records when the binary is available, and skips otherwise. It is a local integration check on synthetic data, not a model run or host acceptance; the replay of real Claude Code and Codex captures and the post-apply host proof are recorded separately. """ from __future__ import annotations import json +import os import re import socket import subprocess @@ -26,7 +27,11 @@ CLAUDE_TEMPLATES = (ROOT / "observability/collector/claude-settings.json.example", ROOT / "adoption/templates/claude.settings.template.json") CODEX_TEMPLATE = ROOT / "adoption/templates/codex.config.template.toml" -OTELCOL = Path.home() / ".local/share/codex-ecosystem/tools/otelcol-0.161.0/otelcol-contrib" # README pins 0.161.0 +OTELCOL_VERSION = next(component["version"] for component in + json.loads((ROOT / "manifests/stack.json").read_text())["components"] + if component["id"] == "opentelemetry-collector-contrib") +OTELCOL = Path(os.environ.get("OTELCOL_TEST_BIN", str(Path.home() / + f".local/share/codex-ecosystem/tools/otelcol-{OTELCOL_VERSION}/otelcol-contrib"))) CONTENT_KEYS = ["tool_parameters", "tool_input", "arguments", "output", "content", "error"] DERIVED_KEYS = ["tool_family", "actor", "shell_rtk", "tool_details", "client"] @@ -226,7 +231,8 @@ def otlp_attrs(mapping): return [{"key": k, "value": {"stringValue": v}} for k, v in mapping.items()] -@unittest.skipUnless(OTELCOL.exists() and HAVE_YAML, "otelcol-contrib 0.161.0 not installed at the documented path") +@unittest.skipUnless(OTELCOL.exists() and HAVE_YAML, + f"requires PyYAML and otelcol-contrib {OTELCOL_VERSION}; set OTELCOL_TEST_BIN for a scratch install") class NativeCollectorTests(unittest.TestCase): """The committed logs pipeline on the pinned otelcol-contrib, with synthetic OTLP JSON (no model call).""" diff --git a/tests/test_observability_writer_identity.py b/tests/test_observability_writer_identity.py index 01cd98089..3bc0e89f2 100644 --- a/tests/test_observability_writer_identity.py +++ b/tests/test_observability_writer_identity.py @@ -33,7 +33,11 @@ _TOOLS = Path.home() / ".local/share/codex-ecosystem/tools" PROMTOOL = _TOOLS / f"ecosystem-prometheus-{_PINNED['prometheus']}/promtool" PROMETHEUS = _TOOLS / f"ecosystem-prometheus-{_PINNED['prometheus']}/prometheus" -OTELCOL = _TOOLS / "otelcol-0.161.0/otelcol-contrib" # observability/collector/README.md pins 0.161.0 +OTELCOL_VERSION = next(component["version"] for component in + json.loads((ROOT / "manifests/stack.json").read_text())["components"] + if component["id"] == "opentelemetry-collector-contrib") +OTELCOL = Path(os.environ.get("OTELCOL_TEST_BIN", str(_TOOLS / + f"otelcol-{OTELCOL_VERSION}/otelcol-contrib"))) try: import yaml @@ -321,7 +325,8 @@ def free_port() -> int: return probe.getsockname()[1] -@unittest.skipUnless(OTELCOL.exists() and HAVE_YAML, "otelcol-contrib 0.161.0 not installed at the documented path") +@unittest.skipUnless(OTELCOL.exists() and HAVE_YAML, + f"requires PyYAML and otelcol-contrib {OTELCOL_VERSION}; set OTELCOL_TEST_BIN for a scratch install") class NativeCollectorTests(unittest.TestCase): """The committed metrics pipeline on the pinned otelcol-contrib, with synthetic OTLP JSON (no model call).""" diff --git a/tests/test_render_config.py b/tests/test_render_config.py index 4eeea5a79..1e12ecd74 100644 --- a/tests/test_render_config.py +++ b/tests/test_render_config.py @@ -82,7 +82,7 @@ def test_templates_round_trip_with_string_template_substitute(self): def test_hud_statusline_requires_an_installed_entry(self): # Upstream claude-hud v0.10.0 scripts/statusline.mjs checks that the - # selected entry exists. A missing plugin must never fall back to the + # newest version with an entry is selected. A missing plugin must never fall back to the # open project's dist/index.js during installation or rollback. ecosystem = self.tmp_path / "ecosystem" node = ecosystem / "bin" / "node" @@ -116,6 +116,13 @@ def invoke(): result = invoke() self.assertEqual(result.returncode, 0, result.stderr) self.assertEqual(result.stdout, "") + older_entry = plugin.parent / "0.9.0" / "dist" / "index.js" + older_entry.parent.mkdir(parents=True) + older_entry.write_text("complete older plugin fixture\n") + with self.subTest(plugin="incomplete_newer_with_complete_older"): + result = invoke() + self.assertEqual(result.returncode, 0, result.stderr) + self.assertEqual(result.stdout, str(older_entry) + "\n") entry = plugin / "dist" / "index.js" entry.write_text("installed plugin fixture\n") with self.subTest(plugin="installed"): diff --git a/tests/test_sdk_usage_scope.py b/tests/test_sdk_usage_scope.py index 15e282f01..5aadc58f0 100644 --- a/tests/test_sdk_usage_scope.py +++ b/tests/test_sdk_usage_scope.py @@ -25,7 +25,7 @@ @unittest.skipUnless(native.yaml and native.OTELCOL.exists() and native.LOKI.exists(), - "requires PyYAML, otelcol-contrib 0.161.0 and Loki 3.7.8") + f"requires PyYAML, otelcol-contrib {native.OTELCOL_VERSION} and Loki 3.7.8; set OTELCOL_TEST_BIN for a scratch install") class NativeSDKUsageScopeTests(unittest.TestCase): """Exercise the actual SDK file receiver, processors, and Loki aggregation.""" diff --git a/tools/sota-convergence/export_isolation_check.py b/tools/sota-convergence/export_isolation_check.py index e10002af8..e894f64ae 100644 --- a/tools/sota-convergence/export_isolation_check.py +++ b/tools/sota-convergence/export_isolation_check.py @@ -33,6 +33,7 @@ import argparse import hashlib import json +import os import re import sys from pathlib import Path @@ -516,7 +517,10 @@ def prose_exposure(export_dir: Path, packets_dir: Path, winners: dict, packet_ke cited = set() for ref in refs: path = export_dir / ref - cited |= {path} if path.is_file() else ({q for q in path.rglob("*") if q.is_file()} if path.is_dir() else set()) + # os.path.isfile/isdir answer False for a value that cannot name a file (ENAMETOOLONG, NUL), where + # Path.is_file/is_dir raise on Python 3.13. + cited |= {path} if os.path.isfile(path) else ({q for q in path.rglob("*") if q.is_file()} + if os.path.isdir(path) else set()) for path in list(cited): if path.suffix == ".json": try: @@ -524,7 +528,7 @@ def prose_exposure(export_dir: Path, packets_dir: Path, winners: dict, packet_ke except (OSError, UnicodeError, ValueError): continue cited |= {export_dir / bare for bare in (bare_reference(v) for v in values) - if bare and (export_dir / bare).is_file()} + if bare and os.path.isfile(export_dir / bare)} exposing = sorted(path.relative_to(export_dir).as_posix() for path, found in statements.items() if any(_statement_exposes(text, headed, winner_matchers, other_matchers) for text, headed in found)) From 2d6f49233fa15e4993819c718d131bc6c10e5125 Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 03:37:18 -0400 Subject: [PATCH 04/50] Re-register the W1 review-round files (hot-file protocol, last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 75 ++++++++++++++++++++++------------------- 1 file changed, 40 insertions(+), 35 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 473a70e0e..e76e97b89 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4544,8 +4544,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "34af3ebea418d513974798d99fda7ce4c7bf15f324d72e95d3dcbaafe77b0f0c", - "bytes": 13112 + "sha256": "5903c20f70bdc9c308020f7f7b5a48f0f2a1a1da71c9260df1c5c86eae5cb9f9", + "bytes": 13239 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -15955,8 +15955,8 @@ }, { "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "104573cffd9f10cd25cf3069044ceffc3f167e39b8ad86dee916b9bf019c55b7", - "bytes": 14492 + "sha256": "8478ca3a2b6db1471a91ddaf1225e30c80bff433b0295b84a9b83ac95e14cc93", + "bytes": 20359 }, { "path": "docs/direct-results.md", @@ -16040,8 +16040,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "defe70a1d1e4bb7acb094a1fd339d68931a120c25ec2f984d1e2a6251d087246", - "bytes": 39778 + "sha256": "f6cce9905dc4e182ab7106be523ba8caf4622d1cf976ae8ae379399996c006ef", + "bytes": 40049 }, { "path": "docs/full-stack-convergence.md", @@ -17935,8 +17935,13 @@ }, { "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", - "sha256": "2c6b027eab8daac79c7d9a9699b3f9242c45c12ed6a36072099d7fce46461062", - "bytes": 25082 + "sha256": "6cadeabcb90fa7440a72538f216cbf031106a57cb9b6d7c1155674ec3e3fc963", + "bytes": 25075 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", + "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", + "bytes": 26125 }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", @@ -47970,8 +47975,8 @@ }, { "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", - "sha256": "c7e09ae0997038440c5e987f182e6df3a442bcd24893247e78b98bb1747dbbe0", - "bytes": 10041 + "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", + "bytes": 10611 }, { "path": "evidence/receipts/claude-max-default-effort-20260929.json", @@ -48195,8 +48200,8 @@ }, { "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", - "sha256": "e0e4f8e4a520feed7063ff459a043546085853060f5104c5aa827ec72bb3bea7", - "bytes": 9678 + "sha256": "c7ace6e12522585e47cfea8a31d702e5656446e7574507218b605235d82aa5b5", + "bytes": 9779 }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", @@ -48205,8 +48210,8 @@ }, { "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", - "sha256": "c315511e5a9ae286cd633492fecb0aabc4ae6ba1a64b7f75d27d3f49e5de4c7d", - "bytes": 7976 + "sha256": "1a2f88df967ffc3b460bad86c0026f433aee7ddaf333a7e5da5520b1cd2cb37a", + "bytes": 8409 }, { "path": "evidence/receipts/memory-landscape-20260921.json", @@ -48460,8 +48465,8 @@ }, { "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", - "sha256": "b9fa82bdf1c29918712d946860176fb16060ca54a748d594ef930c0f55a9779a", - "bytes": 7129 + "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", + "bytes": 7517 }, { "path": "evidence/receipts/osv-oauthlib-pyjwt-reachability-20260929.json", @@ -48560,8 +48565,8 @@ }, { "path": "evidence/receipts/syft-1540-qualification-20261003.json", - "sha256": "d47ea459b15e9bc3b10f06e60bcbfd1a24d6509af2a28d6120351078c2424e4f", - "bytes": 7907 + "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", + "bytes": 7946 }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", @@ -48640,8 +48645,8 @@ }, { "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", - "sha256": "2963fee5cebb9f3d0dd6bb220bfcc5b29e0764e1fba245e6540009930de95702", - "bytes": 6616 + "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", + "bytes": 6655 }, { "path": "evidence/receipts/worktrunk-list.json", @@ -49115,8 +49120,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "3aae043c4b175ef1a9de9774033c2e178deacac3f9df972a51ac3bbf3654f5e1", - "bytes": 41808 + "sha256": "3bc79d96a798b25d00b458094a27c5f9c08b195012c6796578f951d59b6d21e1", + "bytes": 42556 }, { "path": "observability/collector/claude-settings.json.example", @@ -49275,7 +49280,7 @@ }, { "path": "observability/paper-trading-live/collector-paper-trading.yaml", - "sha256": "f4af2a8c0cfbf72ec1a3895d36d3a1ea24fd68bd17295f035349d937aeb5fd95", + "sha256": "638dd84ff0ed6cae40bfe5c53922e9f57f80ac44fc10b99d76e23432eaf2f4bf", "bytes": 2942 }, { @@ -49320,8 +49325,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", - "bytes": 5706 + "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", + "bytes": 6586 }, { "path": "recipes/saturation-sweep.md", @@ -50280,18 +50285,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", - "bytes": 34089 + "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", + "bytes": 34441 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "a6c2324600d817f1fdff5975f713fbd65d08735cc0410001211ff7ae98c07526", - "bytes": 24367 + "sha256": "665887ccc447ea4105fd16459b265662132b72511516f5c9c8f6da075ea79fb2", + "bytes": 24721 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "ef64ba46907134593f0c05ea9376820f1524ccffc465396746c5a329920a91f4", - "bytes": 30907 + "sha256": "6e247ddf08daae8a7bd85eba43f28e22158f7d0d26e4236b357392a7d56be9b8", + "bytes": 31223 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -50390,8 +50395,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "34e49d029c39e916c7256361bad8226acdec2b3ea47a445285bc572f93c7e122", - "bytes": 45368 + "sha256": "e5a57a8b6331514515f3e81733eca9ca9164eff83f2a3d2fd7731ddbdbf1e15c", + "bytes": 45807 }, { "path": "tests/test_research_efficiency.py", @@ -50430,8 +50435,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", - "bytes": 9712 + "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", + "bytes": 9774 }, { "path": "tests/test_secret_path_guard.py", From c3d84aa8918662a3602a92f95f021bc5b9f3c06d Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 04:34:16 -0400 Subject: [PATCH 05/50] W1 bot-review round: hold mcporter at 0.14.1, split selected and deployed Collector, HUD upgrade path, timed runs Codex review-bot threads on ea10c096: - mcporter 0.14.2 is held at 0.14.1: its receipt recorded `npm ls --all` ELSPROBLEMS (bundled core 2.2.0 against resolved server 2.3.0) and the persistent daemon/serve path used by foundation-cpu and token-efficiency was not exercised. The 0.14.2 receipt stays as a dated compatibility_attempt with no current-pin link; the decision records the hold and its overturn condition. W1 now moves eight components. - observability/README.md separates the deployed Collector 0.161.0 (with its live traffic, restart and storage evidence) from the selected 0.162.0 (scratch qualification only; no host service switched). - adoption/bootstrap.md documents the claude-hud v0.8.0 -> v0.10.0 transition for existing hosts (marketplace update plus `claude plugin update claude-hud@claude-hud`, https://code.claude.com/docs/en/plugins/install), marked "documented, host verification pending". - The four integration commands were re-run with UTC start and end times; the earlier untimed entries stay as earlier attempts. - adoption/manifest.json recipe_map and the audit mirrors now point the moved components at recipes carrying their current pins. Acceptance: 325 tests OK (3 optional skips), validators, generated-report checks, registry tests, staged gitleaks. Co-Authored-By: Claude Opus 5.5 --- adoption/bootstrap.md | 26 +- adoption/manifest.json | 6 +- adoption/pins-linux-x86_64.json | 8 +- adoption/pins-macos-arm64.json | 2 +- adoption/platforms/linux-wsl2.md | 2 +- .../token-native-focus/saturation-audit.json | 29 +- catalogs/landscape/new-host-grand-list.json | 14 +- catalogs/landscape/upstream-snapshot.json | 105 +++++- docs/decisions/2026-10-03-currency-wave-w1.md | 140 +++++++- docs/new-host-grand-list.md | 2 +- docs/token-efficiency-stack.json | 4 +- .../native-checks.json | 268 +++++++++++++- .../review-bot-repair-checks.json | 326 ++++++++++++++++++ ...-inspector-290-qualification-20261003.json | 7 +- .../mcporter-0142-qualification-20261003.json | 35 +- manifests/stack.json | 12 +- observability/README.md | 3 +- recipes/README.md | 32 +- scripts/native_token_ci.py | 2 +- tests/test_adoption_bootstrap_macos.py | 2 +- tools/token-report/README.md | 4 +- 21 files changed, 941 insertions(+), 88 deletions(-) create mode 100644 evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json diff --git a/adoption/bootstrap.md b/adoption/bootstrap.md index 41e9d72e1..6f6d3c126 100644 --- a/adoption/bootstrap.md +++ b/adoption/bootstrap.md @@ -165,7 +165,7 @@ GitHub-hosted macOS runner; see `pins-linux-x86_64.json` (the rtk and headroom `install_note` text and its `claude-code` entry, 2.1.281 at that tag and 2.1.284 on main) and `adoption/bootstrap-linux.sh` changed after `v2026.09.26`: its rtk config reminder now also asks the installed `rtk hook check`; `install_npm` now adds `--ignore-scripts` for a pin with `ignore_scripts: true` (socraticode), a field the tag's script ignores, so there npm runs every install script in socraticode's dependency tree; and `install_uv_tool` now downloads a uv-tool pin's wheel `url` (headroom), verifies its `sha256` before uv runs and installs that file as `'headroom-ai[mcp] @ file://'`, where the tag's script resolves `headroom-ai[mcp]==0.37.0` from the index and never reads the wheel or its hash (the markitdown and tavily-cli sdist hashes stay cross-checks). `pins-linux-x86_64.json` changed after `v2026.09.26.2` in its `codex` entry: 0.155.1 moves to 0.159.2 (URL, hashes and note; 0.157.1 from 2026-09-26, 0.159.2 from 2026-09-30), so a host at that tag installs 0.155.1, and in its `claude-code` entry: 2.1.281 moves to 2.1.284 (URL, hashes and note), so a host at that tag installs 2.1.281. `adoption/templates/codex.config.template.toml` changed after the same tag to set `daemon_auto_start = false`: 0.157.1's first interactive launch otherwise installs a self-updating app-server daemon (see `evidence/receipts/codex-01571-qualification-20260926.json`; 0.159.2 still lists the feature as stable and on, `evidence/receipts/codex-01592-qualification-20260930.json`). It changed again on 2026-09-30 to default to `gpt-6.1-sol`, which Codex's bundled model catalog carries from `rust-v0.159.1` on (0.157.1's has no such entry). The macOS pin stays at 0.155.1: macOS needs its own 0.159.x qualification before the template default applies there. - On 2026-10-03, `pins-linux-x86_64.json` changed again after `v2026.09.26.2`: `mcporter` 0.14.1 to 0.14.2 and `orx` 0.2.7 to 0.2.15 (URLs, hashes and install notes). A host at that tag retains 0.14.1 and 0.2.7. The W1 scratch qualification and its functional limits are in [the dated decision](../docs/decisions/2026-10-03-currency-wave-w1.md). The Claude HUD marketplace recipe and template now select v0.10.0 at `75683c6de1ac07f6bbef00d739001679dba0740c`; hosts at the tag keep v0.8.0. + On 2026-10-03, `pins-linux-x86_64.json` changed again after `v2026.09.26.2`: `orx` 0.2.7 to 0.2.15 (URLs, hashes and install notes). A host at that tag retains OpenResearch 0.2.7. mcporter stays at the accepted Linux 0.14.1 pin; its 0.14.2 compatibility attempt is held. The W1 scratch qualification and its functional limits are in [the dated decision](../docs/decisions/2026-10-03-currency-wave-w1.md). The Claude HUD marketplace recipe and template now select v0.10.0 at `75683c6de1ac07f6bbef00d739001679dba0740c`; hosts at the tag keep v0.8.0. `pins-linux-x86_64.json` and `adoption/bootstrap-linux.sh` changed after `v2026.09.25.2`. The Linux pins file gained `repomix`, `toon`, @@ -585,6 +585,30 @@ GitHub-hosted macOS runner; see claude plugin marketplace add openai/codex-plugin-cc@v1.0.6 --scope user claude plugin install codex@openai-codex --scope user --json ``` + + **Upgrade an existing claude-hud 0.8.0 installation:** first apply the + template's `extraKnownMarketplaces.claude-hud.source.ref` value `v0.10.0` + in the host's user settings, retaining the other marketplace declarations. + [The loading reference](https://code.claude.com/docs/en/plugins/loading#plugins-and-marketplaces-that-arent-on-disk-at-session-start) + documents re-fetching a changed declared source at the next native session + start. Let that synchronization finish before updating. A marketplace + refresh follows its configured tag; it does not advance a source that still + names `v0.8.0` ([CLI reference](https://code.claude.com/docs/en/plugins/cli-reference#plugin-marketplace-update)). + Then refresh the retargeted marketplace and update the installed plugin: + ```sh + claude plugin marketplace update claude-hud + claude plugin update claude-hud@claude-hud --scope user + ``` + These are separate steps: the shell marketplace command refreshes the + listing, and the plugin command updates the installed plugin + ([Update plugins now](https://code.claude.com/docs/en/plugins/install#update-plugins-now)). + Restart Claude Code or run `/reload-plugins`, then use the revision check + below to compare the installed `gitCommitSha` with `75683c6de1ac07f6bbef00d739001679dba0740c`. + Status: **documented, host verification pending**. R642b checked the native + 2.1.288 command help with both `HOME` and `CLAUDE_CONFIG_DIR` in temporary + directories; it did not execute a marketplace or plugin update. A safe + offline reproduction of the GitHub-tag transition remains unverified. + Then compare the `gitCommitSha` that landed with the reviewed revisions in those rows (the check reads `$CLAUDE_CONFIG_DIR` when it is set, as Claude Code does). `context-mode`, installed from the default branch, also passes diff --git a/adoption/manifest.json b/adoption/manifest.json index 0d4c38350..376e1356c 100644 --- a/adoption/manifest.json +++ b/adoption/manifest.json @@ -158,7 +158,7 @@ "nextjs": "blueprints/convergence-practice/application-delivery/README.md", "ntfy": "observability/backends/README.md", "omniroute": "docs/foundation-stack.md", - "openresearch": "recipes/native-upgrades-20260921.md", + "openresearch": "recipes/README.md", "opentelemetry-collector-contrib": "observability/README.md", "otel-tui": "recipes/README.md", "pandas": "blueprints/us-equities/nanosecond-replay/README.md", @@ -181,12 +181,12 @@ "skfolio": "blueprints/us-equities/research-evaluation/README.md", "skills-ref": "recipes/README.md", "socraticode": "recipes/README.md", - "syft": "blueprints/us-equities/supply-chain/README.md", + "syft": "recipes/README.md", "systemd": "blueprints/us-equities/worker-supervision/README.md", "tavily-cli": "recipes/tavily.md", "toon": "recipes/README.md", "vllm": "recipes/README.md", - "worktrunk": "recipes/native-upgrades-20260921.md", + "worktrunk": "recipes/README.md", "zizmor": "blueprints/convergence-practice/ci-security/README.md" }, "profiles": [ diff --git a/adoption/pins-linux-x86_64.json b/adoption/pins-linux-x86_64.json index 765fb1e0e..ee4bb092c 100644 --- a/adoption/pins-linux-x86_64.json +++ b/adoption/pins-linux-x86_64.json @@ -129,11 +129,11 @@ }, { "id": "mcporter", - "version": "0.14.2", + "version": "0.14.1", "kind": "npm", - "url": "https://registry.npmjs.org/mcporter/-/mcporter-0.14.2.tgz", - "sha256": "f5baa5a02be64d5d75722c5739975eee79d393eb2761496f70a53474688f8f6b", - "install_note": "2026-10-03 W1 scratch qualification. Checked against four published sources, all matched. (1) npm registry dist.integrity sha512-3ajjKzPLe/39hN582XqMuOw3S9vHQfLpSBq72zVakT03xso3GDXHcht/eVLu/l2MDqulIOtLevnTKreUxymHJQ== equals `openssl dgst -sha512 -binary | base64` of the downloaded tarball, and dist.shasum ee7d91e7362e7dc5b44b5fcc5cfdea7cfaedb1fd equals sha1sum. (2) GitHub release v0.14.2 asset digest sha256:f5baa5a02be64d5d75722c5739975eee79d393eb2761496f70a53474688f8f6b for mcporter-0.14.2.tgz equals the local sha256sum; the release checksums.txt line matches (sha256sum -c: OK, exit 0); the release asset is byte-identical to the npm tarball (cmp exit 0); size 3585823 bytes. (3) npm SLSA provenance attestation (https://registry.npmjs.org/-/npm/v1/attestations/mcporter@0.14.2): subject sha512 dda8e32b...8725 equals the tarball sha512 hex, workflow .github/workflows/release.yml at refs/tags/v0.14.2, gitCommit aa0f55f9bffcde9d2070c86145f37d4dd3525f6c; the release provenance.json asset also names commit aa0f55f9 and the tgz sha256. (4) `npm audit signatures` exit 0: audited 40 packages, 40 verified registry signatures, 12 verified attestations. Receipt: evidence/receipts/mcporter-0142-qualification-20261003.json. This is isolated qualification evidence, not a host installation switch. Supported installation: npm install --global --prefix tools/mcporter-0.14.2 mcporter@0.14.2. Requires Node >=24 and ps on the daemon launcher PATH. Bundled client 2.2.0 is covered by the archive hash; other dependency ranges resolve at install time. The ad-hoc stdio canary passed; daemon and serve behavior remain unqualified.", + "url": "https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz", + "sha256": "8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2", + "install_note": "npm dist.integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ== matched, and the sha256 above equals the GitHub release v0.14.1 asset digest and its checksums.txt (checked 2026-09-25); `npm audit signatures` verified the registry signatures and mcporter's SLSA provenance (release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514). `npm install --global --prefix tools/mcporter-0.14.1 mcporter@0.14.1`, matching recipes/README.md. Requires Node >=24, and `ps` on the PATH of whatever launches the mcporter daemon: 0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps), and without it the daemon cannot connect keep-alive servers and `mcporter daemon stop` refuses. Qualified against 0.13.13 and switched on nativestack-5975wx-20260925 (evidence/receipts/mcporter-0141-qualification-20260925.json); that is one host's state, not evidence about any other Linux host.", "version_probe": { "method": "exec", "command": "mcporter", diff --git a/adoption/pins-macos-arm64.json b/adoption/pins-macos-arm64.json index 3f85a56d5..3e52e226e 100644 --- a/adoption/pins-macos-arm64.json +++ b/adoption/pins-macos-arm64.json @@ -2,7 +2,7 @@ "schema_version": 1, "reviewed_at": "2026-09-22", "platform": "macos-arm64", - "source": "Drafted for the macos-arm64-foundation profile on 2026-09-22, updated 2026-09-23, from a Linux workstation: no macOS host executed anything here. Every sha256 below was obtained from the publisher, never guessed. Node, uv, gh and ai-memory come from the publisher's own checksum file or .sha256 sidecar; llama.cpp and Qdrant publish no checksum file for these assets, so each asset's GitHub release `digest` field was read via `gh api repos///releases/tags/` and the asset was additionally downloaded to a scratch directory under $TMPDIR and re-hashed with sha256sum (both agreed). The npm registry tarballs pinned here before 2026-09-26 (codex, mcporter, context-mode, socraticode; claude-code was a fifth until 2026-09-23, when it became a `native` pin whose own checksum_ref records its verification) are byte-identical to what `npm view @ dist.integrity` reports, cross-checked by downloading each tarball to a scratch directory and independently sha256- and sha512-hashing it. context-mode is also byte-identical to its adoption/pins-linux-x86_64.json entry; codex, mcporter and socraticode were byte-identical when pinned (the Linux pins file gained its socraticode entry after v2026.09.25.2, later than this file's), but their Linux entries have since moved to newer versions (the exceptions below). codex additionally carries a `platform_dependency` (claude-code carried one too until its move to the native pin): the darwin-arm64 optional dependency npm itself resolves and installs alongside the pinned wrapper tarball, read 2026-09-23 with `npm view @ optionalDependencies` for its identity and `npm view @ dist.tarball`/`dist.integrity` for its url/integrity, each independently re-downloaded and sha256/sha512-hashed to confirm. It is never installed by trusting npm's own automatic resolution of it (unverified) or by reading back npm's install state afterward (measured directly on this project's own host: npm 11.19.0's `--global --prefix` install writes no lockfile anywhere under the prefix and no package.json `_integrity` field, nests a platform-specific optional dependency under the wrapper's own node_modules regardless of --omit=optional/--no-optional/NPM_CONFIG_OMIT=optional, and overwrites a pre-placed nested copy during its own install pass). adoption/bootstrap-macos.sh's install_platform_dependency instead fetches and SHA-256 verifies the platform tarball itself with the same fetch() every other pin uses, then OVERWRITES the unverified nested copy npm's own install just fetched at the exact path Node's own require.resolve (scoped to the wrapper's own directory, and matched against the exact expected nested path -- never trusted if it resolves anywhere else, since require.resolve's GLOBAL_FOLDERS fallback can point outside the prefix entirely) finds it from, falling back to a top-level alias only when nothing is nested there at all; it then re-verifies both the resolved path and the resolved package's own name against this pin's `resolved_package` before running `npm rebuild` to trigger any lifecycle script the wrapper's own --ignore-scripts install deferred. Versions match pins-linux-x86_64.json wherever the component is the same, except ai-memory (2.3.2 here, 2.4.1 there), mcporter (0.13.13 here, 0.14.2 there), codex (0.155.1 here, 0.157.1 there) and socraticode (1.14.0 here, 1.15.0 there since 2026-09-27), which stay at their earlier versions until a Mac qualifies the newer ones (tests/test_adoption_bootstrap_macos.py's MAC_PIN_LAGS_LINUX). 2026-09-26 addition, after the v2026.09.26 release: rtk, qmd, repomix, toon, ccusage, headroom, markitdown and serena close the rest of the `token-efficiency` profile's macOS pin gap (6 of its 14 components were pinned here before; adoption/README.md's coverage cell), each at its pins-linux-x86_64.json version. Each was re-verified on 2026-09-26 from a fresh download of the upstream artifact, retained in evidence/artifacts/macos-token-pins-20260926/digest-check.txt: rtk's darwin-arm64 tarball against the v0.50.0 release's own checksums.txt and the GitHub release asset digest; the four npm tarballs (qmd, repomix, toon, ccusage) against `npm view @` dist.integrity (sha512) and dist.shasum (sha1), byte-identical to their Linux pins (the same registry-tarball cross-check the npm pins above use); headroom's and markitdown's PyPI files against the PyPI JSON API's own sha256 digests; serena's commit through the GitHub commits API. ccusage has since moved to 20.0.26 on 2026-09-27, with the Linux pin: digest-check.txt covers only 20.0.24, and 20.0.26's digests were re-checked from a fresh registry download in evidence/receipts/ccusage-20026-qualification-20260927.json, which its entry's checksum_ref cites. qmd's `sqlite-vec-darwin-arm64` and ccusage's `@ccusage/ccusage-darwin-arm64` optional dependencies are documented, unpinned gaps like the `rolldown` note in the mcporter entry's install_note below, not new install machinery. headroom pins its `macosx_11_0_arm64` wheel: headroom-ai 0.37.0 publishes compiled abi3 wheels per platform plus a maturin (Rust) sdist that would need a local Rust build, and that wheel is its only arm64-compatible macOS wheel, so it is what uv installs on Apple Silicon. markitdown pins the same platform-independent sdist as the Linux pin (pure Python; uv installs its py3-none-any wheel). The bootstrap downloads headroom's wheel and verifies its sha256 with `shasum -a 256` before uv installs that local file (install_uv_tool's wheel path, ported from adoption/bootstrap-linux.sh after its #334 change); uv resolves markitdown from PyPI by name and version and does not check its sdist sha256, which stays an independent artifact cross-check. Both satisfy this file's fail-closed null-sha256 refusal. serena has no PyPI release of its declared 2.0.0.dev0 version, so it repeats the Linux pin's source pin: the 40-hex commit c6fbd1c5932df2494ffa0020af5a9fbe80b82143 on oraios/serena with a null sha256, the one documented exception in this file, as in the Linux pins file. adoption/bootstrap-macos.sh gained the `uv-tool` and `uv-tool-from-git` install kinds, whose two functions are copied verbatim from adoption/bootstrap-linux.sh, and a post-install rtk reminder whose config check is that script's four-entry exclude_commands text check, applied to ~/Library/Application Support/rtk/config.toml, the file rtk 0.50.0 reads on macOS (the rtk entry's install_note); tests/test_adoption_bootstrap_macos.py runs all three functions under a real bash 3.2. None of the eight new version_probe entries starts a server.", + "source": "Drafted for the macos-arm64-foundation profile on 2026-09-22, updated 2026-09-23, from a Linux workstation: no macOS host executed anything here. Every sha256 below was obtained from the publisher, never guessed. Node, uv, gh and ai-memory come from the publisher's own checksum file or .sha256 sidecar; llama.cpp and Qdrant publish no checksum file for these assets, so each asset's GitHub release `digest` field was read via `gh api repos///releases/tags/` and the asset was additionally downloaded to a scratch directory under $TMPDIR and re-hashed with sha256sum (both agreed). The npm registry tarballs pinned here before 2026-09-26 (codex, mcporter, context-mode, socraticode; claude-code was a fifth until 2026-09-23, when it became a `native` pin whose own checksum_ref records its verification) are byte-identical to what `npm view @ dist.integrity` reports, cross-checked by downloading each tarball to a scratch directory and independently sha256- and sha512-hashing it. context-mode is also byte-identical to its adoption/pins-linux-x86_64.json entry; codex, mcporter and socraticode were byte-identical when pinned (the Linux pins file gained its socraticode entry after v2026.09.25.2, later than this file's), but their Linux entries have since moved to newer versions (the exceptions below). codex additionally carries a `platform_dependency` (claude-code carried one too until its move to the native pin): the darwin-arm64 optional dependency npm itself resolves and installs alongside the pinned wrapper tarball, read 2026-09-23 with `npm view @ optionalDependencies` for its identity and `npm view @ dist.tarball`/`dist.integrity` for its url/integrity, each independently re-downloaded and sha256/sha512-hashed to confirm. It is never installed by trusting npm's own automatic resolution of it (unverified) or by reading back npm's install state afterward (measured directly on this project's own host: npm 11.19.0's `--global --prefix` install writes no lockfile anywhere under the prefix and no package.json `_integrity` field, nests a platform-specific optional dependency under the wrapper's own node_modules regardless of --omit=optional/--no-optional/NPM_CONFIG_OMIT=optional, and overwrites a pre-placed nested copy during its own install pass). adoption/bootstrap-macos.sh's install_platform_dependency instead fetches and SHA-256 verifies the platform tarball itself with the same fetch() every other pin uses, then OVERWRITES the unverified nested copy npm's own install just fetched at the exact path Node's own require.resolve (scoped to the wrapper's own directory, and matched against the exact expected nested path -- never trusted if it resolves anywhere else, since require.resolve's GLOBAL_FOLDERS fallback can point outside the prefix entirely) finds it from, falling back to a top-level alias only when nothing is nested there at all; it then re-verifies both the resolved path and the resolved package's own name against this pin's `resolved_package` before running `npm rebuild` to trigger any lifecycle script the wrapper's own --ignore-scripts install deferred. Versions match pins-linux-x86_64.json wherever the component is the same, except ai-memory (2.3.2 here, 2.4.1 there), mcporter (0.13.13 here, 0.14.1 there), codex (0.155.1 here, 0.157.1 there) and socraticode (1.14.0 here, 1.15.0 there since 2026-09-27), which stay at their earlier versions until a Mac qualifies the newer ones (tests/test_adoption_bootstrap_macos.py's MAC_PIN_LAGS_LINUX). 2026-09-26 addition, after the v2026.09.26 release: rtk, qmd, repomix, toon, ccusage, headroom, markitdown and serena close the rest of the `token-efficiency` profile's macOS pin gap (6 of its 14 components were pinned here before; adoption/README.md's coverage cell), each at its pins-linux-x86_64.json version. Each was re-verified on 2026-09-26 from a fresh download of the upstream artifact, retained in evidence/artifacts/macos-token-pins-20260926/digest-check.txt: rtk's darwin-arm64 tarball against the v0.50.0 release's own checksums.txt and the GitHub release asset digest; the four npm tarballs (qmd, repomix, toon, ccusage) against `npm view @` dist.integrity (sha512) and dist.shasum (sha1), byte-identical to their Linux pins (the same registry-tarball cross-check the npm pins above use); headroom's and markitdown's PyPI files against the PyPI JSON API's own sha256 digests; serena's commit through the GitHub commits API. ccusage has since moved to 20.0.26 on 2026-09-27, with the Linux pin: digest-check.txt covers only 20.0.24, and 20.0.26's digests were re-checked from a fresh registry download in evidence/receipts/ccusage-20026-qualification-20260927.json, which its entry's checksum_ref cites. qmd's `sqlite-vec-darwin-arm64` and ccusage's `@ccusage/ccusage-darwin-arm64` optional dependencies are documented, unpinned gaps like the `rolldown` note in the mcporter entry's install_note below, not new install machinery. headroom pins its `macosx_11_0_arm64` wheel: headroom-ai 0.37.0 publishes compiled abi3 wheels per platform plus a maturin (Rust) sdist that would need a local Rust build, and that wheel is its only arm64-compatible macOS wheel, so it is what uv installs on Apple Silicon. markitdown pins the same platform-independent sdist as the Linux pin (pure Python; uv installs its py3-none-any wheel). The bootstrap downloads headroom's wheel and verifies its sha256 with `shasum -a 256` before uv installs that local file (install_uv_tool's wheel path, ported from adoption/bootstrap-linux.sh after its #334 change); uv resolves markitdown from PyPI by name and version and does not check its sdist sha256, which stays an independent artifact cross-check. Both satisfy this file's fail-closed null-sha256 refusal. serena has no PyPI release of its declared 2.0.0.dev0 version, so it repeats the Linux pin's source pin: the 40-hex commit c6fbd1c5932df2494ffa0020af5a9fbe80b82143 on oraios/serena with a null sha256, the one documented exception in this file, as in the Linux pins file. adoption/bootstrap-macos.sh gained the `uv-tool` and `uv-tool-from-git` install kinds, whose two functions are copied verbatim from adoption/bootstrap-linux.sh, and a post-install rtk reminder whose config check is that script's four-entry exclude_commands text check, applied to ~/Library/Application Support/rtk/config.toml, the file rtk 0.50.0 reads on macOS (the rtk entry's install_note); tests/test_adoption_bootstrap_macos.py runs all three functions under a real bash 3.2. None of the eight new version_probe entries starts a server.", "tools": [ { "id": "node", diff --git a/adoption/platforms/linux-wsl2.md b/adoption/platforms/linux-wsl2.md index c63d1cb04..36d7ec8c4 100644 --- a/adoption/platforms/linux-wsl2.md +++ b/adoption/platforms/linux-wsl2.md @@ -112,7 +112,7 @@ itself evidence the WSL UVA gap closed. `token-efficiency` profile's Linux coverage (step 2 of [`adoption/bootstrap.md`](../bootstrap.md) has the details). Its `ai-memory` and `mcporter` pins also changed after `v2026.09.25.2` (2.3.2 to 2.4.1 and 0.13.13 to 0.14.1); before an existing ai-memory service restarts on 2.4.1, follow [upgrading an existing store](../../recipes/README.md#upgrading-an-existing-store). - On 2026-10-03, the Linux pins changed after `v2026.09.26.2` again: `mcporter` 0.14.1 to 0.14.2 and `orx` 0.2.7 to 0.2.15 (URL, hash and note); a host at that tag keeps the earlier versions. See [W1 qualification](../../docs/decisions/2026-10-03-currency-wave-w1.md) before treating scratch evidence as a host switch. + On 2026-10-03, the Linux pins changed after `v2026.09.26.2` again: `orx` 0.2.7 to 0.2.15 (URL, hash and note); a host at that tag keeps OpenResearch 0.2.7. mcporter remains at the accepted Linux 0.14.1 pin; its 0.14.2 compatibility attempt is held. See [W1 qualification](../../docs/decisions/2026-10-03-currency-wave-w1.md) before treating scratch evidence as a host switch. 2. Recreate the SDK only for the `research-runtime` profile using [`adoption/sdk/README.md`](../sdk/README.md)'s transitive lock; retain the same exact-match and uncached-reinstall checks as diff --git a/blueprints/token-native-focus/saturation-audit.json b/blueprints/token-native-focus/saturation-audit.json index d3023dc05..73ee02e41 100644 --- a/blueprints/token-native-focus/saturation-audit.json +++ b/blueprints/token-native-focus/saturation-audit.json @@ -4995,8 +4995,8 @@ }, { "component_id": "mcporter", - "repository": "https://github.com/openclaw/mcporter/tree/v0.14.2", - "version": "0.14.2", + "repository": "https://github.com/openclaw/mcporter/tree/v0.14.1", + "version": "0.14.1", "profile": "core", "role": "Native CLI bridge with persistent MCP daemon connection", "installation_assessment": "runtime present at retained native operation date", @@ -5046,11 +5046,6 @@ "id": "mcporter-0141-qualification-20260925", "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "kind": "native_cli_e2e" - }, - { - "id": "mcporter-0142-qualification-20261003", - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", - "kind": "native_cli_e2e" } ], "retained_operation_ids": [ @@ -5067,7 +5062,7 @@ "integration_mode": "Explicit native CLI, MCP or SDK operation for the selected task.", "lifecycle_evidence": { "assessment": "bounded_role_evidence", - "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability. Historical lifecycle observations remain bound to 0.14.1. W1 0.14.2 qualification is limited to the new receipt; no host switch or full lifecycle recertification occurred.", + "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability.", "all_optional_features_exercised": false }, "remaining_install_gap": null, @@ -5076,7 +5071,7 @@ "lifecycle_stages": { "install": { "status": "observed_installed", - "scope": "Dated native runtime/library availability is recorded. This does not by itself establish clean-prefix reinstall, uninstall or dependency rollback. W1 pin qualification does not recertify this historical stage at 0.14.2.", + "scope": "Dated native runtime/library availability is recorded. This does not by itself establish clean-prefix reinstall, uninstall or dependency rollback.", "evidence_refs": [ "evidence/receipts/component-history.json", "observability/restart-receipt.json", @@ -5085,29 +5080,29 @@ }, "use": { "status": "accepted_within_scope", - "scope": "Native fixture/SDK/transport operation with scope and checks in its operation receipts; not full-stack model acceptance. W1 pin qualification does not recertify this historical stage at 0.14.2.", + "scope": "Native fixture/SDK/transport operation with scope and checks in its operation receipts; not full-stack model acceptance.", "evidence_refs": [ "observability/restart-receipt.json" ] }, "persistence": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.14.2.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", "evidence_refs": [] }, "restart": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.14.2.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", "evidence_refs": [] }, "cleanup": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.14.2.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", "evidence_refs": [] }, "recovery": { "status": "not_established", - "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion. W1 pin qualification does not recertify this historical stage at 0.14.2.", + "scope": "No separately mapped acceptance for this stage; inspect the role recipe before a new host claims completion.", "evidence_refs": [] } }, @@ -5463,7 +5458,7 @@ "orx --no-telemetry paper \"${PAPER_ID}\" --full" ], "scope": "Use the selected native recipe only when its task applies.", - "recipe_document": "recipes/native-upgrades-20260921.md", + "recipe_document": "recipes/README.md", "lifecycle_guide": "adoption/lifecycle.md" }, "functional_evidence": { @@ -8451,7 +8446,7 @@ "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" ], "scope": "Use the selected native recipe only when its task applies.", - "recipe_document": "blueprints/us-equities/supply-chain/README.md", + "recipe_document": "recipes/README.md", "lifecycle_guide": "adoption/lifecycle.md" }, "functional_evidence": { @@ -9001,7 +8996,7 @@ "wt list" ], "scope": "Use the selected native recipe only when its task applies.", - "recipe_document": "recipes/native-upgrades-20260921.md", + "recipe_document": "recipes/README.md", "lifecycle_guide": "adoption/lifecycle.md" }, "functional_evidence": { diff --git a/catalogs/landscape/new-host-grand-list.json b/catalogs/landscape/new-host-grand-list.json index 7022611c9..8c43efb26 100644 --- a/catalogs/landscape/new-host-grand-list.json +++ b/catalogs/landscape/new-host-grand-list.json @@ -489,7 +489,7 @@ "pin_behind_upstream": false, "manifest_joined": true, "install_profiles": [], - "recipe": "blueprints/us-equities/supply-chain/README.md", + "recipe": "recipes/README.md", "platforms": { "linux-wsl2-x86_64": { "e2e_state": "host_verified", @@ -774,7 +774,7 @@ "pin_behind_upstream": false, "manifest_joined": true, "install_profiles": [], - "recipe": "recipes/native-upgrades-20260921.md", + "recipe": "recipes/README.md", "platforms": { "linux-wsl2-x86_64": { "e2e_state": "host_verified", @@ -1095,7 +1095,7 @@ "pin_behind_upstream": false, "manifest_joined": true, "install_profiles": [], - "recipe": "recipes/native-upgrades-20260921.md", + "recipe": "recipes/README.md", "platforms": { "linux-wsl2-x86_64": { "e2e_state": "host_verified", @@ -1182,7 +1182,7 @@ "linux-wsl2-x86_64": { "e2e_state": "host_verified", "bootstrap_pinned": true, - "bootstrap_version": "0.14.2" + "bootstrap_version": "0.14.1" }, "macos-arm64": { "e2e_state": "untested", @@ -2048,7 +2048,7 @@ "pin_behind_upstream": true, "manifest_joined": true, "install_profiles": [], - "recipe": "recipes/native-upgrades-20260921.md", + "recipe": "recipes/README.md", "platforms": { "linux-wsl2-x86_64": { "e2e_state": "conditional", @@ -2136,7 +2136,7 @@ "pin_behind_upstream": false, "manifest_joined": true, "install_profiles": [], - "recipe": "recipes/native-upgrades-20260921.md", + "recipe": "recipes/README.md", "platforms": { "linux-wsl2-x86_64": { "e2e_state": "host_verified", @@ -2906,7 +2906,7 @@ "pin_behind_upstream": false, "manifest_joined": true, "install_profiles": [], - "recipe": "blueprints/us-equities/supply-chain/README.md", + "recipe": "recipes/README.md", "platforms": { "linux-wsl2-x86_64": { "e2e_state": "host_verified", diff --git a/catalogs/landscape/upstream-snapshot.json b/catalogs/landscape/upstream-snapshot.json index 53d8a40f6..0590eecab 100644 --- a/catalogs/landscape/upstream-snapshot.json +++ b/catalogs/landscape/upstream-snapshot.json @@ -1529,8 +1529,8 @@ { "component_id": "mcporter", "repository": "https://github.com/openclaw/mcporter", - "selected_repository_url": "https://github.com/openclaw/mcporter/tree/v0.14.2", - "selected_version": "0.14.2", + "selected_repository_url": "https://github.com/openclaw/mcporter/tree/v0.14.1", + "selected_version": "0.14.1", "selected_source_pin": null, "checks": [ { @@ -1550,11 +1550,11 @@ "status": "ok" }, { - "endpoint": "repos/openclaw/mcporter/commits/aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "endpoint": "repos/openclaw/mcporter/commits/93e0916cafe2d624b94271e31b75ca681a016514", "exit_code": 0, - "started_at": "2026-10-03T05:50:28.250309+00:00", - "ended_at": "2026-10-03T05:50:28.570581+00:00", - "stdout_sha256": "24ce8c193ab2a8cdf608ac6225ab408ca52254ae55683cb699aeab2ec175110b", + "started_at": "2026-10-03T08:04:32Z", + "ended_at": "2026-10-03T08:04:33Z", + "stdout_sha256": "d3d837ff22ae29f38338f6d5fd42009829326f89457a9c7fe73f29970f98904d", "status": "ok" }, { @@ -1590,7 +1590,7 @@ "adoption_recommendation": "retain_selected_pending_capability_comparison", "source_pin_kind": "version_only", "primary_repository": "https://github.com/openclaw/mcporter", - "release_relationship": "selected_version_matches_latest_stable", + "release_relationship": "newer_stable_release_review_pending", "historical_observations": [ { "preserved_at_utc": "2026-10-03T05:55:06.824136+00:00", @@ -1652,16 +1652,95 @@ "primary_repository": "https://github.com/openclaw/mcporter", "release_relationship": "selected_version_matches_latest_stable" } + }, + { + "preserved_at_utc": "2026-10-03T07:44:58.220950+00:00", + "status": "compatibility_attempt", + "observation": { + "component_id": "mcporter", + "repository": "https://github.com/openclaw/mcporter", + "selected_repository_url": "https://github.com/openclaw/mcporter/tree/v0.14.2", + "selected_version": "0.14.2", + "selected_source_pin": null, + "checks": [ + { + "endpoint": "repos/openclaw/mcporter", + "exit_code": 0, + "started_at": "2026-10-03T05:50:27.642381+00:00", + "ended_at": "2026-10-03T05:50:27.993166+00:00", + "stdout_sha256": "99540d98c8f7c763f29d150f85aa20c4d907a8ba1e893de4a6feffda56012988", + "status": "ok" + }, + { + "endpoint": "repos/openclaw/mcporter/releases/latest", + "exit_code": 0, + "started_at": "2026-10-03T05:50:27.993405+00:00", + "ended_at": "2026-10-03T05:50:28.250033+00:00", + "stdout_sha256": "0f03fb3adf27eec7af988468fb21576aa6aba61ed00e7deab129f6e82c24c68e", + "status": "ok" + }, + { + "endpoint": "repos/openclaw/mcporter/commits/aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "exit_code": 0, + "started_at": "2026-10-03T05:50:28.250309+00:00", + "ended_at": "2026-10-03T05:50:28.570581+00:00", + "stdout_sha256": "24ce8c193ab2a8cdf608ac6225ab408ca52254ae55683cb699aeab2ec175110b", + "status": "ok" + }, + { + "endpoint": "repos/openclaw/mcporter/commits/v0.14.2", + "exit_code": 0, + "started_at": "2026-10-03T05:50:28.571161+00:00", + "ended_at": "2026-10-03T05:50:28.896720+00:00", + "stdout_sha256": "24ce8c193ab2a8cdf608ac6225ab408ca52254ae55683cb699aeab2ec175110b", + "status": "ok" + } + ], + "canonical_repository": "https://github.com/openclaw/mcporter", + "archived": false, + "disabled": false, + "default_branch": "main", + "pushed_at": "2026-10-01T18:43:11Z", + "license_spdx": "MIT", + "latest_stable_release": { + "tag_name": "v0.14.2", + "published_at": "2026-10-01T18:24:07Z", + "html_url": "https://github.com/openclaw/mcporter/releases/tag/v0.14.2", + "target_commitish": "main", + "prerelease": false, + "draft": false + }, + "latest_release_source": { + "ref": "v0.14.2", + "sha": "aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "html_url": "https://github.com/openclaw/mcporter/commit/aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "committed_at": "2026-10-01T05:29:15Z" + }, + "status": "metadata_checked", + "adoption_recommendation": "retain_selected_pending_capability_comparison", + "source_pin_kind": "version_only", + "primary_repository": "https://github.com/openclaw/mcporter", + "release_relationship": "selected_version_matches_latest_stable", + "checked_at": "2026-10-03T05:50:28.896720+00:00", + "selected_pin_source": { + "ref": "aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "sha": "aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "html_url": "https://github.com/openclaw/mcporter/commit/aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", + "committed_at": "2026-10-01T05:29:15Z" + }, + "selected_pin_matches_latest_release_commit": true + } } ], - "checked_at": "2026-10-03T05:50:28.896720+00:00", + "checked_at": "2026-10-03T08:04:33Z", "selected_pin_source": { - "ref": "aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", - "sha": "aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", - "html_url": "https://github.com/openclaw/mcporter/commit/aa0f55f9bffcde9d2070c86145f37d4dd3525f6c", - "committed_at": "2026-10-01T05:29:15Z" + "ref": "93e0916cafe2d624b94271e31b75ca681a016514", + "sha": "93e0916cafe2d624b94271e31b75ca681a016514", + "html_url": "https://github.com/openclaw/mcporter/commit/93e0916cafe2d624b94271e31b75ca681a016514", + "committed_at": "2026-09-24T11:06:02Z" }, - "selected_pin_matches_latest_release_commit": true + "selected_pin_matches_latest_release_commit": false, + "release_relationship_note": "0.14.2 is known and held after an inconsistent resolved dependency tree and unqualified daemon/serve role; Linux selects accepted 0.14.1." }, { "component_id": "openresearch", diff --git a/docs/decisions/2026-10-03-currency-wave-w1.md b/docs/decisions/2026-10-03-currency-wave-w1.md index de3a7581d..e72b9fa12 100644 --- a/docs/decisions/2026-10-03-currency-wave-w1.md +++ b/docs/decisions/2026-10-03-currency-wave-w1.md @@ -2,7 +2,8 @@ ## Decision and north-star action -Integrate the nine qualified foundation release pins from the W1 build contract. +Integrate eight qualified foundation release pins from the W1 build contract; +hold mcporter at 0.14.1 after R642b review. This maintains the native tooling used to build complex projects and conduct the north-star US-equities research and historical simulation. It changes repository selections and supported installation recipes; host installation, service @@ -29,7 +30,6 @@ identities; they do not expand the scope of the recorded functional evidence. | claude-hud | 0.8.0 | [v0.10.0](https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0), commit `75683c6de1ac07f6bbef00d739001679dba0740c` | [Manifest versions and two synthetic stdin renders](../../evidence/receipts/claude-hud-0100-qualification-20261003.json) | | opentelemetry-collector-contrib | 0.161.0 | [v0.162.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0), commit `ae8c507510f48f433ab47dd1c6b01a59d6c388b5`; [distribution release](https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.162.0) | [Archive, version and configuration validation](../../evidence/receipts/otelcol-contrib-0162-qualification-20261003.json) | | worktrunk | 0.79.0 | [v0.80.0](https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0), commit `b49ca7eea9b03145791a5b94eccaf9c59412ed37` | [Version and synthetic repository list](../../evidence/receipts/worktrunk-0800-qualification-20261003.json) | -| mcporter | 0.14.1 | [v0.14.2](https://github.com/openclaw/mcporter/releases/tag/v0.14.2), commit `aa0f55f9bffcde9d2070c86145f37d4dd3525f6c` | [Version and new ad-hoc stdio canary](../../evidence/receipts/mcporter-0142-qualification-20261003.json) | | syft | 1.52.0 | [v1.54.0](https://github.com/anchore/syft/releases/tag/v1.54.0), commit `cc326e45a6213360266dda4b30cc68095946d676` | [Version and recorded SDK inventory](../../evidence/receipts/syft-1540-qualification-20261003.json) | The integration worker rehashed all nine retained downloads and matched every @@ -41,8 +41,9 @@ individual receipts preserve those distinctions and unverified signatures. For each component, the worker ran four fresh native `gh api` reads following the upstream snapshot's methodology: repository metadata, `releases/latest`, the selected exact source commit, and the latest stable release tag's commit. -All 36 commands exited zero. All nine latest stable tags matched their selected -candidate at collection time. The snapshot retains the original checks and +All 36 commands exited zero. All nine latest stable tags matched their W1 +candidates at collection time; R642b retains eight moves and holds mcporter +at 0.14.1. The snapshot retains the original checks and selected fields as dated `historical_observations`, and records genuine start/end timestamps and SHA256s of raw API stdout for the new checks. Version-only stack pins retain their pin semantics; resolving a commit for verification does not @@ -56,11 +57,25 @@ that server and its documented `order/get_session_stats` request. Both calls exited zero with `--stored-auth-only`: the list contained six tool names and the call returned the six-tool counter surface. A deliberately unknown tool returned `tool_not_found` with exit 5. This stdio server requires no stored -credentials, so the flag did not exercise OAuth. The new mcporter 0.14.2 +credentials, so the flag did not exercise OAuth. The mcporter 0.14.2 ad-hoc stdio call returned the same counter surface with exit zero, without -using an existing daemon. Actual output and the independent `last_seen_version` +using an existing daemon; it is compatibility-attempt evidence for the hold, +not acceptance of the selected pin. Actual output and the independent `last_seen_version` observation are retained in [native-checks.json](../../evidence/artifacts/currency-wave-w1-20261003/native-checks.json). +R642b re-ran those exact four commands from the W1 scratch installs with a +fresh configuration and home. Each shell captured its start and end with +`date -u +%Y-%m-%dT%H:%M:%SZ`. The artifact's +`commands/inspector-tools-list-r642b-timed` (08:23:59–08:24:00 UTC), +`commands/inspector-tools-call-r642b-timed` (08:24:00–08:24:01 UTC) and +`commands/inspector-negative-r642b-timed` (08:24:01–08:24:02 UTC) returned +the same six tool names, a successful counter call and the expected +`tool_not_found` exit 5 on 2026-10-03. The +`commands/mcporter-call-r642b-timed` (08:24:02–08:24:03 UTC) returned +`visible_tools: 6` with exit 0; it supports only the compatibility-attempt hold. +The final timed commands ran after every current mcporter pin site and PR count was repaired. The interim timed entries are also retained under `-r642b-timed-earlier`. The four original entries remain labelled `earlier_untimed_attempt`, with their +unknown times preserved. Each affected receipt points to the fresh timed entries. + The recorded OpenResearch functional smoke is explicitly not run. Its `native_cli_e2e` receipt follows the build contract's required receipt kind, but the claim is limited to the version output and does not establish live @@ -104,9 +119,23 @@ observed fixture render. The user ended the seven-day cooldown for clean releases on 2026-10-03. This removes an age-only delay; it does not waive qualification, known regressions, functional gates or recipe compatibility. Alternatives were to -retain the nine previous pins for the remaining cooldown, adopt the qualified -releases within their measured scopes, or skip ahead to unqualified releases. -Adopt the qualified set; retain each previous pin as the rollback reference. +retain the previous pins for the remaining cooldown, adopt eight qualified +releases within their measured scopes while holding mcporter, or adopt all nine +despite the mcporter dependency and daemon gaps. Adopt the eight qualified moves; +retain each previous pin as the rollback reference. + +R642b holds mcporter at the accepted Linux 0.14.1 pin. Its +[0.14.2 compatibility attempt](../../evidence/receipts/mcporter-0142-qualification-20261003.json) +retains the ELSPROBLEMS finding: bundled core 2.2.0 beside resolved server 2.3.0. +The ad-hoc stdio canary does not qualify the persistent daemon and `serve` roles +used by `foundation-cpu` and `token-efficiency`. Reopen the move only after a +consistent resolved dependency tree (`npm ls --all` succeeds) and isolated +qualification of that persistent role, including use, restart and recovery. +A fresh read-only `npm ls --global --prefix /mcporter/prefix --all --json` check also returned exit 1 and `ELSPROBLEMS` on 2026-10-03; the receipt retains its native `problems` field, stderr, timestamps and original stdout hash. The stack, audit, Linux artifact and install rows return to their `origin/main` +0.14.1 values; macOS retains its independently held 0.13.13 pin and its Linux +comparison returns to 0.14.1. No current pin links the attempt receipt. The +upstream snapshot keeps the W1 0.14.2 observation as a dated compatibility +attempt and still reports that newer release, while selecting 0.14.1. The W1 `holds_not_in_scope` entries stay out of this integration: @@ -136,8 +165,8 @@ The worker compared every supplied `pin_sites` list with its own full `git grep` results and classified current installation pins separately from historical source anchors, recorded outputs, unrelated dependency versions and sealed verdicts. The latest source identities are verified by original API responses. -Existing Linux pin entries were updated for `orx` and `mcporter`; the other seven -components have no entries in that file, and their supported recipe formats +The Linux `orx` pin was updated; mcporter remains at 0.14.1 after R642b's hold. +The other seven moved components have no entries in that file, and their supported recipe formats remain in use. The two generated report pairs are rebuilt by their own write commands. `build_ecosystem.py` is check-only. @@ -176,8 +205,8 @@ Owner handoffs for the next unit: - The configuration owner must reconcile `adoption/new-wsl-profile.json`: it carries Inspector 2.9.0, Worktrunk 0.80.0 and Collector 0.162.0, while - mcporter 0.14.1, playwright-cli 0.1.21 and Syft 1.52.0 remain older than - the W1 selections. This file is outside the repair's edit scope. + playwright-cli 0.1.21 and Syft 1.52.0 remain older than the W1 selections. + Its mcporter 0.14.1 agrees with R642b's hold. This file is outside the repair's edit scope. - The trading owner must update the canonical `blueprints/us-equities/supply-chain/README.md` recipe for Syft 1.54.0, including its 1.52.0 archive/hash instructions, using the W1 receipt's @@ -186,8 +215,8 @@ Owner handoffs for the next unit: `observability/paper-trading-live/collector-paper-trading.yaml`. - The coordinator supplies the required CI buckets, macOS result, hosted secret scans, PR labels/body and any required trading acknowledgement for - the committed repair head. No commit, push or PR metadata mutation is part - of this repair. + the committed repair head. No commit or push is part of this repair; + R642b authorizes correcting the PR's component count to eight. ## Supplemental test environment correction @@ -260,6 +289,87 @@ cleanup. The installed Gitleaks wrapper could not create its host runtime lock in this sandbox; the bounded staged scan uses the pinned upstream Gitleaks 8.30.1 executable. Its result does not qualify host-local guarded containment. +## R642b review-bot repair and completeness critic + +R642b serves the W1 foundation maintenance action for the north-star research +runtime. The five threads were checked against head `2d6f49233fa1` before edits. +The Collector live row incorrectly attributed deployed 0.161.0 runtime evidence +to selected 0.162.0; it now separates the deployed and selected versions, with +the W1 receipt limiting 0.162.0 to scratch validation. mcporter's pin move was +also withdrawn: its canary did not settle the dependency-tree and persistent +role gaps. The hold and its specific overturn condition are recorded above. + +The HUD transition now follows the installed Claude Code 2.1.288 help, +[tagged changelog](https://github.com/anthropics/claude-code/blob/v2.1.288/CHANGELOG.md), +[official update instructions](https://code.claude.com/docs/en/plugins/install#update-plugins-now), +[marketplace CLI reference](https://code.claude.com/docs/en/plugins/cli-reference#plugin-marketplace-update) +and [source synchronization rules](https://code.claude.com/docs/en/plugins/loading#plugins-and-marketplaces-that-arent-on-disk-at-session-start). +First retarget the declared marketplace source to `v0.10.0`, let the next native +session synchronize that changed source, run `claude plugin marketplace update +claude-hud`, then `claude plugin update claude-hud@claude-hud --scope user`, +reload and check the installed commit. Refreshing a source still pinned to +`v0.8.0` keeps that tag. Status: **documented, host verification pending**. +Only native version/help commands ran, using an absolute native executable, +scratch cwd, temporary `HOME` and temporary `CLAUDE_CONFIG_DIR`; the actual +outputs are retained in `native-checks.json#/r642b_claude_hud_upgrade`. +No safe offline GitHub-tag transition was verified and no host update ran. + +R642 already added current OpenResearch and Worktrunk notes to the dated upgrade +document, but their canonical map still selected its historical installation +section. The canonical `recipe_map` entries for OpenResearch, Worktrunk and +Syft now select `recipes/README.md`, which carries 0.2.15, 0.80.0 and 1.54.0, +their primary sources and rollback versions. The audit's three +`native_integration.recipe_document` mirrors match. Syft's foundation recipe +uses the archive/checksum/extraction commands retained in its W1 receipt and +installed `gh release download` help. Its trading-owned 1.52.0 recipe stays a +dated owner handoff and is no longer the canonical current map. + +Search-first used maintained native commands and existing repository checks; +no installer or acceptance runner was added. The first scoped ai-memory search +returned HTTP 404 in workspace `default`; retrying workspace `local` with limit +2 returned `decisions/workstation-sota-refresh-20260925.md`. That historical +0.14.1 lead was checked against the exact repository decision, the current base +rows, and the upstream v0.14.1 release and commit API responses. Installed CLI +help provides no pin-priority flag. Official documentation was read with native +`curl` after the web tool rejected `open`; no absence claim follows that failure. + +The completeness critic covers all five threads, every current mcporter pin +site, reciprocal receipt links, recipe-map mirrors, generated reports, actual +timed outputs and owner boundaries. The next lifecycle sweep must qualify a +consistent mcporter dependency tree and persistent daemon/serve behavior; for +HUD it must cover declared/cached source synchronization, registry revision, +reload and rollback on an isolated host. Collector 0.162.0 traffic, restart and +retained storage remain pending. Source review, command help, ad-hoc stdio and +repository consistency checks retain their separate evidence scopes. + +The independent completeness review found three additional current mcporter +sites: the native token CI pin, the token-report install/PATH recipe, and the +macOS/Linux lag test's current receipt link. Each now restores its `origin/main` +0.14.1 value while preserving the other W1 component changes. The snapshot's +retained-versus-latest classification now agrees with its 0.14.1 selection and +reported v0.14.2 release; its selected-commit API check was refreshed to +`93e0916cafe2d624b94271e31b75ca681a016514`. PR #642's title and description +now count eight moves and list mcporter as held, with the repair still awaiting +the coordinator's commit and push. + +The required unchanged suite first exposed an environment boundary: its blind +exports were correctly refused under the existing Git markers in the available +temporary roots. The first Sol repair chose another writable root, which also +had a marker. That unresolved bounded repair triggered one Astra judgment at +`max`; it accepted installed Bubblewrap 0.9.0's supported private tmpfs after +both an unchanged successful-export test and an unchanged inside-repository +refusal test passed. The coordinator verified installed help, the +[release](https://github.com/containers/bubblewrap/releases/tag/v0.9.0) and +[tagged mount option reference](https://github.com/containers/bubblewrap/blob/v0.9.0/bwrap.xml#L273-L315). +The first full isolated run kept the worktree read-only and exposed the render +tests' legitimate temporary fixture writes. The final native wrapper keeps the +host read-only, binds the owned worktree and task cache writable, retains the +worktree `.git` as read-only, and provides a fresh `/tmp`. The tests and export +guard keep their bytes. The native `uv run --python 3.13 --with PyYAML==6.0.3` +environment repeats R642's dependency setup with a private cache and disabled +Python downloads. All failed conditions and the final returned results are +retained in [review-bot-repair-checks.json](../../evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json); none is promoted to host or provider E2E. The final unchanged suite passed 325 tests with three optional skips. The eight repository validation/report checks and the three pre-push registry tests passed; the staged publication scan uses a temporary native Git index and pinned Gitleaks 8.30.1. + ## Overturn condition and rollback Reopen a move on a regression in its documented command path, an advisory diff --git a/docs/new-host-grand-list.md b/docs/new-host-grand-list.md index eadebb156..ba7ffefc8 100644 --- a/docs/new-host-grand-list.md +++ b/docs/new-host-grand-list.md @@ -75,7 +75,7 @@ Locally-run model weights a host receipt recorded qualifying on a runtime compon | | | `candidate:openai-skills` | unpinned | local_integration | conditional | untested | — | | | Isolation | retain | `worktrunk` | 0.79.0 | native_proven | host_verified | host_verified | — | 16 / 19 | | | | `sandbox-runtime` | 0.0.77 | native_proven | host_verified | untested | — | | -| MCP servers and client surfaces | retain | `mcporter` | 0.13.13 (behind v0.14.0) | native_proven | host_verified, bootstrap 0.14.2 | untested, bootstrap 0.13.13 | foundation-cpu, macos-arm64-foundation, token-efficiency | 12 / 14 | +| MCP servers and client surfaces | retain | `mcporter` | 0.13.13 (behind v0.14.0) | native_proven | host_verified, bootstrap 0.14.1 | untested, bootstrap 0.13.13 | foundation-cpu, macos-arm64-foundation, token-efficiency | 12 / 14 | | | | `mcp-inspector` | 2.7.0 | native_proven | host_verified | untested | — | | | Native clients | retain | `claude-code` | 2.1.278 (behind v2.1.280) | native_proven | accepted, bootstrap 2.1.284 | untested, bootstrap 2.1.284 | new-wsl-clean-foundation, foundation-cpu, research-runtime, macos-arm64-foundation, token-efficiency | 9 / 14 | | | | `codex` | 0.155.1 (behind rust-v0.156.0) | native_proven | host_verified, bootstrap 0.159.3 | untested, bootstrap 0.155.1 | new-wsl-clean-foundation, foundation-cpu, research-runtime, macos-arm64-foundation, token-efficiency | | diff --git a/docs/token-efficiency-stack.json b/docs/token-efficiency-stack.json index b319d0730..b096e5452 100644 --- a/docs/token-efficiency-stack.json +++ b/docs/token-efficiency-stack.json @@ -5751,14 +5751,14 @@ "purpose": "Native CLI bridge with persistent MCP daemon connection", "upstream_commands": { "install": [ - "npm install --global --prefix \"$STACK_HOME/tools/mcporter-0.14.2\" mcporter@0.14.2" + "npm install --global --prefix \"$STACK_HOME/tools/mcporter-0.14.1\" mcporter@0.14.1" ], "use": [ "mcporter --config \"$MCPORTER_CONFIG\" list socraticode --brief --no-oauth", "mcporter call --stdio jcodemunch-mcp --env \"CODE_INDEX_PATH=$HOME/.code-index\" --env JCODEMUNCH_SHARE_SAVINGS=0 --name jcodemunch --tool order --args '{\"action\":\"get_session_stats\",\"args\":{}}' --output json --no-oauth" ], "statistics": [], - "install_note": "`npm install --global --prefix \"$STACK_HOME/tools/mcporter-0.14.2\" mcporter@0.14.2`; `ps` must be on the PATH of whatever launches the daemon.", + "install_note": "`npm install --global --prefix \"$STACK_HOME/tools/mcporter-0.14.1\" mcporter@0.14.1`; `ps` must be on the PATH of whatever launches the daemon.", "command_kind": "Upstream documented commands; only the retained receipt establishes execution." }, "returned_result_summary": "2026-09-20 native CLI bridge returned jCodeMunch's 29, 820 estimated retained total and Context Mode's actual project-file hash/length. This is a transport bridge, not an additional savings source; do not credit the same payload reduction again.", diff --git a/evidence/artifacts/currency-wave-w1-20261003/native-checks.json b/evidence/artifacts/currency-wave-w1-20261003/native-checks.json index 2c5c17071..9fabd700e 100644 --- a/evidence/artifacts/currency-wave-w1-20261003/native-checks.json +++ b/evidence/artifacts/currency-wave-w1-20261003/native-checks.json @@ -42,7 +42,8 @@ "MCP_INSPECTOR_SECRET_FILE": "/secrets.json" }, "started_at_utc": null, - "ended_at_utc": null + "ended_at_utc": null, + "attempt_status": "earlier_untimed_attempt" }, "inspector-tools-call": { "command": "mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/call --tool-name order --tool-args-json '{\"action\":\"get_session_stats\",\"args\":{}}' --format json --stored-auth-only --cwd /work", @@ -60,7 +61,8 @@ "MCP_INSPECTOR_SECRET_FILE": "/secrets.json" }, "started_at_utc": null, - "ended_at_utc": null + "ended_at_utc": null, + "attempt_status": "earlier_untimed_attempt" }, "inspector-negative": { "command": "mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/call --tool-name w1_unknown_tool --tool-args-json '{}' --format json --stored-auth-only --cwd /work", @@ -78,7 +80,8 @@ "MCP_INSPECTOR_SECRET_FILE": "/secrets.json" }, "started_at_utc": null, - "ended_at_utc": null + "ended_at_utc": null, + "attempt_status": "earlier_untimed_attempt" }, "mcporter-call": { "command": "mcporter call --stdio /jcodemunch-mcp/prefix/bin/jcodemunch-mcp --env CODE_INDEX_PATH=/code-index --env JCODEMUNCH_SHARE_SAVINGS=0 --env HOME=/home --cwd /work --name jcodemunch --server jcodemunch --tool order --args '{\"action\":\"get_session_stats\",\"args\":{}}' --output json --no-oauth", @@ -90,7 +93,211 @@ "stdout_sha256_original": "8af35b98c4e88af43b8a359506c429e6992af3d4d2a0813f3c4c2ec5e24729dc", "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "started_at_utc": null, - "ended_at_utc": null + "ended_at_utc": null, + "attempt_status": "earlier_untimed_attempt", + "evidence_use": "compatibility_attempt_for_hold_only" + }, + "inspector-tools-list-r642b-timed": { + "command": "mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/list --format json --stored-auth-only --cwd /work", + "exit_code": 0, + "executable": "/mcp-inspector/prefix/bin/mcp-inspector", + "cwd": "", + "stdout": "{\"result\":{\"tools\":[{\"name\":\"set_tool_tier\",\"description\":\"Explicit tier override for the current session. Narrows or widens the exposed tool list to 'core' / 'standard' / 'full'. Prefer plan_turn(model=...) for routine per-task use; use set_tool_tier only for an explicit override (e.g. escalate to 'full' after a capability-gated failure). A narrowing that costs more than it saves is refused.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"tier\":{\"type\":\"string\",\"enum\":[\"core\",\"standard\",\"full\"]}},\"required\":[\"tier\"]},\"annotations\":{\"readOnlyHint\":false,\"openWorldHint\":false}},{\"name\":\"announce_model\",\"description\":\"Agent self-reports its active model identifier. Server resolves to a tier via model_tier_map (fuzzy: normalize \u2192 exact \u2192 glob \u2192 substring \u2192 '*' \u2192 'full') and narrows the exposed tool list accordingly. Idempotent: a second call with the same model is a cheap no-op. Prefer calling plan_turn(model=...) for routine per-task use; use announce_model as a fallback when plan_turn is not appropriate for the current task.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"model\":{\"type\":\"string\",\"description\":\"Your active model identifier, e.g. 'claude-haiku-4-5'.\"}},\"required\":[\"model\"]},\"annotations\":{\"readOnlyHint\":false,\"openWorldHint\":false}},{\"name\":\"jcodemunch_guide\",\"description\":\"Return the version-current CLAUDE.md / AGENT.md policy snippet for jcodemunch-mcp \u2014 the same text produced by `jcodemunch-mcp claude-md --generate`. Lets an agent keep a one-line CLAUDE.md (e.g. \\\"Call jcodemunch_guide and strictly follow its instructions.\\\") instead of pasting a static snippet that drifts from the installed version. Idempotent, no repo context required. Matches the active tool surface, tier and disabled_tools \u2014 list 'jcodemunch_guide' in disabled_tools to hide it.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{}},\"annotations\":{\"readOnlyHint\":true,\"openWorldHint\":false}},{\"name\":\"order\",\"description\":\"Dispatch any jcodemunch action by name: order(action, args). The single-verb front door to the full tool catalog. Read-only by default \u2014 actions that change index/session state require allow_state_change=true, and execution/file-write verbs are refused. For exploration questions ('how does X work'), order('get_ranked_context', {repo, query, token_budget}) answers in ONE call \u2014 prefer it over chained search/outline/source hops; add compress=true to fit more symbols in the same budget. Call 'menu' to discover actions, or 'route' to pick one from a task.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"action\":{\"type\":\"string\",\"description\":\"Name of the catalog action to run (e.g. 'search_symbols').\"},\"args\":{\"type\":\"object\",\"description\":\"Arguments for that action, exactly as you'd pass them directly.\",\"default\":{}},\"allow_state_change\":{\"type\":\"boolean\",\"description\":\"Opt in to dispatching an index/session state-changing action (e.g. index_repo).\",\"default\":false}},\"required\":[\"action\"]},\"annotations\":{\"readOnlyHint\":false,\"openWorldHint\":true}},{\"name\":\"menu\",\"description\":\"Discover catalog actions without keeping the full tool catalog resident: menu(query?). Returns compact rows (action, summary, required args, state_changing). With no query, lists the catalog. Pair with 'order' to dispatch the chosen action.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"query\":{\"type\":\"string\",\"description\":\"Optional. Keywords describing what you want to do; ranks matching actions.\"},\"limit\":{\"type\":\"integer\",\"description\":\"Max actions to return.\",\"default\":25}}},\"annotations\":{\"readOnlyHint\":true,\"openWorldHint\":false}},{\"name\":\"route\",\"description\":\"Map a natural-language task to the best catalog action(s): route(task, repo?, execute?). Returns ranked recommendations with ready-to-run argument templates. With execute=true, dispatches the top recommendation and returns its result in the same call, collapsing discover-then-call into one round-trip. Recommends assemble_task_context / plan_turn for context-gathering intents.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"task\":{\"type\":\"string\",\"description\":\"What you're trying to do, in plain language.\"},\"repo\":{\"type\":\"string\",\"description\":\"Repository identifier (required to execute repo-scoped actions).\"},\"execute\":{\"type\":\"boolean\",\"description\":\"If true, dispatch the top recommended action and return its result.\",\"default\":false},\"model\":{\"type\":\"string\",\"description\":\"Optional active model id; piggybacks tier-switch like plan_turn(model=...).\"}},\"required\":[\"task\"]},\"annotations\":{\"readOnlyHint\":false,\"openWorldHint\":true}}]}}\n", + "stderr": "[mcp-inspector] Secrets are stored unencrypted (file mode 0600). Set MCP_INSPECTOR_SECRET_KEY or MCP_INSPECTOR_SECRET_KEY_FILE to encrypt them.\n[mcp-inspector] How the secret store is chosen, and how to secure it: https://github.com/modelcontextprotocol/inspector/blob/main/docs/secret-storage.md\nDeprecated: Using JCODEMUNCH_SHARE_SAVINGS environment variable. This will be removed in v2.0. Use config.jsonc instead.\njcodemunch-mcp 1.108.327 by jgravelle \u00b7 https://github.com/jgravelle/jcodemunch-mcp\n", + "stdout_sha256_original": "4884a73e53ae2f39f6584260f0ceb05e46607894ddc5d482f385bd2fd56f7fe6", + "stderr_sha256_original": "188cc3dea4db2dcff7706137697f8a79268152dfe93660d013c3abc8840d05bd", + "environment": { + "MCP_AUTO_OPEN_ENABLED": "false", + "MCP_INSPECTOR_OAUTH_STATE_PATH": "/oauth.json", + "MCP_INSPECTOR_SECRET_STORE": "file", + "MCP_INSPECTOR_SECRET_FILE": "/secrets.json", + "HOME": "/home", + "XDG_CONFIG_HOME": "/xdg-config", + "XDG_CACHE_HOME": "/xdg-cache", + "XDG_DATA_HOME": "/xdg-data", + "CLAUDE_CONFIG_DIR": "/config" + }, + "started_at_utc": "2026-10-03T08:23:59Z", + "ended_at_utc": "2026-10-03T08:24:00Z", + "attempt_status": "r642b_final_timed_rerun_after_complete_hold", + "timing_capture": "In the same shell: rtk date -u +%Y-%m-%dT%H:%M:%SZ > /inspector-tools-list.start; rtk proxy env [environment above] mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/list --format json --stored-auth-only --cwd /work > /inspector-tools-list.stdout 2> /inspector-tools-list.stderr; R642B_COMMAND_STATUS=$?; rtk date -u +%Y-%m-%dT%H:%M:%SZ > /inspector-tools-list.end; printf '%s\\n' \"$R642B_COMMAND_STATUS\" > /inspector-tools-list.exit; exit \"$R642B_COMMAND_STATUS\". The bare CLI name resolves to executable above." + }, + "inspector-tools-call-r642b-timed": { + "command": "mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/call --tool-name order --tool-args-json '{\"action\":\"get_session_stats\",\"args\":{}}' --format json --stored-auth-only --cwd /work", + "exit_code": 0, + "executable": "/mcp-inspector/prefix/bin/mcp-inspector", + "cwd": "", + "stdout": "{\"result\":{\"content\":[{\"type\":\"text\",\"text\":\"{\\\"session_tokens_saved\\\":0,\\\"session_calls\\\":0,\\\"session_duration_s\\\":0.1,\\\"session_response_tokens\\\":0,\\\"total_tokens_saved\\\":0,\\\"total_tokens_saved_basis\\\":{\\\"generation\\\":2,\\\"first_generation\\\":2,\\\"mixed_basis\\\":false},\\\"lifetime_by_tool\\\":{},\\\"lifetime_by_tool_since\\\":null,\\\"lifetime_unattributed\\\":0,\\\"tool_breakdown\\\":{},\\\"tool_calls\\\":{},\\\"savings_per_call\\\":0.0,\\\"result_cache\\\":{\\\"total_hits\\\":0,\\\"total_misses\\\":0,\\\"hit_rate\\\":0.0,\\\"cached_entries\\\":0},\\\"latency_per_tool\\\":{},\\\"session_cost_avoided\\\":{\\\"claude_opus_4_6\\\":0.0,\\\"claude_sonnet_4_6\\\":0.0,\\\"claude_haiku_4_5\\\":0.0,\\\"gpt5_latest\\\":0.0},\\\"total_cost_avoided\\\":{\\\"claude_opus_4_6\\\":0.0,\\\"claude_sonnet_4_6\\\":0.0,\\\"claude_haiku_4_5\\\":0.0,\\\"gpt5_latest\\\":0.0},\\\"runtime_signal\\\":{\\\"rows\\\":0,\\\"by_source\\\":{}},\\\"savings_provenance\\\":{\\\"token_reduction\\\":{\\\"average_pct\\\":99.6,\\\"task_runs\\\":15,\\\"tokenizer\\\":\\\"cl100k_base\\\",\\\"basis\\\":\\\"measured\\\",\\\"source\\\":\\\"benchmarks/provenance/measured.json\\\",\\\"methodology\\\":\\\"benchmarks/METHODOLOGY.md\\\"},\\\"replay_retrieval_quality\\\":{\\\"fixture\\\":\\\"self_v1_75_0\\\",\\\"k\\\":10,\\\"ndcg\\\":1.0,\\\"mrr\\\":1.0,\\\"recall\\\":1.0,\\\"basis\\\":\\\"measured\\\",\\\"source\\\":\\\"benchmarks/provenance/measured.json\\\",\\\"ci_gated\\\":true},\\\"implementation_channel_accuracy\\\":{\\\"corpus\\\":\\\"authored-scenarios-v2\\\",\\\"languages\\\":[\\\"python\\\",\\\"typescript\\\",\\\"go\\\"],\\\"channels\\\":{\\\"ast\\\":{\\\"precision\\\":0.818,\\\"recall\\\":1.0},\\\"duck\\\":{\\\"precision\\\":0.5,\\\"recall\\\":1.0},\\\"decorator\\\":{\\\"precision\\\":0.556,\\\"recall\\\":1.0}},\\\"basis\\\":\\\"measured\\\",\\\"source\\\":\\\"benchmarks/provenance/channel_accuracy.json\\\",\\\"ci_gated\\\":true,\\\"scope_note\\\":\\\"authored gold corpus \\\\u2014 channel discrimination on known patterns and traps, not in-the-wild base rates; n small and disclosed in the artifact\\\"},\\\"contract\\\":\\\"declared = engineering prior; measured = committed benchmark artifact (benchmarks/provenance/measured.json)\\\"},\\\"processes\\\":{\\\"live\\\":1,\\\"others\\\":0,\\\"this_pid\\\":25,\\\"oldest_age_seconds\\\":0.0},\\\"tool_surface\\\":{\\\"surface\\\":\\\"counter\\\",\\\"profile\\\":\\\"full\\\",\\\"visible_tools\\\":6,\\\"catalog_tools\\\":94,\\\"schema_tokens_visible\\\":1050,\\\"schema_tokens_catalog\\\":27880,\\\"schema_tokens_avoided\\\":26830,\\\"schema_tokens_basis\\\":\\\"one_time_at_full_rate_then_cache_read\\\",\\\"schema_tokens_basis_note\\\":\\\"The tool-schema block is stable across requests, so it is paid at full rate approximately once per cache lifetime and at cache-read rates (~0.1x) thereafter. This count is payload size, NOT a per-request saving; reading it as one overstates the cost impact by roughly an order of magnitude. Measured: benchmarks/codex_surface/.\\\",\\\"heaviest_tools\\\":{\\\"order\\\":260,\\\"route\\\":229,\\\"announce_model\\\":161,\\\"jcodemunch_guide\\\":147,\\\"menu\\\":128,\\\"set_tool_tier\\\":125},\\\"estimator\\\":\\\"bytes/4\\\"}}\"}],\"isError\":false}}\n", + "stderr": "[mcp-inspector] Secrets are stored unencrypted (file mode 0600). Set MCP_INSPECTOR_SECRET_KEY or MCP_INSPECTOR_SECRET_KEY_FILE to encrypt them.\n[mcp-inspector] How the secret store is chosen, and how to secure it: https://github.com/modelcontextprotocol/inspector/blob/main/docs/secret-storage.md\nDeprecated: Using JCODEMUNCH_SHARE_SAVINGS environment variable. This will be removed in v2.0. Use config.jsonc instead.\njcodemunch-mcp 1.108.327 by jgravelle \u00b7 https://github.com/jgravelle/jcodemunch-mcp\n", + "stdout_sha256_original": "d6467c8b56adbe08d0d04e80f05e90c7f3b52e85e44be123ade3b10c0c56fca0", + "stderr_sha256_original": "188cc3dea4db2dcff7706137697f8a79268152dfe93660d013c3abc8840d05bd", + "environment": { + "MCP_AUTO_OPEN_ENABLED": "false", + "MCP_INSPECTOR_OAUTH_STATE_PATH": "/oauth.json", + "MCP_INSPECTOR_SECRET_STORE": "file", + "MCP_INSPECTOR_SECRET_FILE": "/secrets.json", + "HOME": "/home", + "XDG_CONFIG_HOME": "/xdg-config", + "XDG_CACHE_HOME": "/xdg-cache", + "XDG_DATA_HOME": "/xdg-data", + "CLAUDE_CONFIG_DIR": "/config" + }, + "started_at_utc": "2026-10-03T08:24:00Z", + "ended_at_utc": "2026-10-03T08:24:01Z", + "attempt_status": "r642b_final_timed_rerun_after_complete_hold", + "timing_capture": "In the same shell: rtk date -u +%Y-%m-%dT%H:%M:%SZ > /inspector-tools-call.start; rtk proxy env [environment above] mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/call --tool-name order --tool-args-json '{\"action\":\"get_session_stats\",\"args\":{}}' --format json --stored-auth-only --cwd /work > /inspector-tools-call.stdout 2> /inspector-tools-call.stderr; R642B_COMMAND_STATUS=$?; rtk date -u +%Y-%m-%dT%H:%M:%SZ > /inspector-tools-call.end; printf '%s\\n' \"$R642B_COMMAND_STATUS\" > /inspector-tools-call.exit; exit \"$R642B_COMMAND_STATUS\". The bare CLI name resolves to executable above." + }, + "inspector-negative-r642b-timed": { + "command": "mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/call --tool-name w1_unknown_tool --tool-args-json '{}' --format json --stored-auth-only --cwd /work", + "exit_code": 5, + "executable": "/mcp-inspector/prefix/bin/mcp-inspector", + "cwd": "", + "stdout": "", + "stderr": "[mcp-inspector] Secrets are stored unencrypted (file mode 0600). Set MCP_INSPECTOR_SECRET_KEY or MCP_INSPECTOR_SECRET_KEY_FILE to encrypt them.\n[mcp-inspector] How the secret store is chosen, and how to secure it: https://github.com/modelcontextprotocol/inspector/blob/main/docs/secret-storage.md\nDeprecated: Using JCODEMUNCH_SHARE_SAVINGS environment variable. This will be removed in v2.0. Use config.jsonc instead.\njcodemunch-mcp 1.108.327 by jgravelle \u00b7 https://github.com/jgravelle/jcodemunch-mcp\n{\"error\":{\"code\":\"tool_not_found\",\"message\":\"Tool 'w1_unknown_tool' not found on server.\"}}\n", + "stdout_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "stderr_sha256_original": "ddb5882d31897453b80aeff4d666c5639e6eb57f6fc52b8d561858db01e659fe", + "environment": { + "MCP_AUTO_OPEN_ENABLED": "false", + "MCP_INSPECTOR_OAUTH_STATE_PATH": "/oauth.json", + "MCP_INSPECTOR_SECRET_STORE": "file", + "MCP_INSPECTOR_SECRET_FILE": "/secrets.json", + "HOME": "/home", + "XDG_CONFIG_HOME": "/xdg-config", + "XDG_CACHE_HOME": "/xdg-cache", + "XDG_DATA_HOME": "/xdg-data", + "CLAUDE_CONFIG_DIR": "/config" + }, + "started_at_utc": "2026-10-03T08:24:01Z", + "ended_at_utc": "2026-10-03T08:24:02Z", + "attempt_status": "r642b_final_timed_rerun_after_complete_hold", + "timing_capture": "In the same shell: rtk date -u +%Y-%m-%dT%H:%M:%SZ > /inspector-negative.start; rtk proxy env [environment above] mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/call --tool-name w1_unknown_tool --tool-args-json '{}' --format json --stored-auth-only --cwd /work > /inspector-negative.stdout 2> /inspector-negative.stderr; R642B_COMMAND_STATUS=$?; rtk date -u +%Y-%m-%dT%H:%M:%SZ > /inspector-negative.end; printf '%s\\n' \"$R642B_COMMAND_STATUS\" > /inspector-negative.exit; exit \"$R642B_COMMAND_STATUS\". The bare CLI name resolves to executable above." + }, + "mcporter-call-r642b-timed": { + "command": "mcporter call --stdio /jcodemunch-mcp/prefix/bin/jcodemunch-mcp --env CODE_INDEX_PATH=/code-index --env JCODEMUNCH_SHARE_SAVINGS=0 --env HOME=/home --cwd /work --name jcodemunch --server jcodemunch --tool order --args '{\"action\":\"get_session_stats\",\"args\":{}}' --output json --no-oauth", + "exit_code": 0, + "executable": "/mcporter/prefix/bin/mcporter", + "cwd": "", + "stdout": "{\n \"session_tokens_saved\": 0,\n \"session_calls\": 0,\n \"session_duration_s\": 0.1,\n \"session_response_tokens\": 0,\n \"total_tokens_saved\": 0,\n \"total_tokens_saved_basis\": {\n \"generation\": 2,\n \"first_generation\": 2,\n \"mixed_basis\": false\n },\n \"lifetime_by_tool\": {},\n \"lifetime_by_tool_since\": null,\n \"lifetime_unattributed\": 0,\n \"tool_breakdown\": {},\n \"tool_calls\": {},\n \"savings_per_call\": 0,\n \"result_cache\": {\n \"total_hits\": 0,\n \"total_misses\": 0,\n \"hit_rate\": 0,\n \"cached_entries\": 0\n },\n \"latency_per_tool\": {},\n \"session_cost_avoided\": {\n \"claude_opus_4_6\": 0,\n \"claude_sonnet_4_6\": 0,\n \"claude_haiku_4_5\": 0,\n \"gpt5_latest\": 0\n },\n \"total_cost_avoided\": {\n \"claude_opus_4_6\": 0,\n \"claude_sonnet_4_6\": 0,\n \"claude_haiku_4_5\": 0,\n \"gpt5_latest\": 0\n },\n \"runtime_signal\": {\n \"rows\": 0,\n \"by_source\": {}\n },\n \"savings_provenance\": {\n \"token_reduction\": {\n \"average_pct\": 99.6,\n \"task_runs\": 15,\n \"tokenizer\": \"cl100k_base\",\n \"basis\": \"measured\",\n \"source\": \"benchmarks/provenance/measured.json\",\n \"methodology\": \"benchmarks/METHODOLOGY.md\"\n },\n \"replay_retrieval_quality\": {\n \"fixture\": \"self_v1_75_0\",\n \"k\": 10,\n \"ndcg\": 1,\n \"mrr\": 1,\n \"recall\": 1,\n \"basis\": \"measured\",\n \"source\": \"benchmarks/provenance/measured.json\",\n \"ci_gated\": true\n },\n \"implementation_channel_accuracy\": {\n \"corpus\": \"authored-scenarios-v2\",\n \"languages\": [\n \"python\",\n \"typescript\",\n \"go\"\n ],\n \"channels\": {\n \"ast\": {\n \"precision\": 0.818,\n \"recall\": 1\n },\n \"duck\": {\n \"precision\": 0.5,\n \"recall\": 1\n },\n \"decorator\": {\n \"precision\": 0.556,\n \"recall\": 1\n }\n },\n \"basis\": \"measured\",\n \"source\": \"benchmarks/provenance/channel_accuracy.json\",\n \"ci_gated\": true,\n \"scope_note\": \"authored gold corpus \u2014 channel discrimination on known patterns and traps, not in-the-wild base rates; n small and disclosed in the artifact\"\n },\n \"contract\": \"declared = engineering prior; measured = committed benchmark artifact (benchmarks/provenance/measured.json)\"\n },\n \"processes\": {\n \"live\": 1,\n \"others\": 0,\n \"this_pid\": 25,\n \"oldest_age_seconds\": 0\n },\n \"tool_surface\": {\n \"surface\": \"counter\",\n \"profile\": \"full\",\n \"visible_tools\": 6,\n \"catalog_tools\": 94,\n \"schema_tokens_visible\": 1050,\n \"schema_tokens_catalog\": 27880,\n \"schema_tokens_avoided\": 26830,\n \"schema_tokens_basis\": \"one_time_at_full_rate_then_cache_read\",\n \"schema_tokens_basis_note\": \"The tool-schema block is stable across requests, so it is paid at full rate approximately once per cache lifetime and at cache-read rates (~0.1x) thereafter. This count is payload size, NOT a per-request saving; reading it as one overstates the cost impact by roughly an order of magnitude. Measured: benchmarks/codex_surface/.\",\n \"heaviest_tools\": {\n \"order\": 260,\n \"route\": 229,\n \"announce_model\": 161,\n \"jcodemunch_guide\": 147,\n \"menu\": 128,\n \"set_tool_tier\": 125\n },\n \"estimator\": \"bytes/4\"\n }\n}\n", + "stderr": "", + "stdout_sha256_original": "2b299e18d0c05c2914876815b733bc74f7c5d9a582094c074d464cff98f58094", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "started_at_utc": "2026-10-03T08:24:02Z", + "ended_at_utc": "2026-10-03T08:24:03Z", + "attempt_status": "r642b_final_timed_rerun_after_complete_hold", + "evidence_use": "compatibility_attempt_for_hold_only", + "environment": { + "HOME": "/home", + "XDG_CONFIG_HOME": "/xdg-config", + "XDG_CACHE_HOME": "/xdg-cache", + "XDG_DATA_HOME": "/xdg-data", + "CLAUDE_CONFIG_DIR": "/config", + "MCP_AUTO_OPEN_ENABLED": "false", + "MCP_INSPECTOR_OAUTH_STATE_PATH": "/oauth.json", + "MCP_INSPECTOR_SECRET_STORE": "file", + "MCP_INSPECTOR_SECRET_FILE": "/secrets.json" + }, + "timing_capture": "In the same shell: rtk date -u +%Y-%m-%dT%H:%M:%SZ > /mcporter-call.start; rtk proxy env [environment above] mcporter call --stdio /jcodemunch-mcp/prefix/bin/jcodemunch-mcp --env CODE_INDEX_PATH=/code-index --env JCODEMUNCH_SHARE_SAVINGS=0 --env HOME=/home --cwd /work --name jcodemunch --server jcodemunch --tool order --args '{\"action\":\"get_session_stats\",\"args\":{}}' --output json --no-oauth > /mcporter-call.stdout 2> /mcporter-call.stderr; R642B_COMMAND_STATUS=$?; rtk date -u +%Y-%m-%dT%H:%M:%SZ > /mcporter-call.end; printf '%s\\n' \"$R642B_COMMAND_STATUS\" > /mcporter-call.exit; exit \"$R642B_COMMAND_STATUS\". The bare CLI name resolves to executable above." + }, + "inspector-tools-list-r642b-timed-earlier": { + "command": "mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/list --format json --stored-auth-only --cwd /work", + "exit_code": 0, + "executable": "/mcp-inspector/prefix/bin/mcp-inspector", + "cwd": "", + "stdout": "{\"result\":{\"tools\":[{\"name\":\"set_tool_tier\",\"description\":\"Explicit tier override for the current session. Narrows or widens the exposed tool list to 'core' / 'standard' / 'full'. Prefer plan_turn(model=...) for routine per-task use; use set_tool_tier only for an explicit override (e.g. escalate to 'full' after a capability-gated failure). A narrowing that costs more than it saves is refused.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"tier\":{\"type\":\"string\",\"enum\":[\"core\",\"standard\",\"full\"]}},\"required\":[\"tier\"]},\"annotations\":{\"readOnlyHint\":false,\"openWorldHint\":false}},{\"name\":\"announce_model\",\"description\":\"Agent self-reports its active model identifier. Server resolves to a tier via model_tier_map (fuzzy: normalize \u2192 exact \u2192 glob \u2192 substring \u2192 '*' \u2192 'full') and narrows the exposed tool list accordingly. Idempotent: a second call with the same model is a cheap no-op. Prefer calling plan_turn(model=...) for routine per-task use; use announce_model as a fallback when plan_turn is not appropriate for the current task.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"model\":{\"type\":\"string\",\"description\":\"Your active model identifier, e.g. 'claude-haiku-4-5'.\"}},\"required\":[\"model\"]},\"annotations\":{\"readOnlyHint\":false,\"openWorldHint\":false}},{\"name\":\"jcodemunch_guide\",\"description\":\"Return the version-current CLAUDE.md / AGENT.md policy snippet for jcodemunch-mcp \u2014 the same text produced by `jcodemunch-mcp claude-md --generate`. Lets an agent keep a one-line CLAUDE.md (e.g. \\\"Call jcodemunch_guide and strictly follow its instructions.\\\") instead of pasting a static snippet that drifts from the installed version. Idempotent, no repo context required. Matches the active tool surface, tier and disabled_tools \u2014 list 'jcodemunch_guide' in disabled_tools to hide it.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{}},\"annotations\":{\"readOnlyHint\":true,\"openWorldHint\":false}},{\"name\":\"order\",\"description\":\"Dispatch any jcodemunch action by name: order(action, args). The single-verb front door to the full tool catalog. Read-only by default \u2014 actions that change index/session state require allow_state_change=true, and execution/file-write verbs are refused. For exploration questions ('how does X work'), order('get_ranked_context', {repo, query, token_budget}) answers in ONE call \u2014 prefer it over chained search/outline/source hops; add compress=true to fit more symbols in the same budget. Call 'menu' to discover actions, or 'route' to pick one from a task.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"action\":{\"type\":\"string\",\"description\":\"Name of the catalog action to run (e.g. 'search_symbols').\"},\"args\":{\"type\":\"object\",\"description\":\"Arguments for that action, exactly as you'd pass them directly.\",\"default\":{}},\"allow_state_change\":{\"type\":\"boolean\",\"description\":\"Opt in to dispatching an index/session state-changing action (e.g. index_repo).\",\"default\":false}},\"required\":[\"action\"]},\"annotations\":{\"readOnlyHint\":false,\"openWorldHint\":true}},{\"name\":\"menu\",\"description\":\"Discover catalog actions without keeping the full tool catalog resident: menu(query?). Returns compact rows (action, summary, required args, state_changing). With no query, lists the catalog. Pair with 'order' to dispatch the chosen action.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"query\":{\"type\":\"string\",\"description\":\"Optional. Keywords describing what you want to do; ranks matching actions.\"},\"limit\":{\"type\":\"integer\",\"description\":\"Max actions to return.\",\"default\":25}}},\"annotations\":{\"readOnlyHint\":true,\"openWorldHint\":false}},{\"name\":\"route\",\"description\":\"Map a natural-language task to the best catalog action(s): route(task, repo?, execute?). Returns ranked recommendations with ready-to-run argument templates. With execute=true, dispatches the top recommendation and returns its result in the same call, collapsing discover-then-call into one round-trip. Recommends assemble_task_context / plan_turn for context-gathering intents.\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"task\":{\"type\":\"string\",\"description\":\"What you're trying to do, in plain language.\"},\"repo\":{\"type\":\"string\",\"description\":\"Repository identifier (required to execute repo-scoped actions).\"},\"execute\":{\"type\":\"boolean\",\"description\":\"If true, dispatch the top recommended action and return its result.\",\"default\":false},\"model\":{\"type\":\"string\",\"description\":\"Optional active model id; piggybacks tier-switch like plan_turn(model=...).\"}},\"required\":[\"task\"]},\"annotations\":{\"readOnlyHint\":false,\"openWorldHint\":true}}]}}\n", + "stderr": "[mcp-inspector] Secrets are stored unencrypted (file mode 0600). Set MCP_INSPECTOR_SECRET_KEY or MCP_INSPECTOR_SECRET_KEY_FILE to encrypt them.\n[mcp-inspector] How the secret store is chosen, and how to secure it: https://github.com/modelcontextprotocol/inspector/blob/main/docs/secret-storage.md\nDeprecated: Using JCODEMUNCH_SHARE_SAVINGS environment variable. This will be removed in v2.0. Use config.jsonc instead.\njcodemunch-mcp 1.108.327 by jgravelle \u00b7 https://github.com/jgravelle/jcodemunch-mcp\n", + "stdout_sha256_original": "4884a73e53ae2f39f6584260f0ceb05e46607894ddc5d482f385bd2fd56f7fe6", + "stderr_sha256_original": "188cc3dea4db2dcff7706137697f8a79268152dfe93660d013c3abc8840d05bd", + "environment": { + "MCP_AUTO_OPEN_ENABLED": "false", + "MCP_INSPECTOR_OAUTH_STATE_PATH": "/oauth.json", + "MCP_INSPECTOR_SECRET_STORE": "file", + "MCP_INSPECTOR_SECRET_FILE": "/secrets.json", + "HOME": "/home", + "XDG_CONFIG_HOME": "/xdg-config", + "XDG_CACHE_HOME": "/xdg-cache", + "XDG_DATA_HOME": "/xdg-data", + "CLAUDE_CONFIG_DIR": "/config" + }, + "started_at_utc": "2026-10-03T07:47:37Z", + "ended_at_utc": "2026-10-03T07:47:38Z", + "attempt_status": "earlier_timed_attempt_before_complete_pin_site_reversion", + "timing_capture": "In the same shell: rtk date -u +%Y-%m-%dT%H:%M:%SZ > /inspector-tools-list.start; rtk proxy env [environment above] mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/list --format json --stored-auth-only --cwd /work > /inspector-tools-list.stdout 2> /inspector-tools-list.stderr; R642B_COMMAND_STATUS=$?; rtk date -u +%Y-%m-%dT%H:%M:%SZ > /inspector-tools-list.end; printf '%s\\n' \"$R642B_COMMAND_STATUS\" > /inspector-tools-list.exit; exit \"$R642B_COMMAND_STATUS\". The bare CLI name resolves to executable above." + }, + "inspector-tools-call-r642b-timed-earlier": { + "command": "mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/call --tool-name order --tool-args-json '{\"action\":\"get_session_stats\",\"args\":{}}' --format json --stored-auth-only --cwd /work", + "exit_code": 0, + "executable": "/mcp-inspector/prefix/bin/mcp-inspector", + "cwd": "", + "stdout": "{\"result\":{\"content\":[{\"type\":\"text\",\"text\":\"{\\\"session_tokens_saved\\\":0,\\\"session_calls\\\":0,\\\"session_duration_s\\\":0.1,\\\"session_response_tokens\\\":0,\\\"total_tokens_saved\\\":0,\\\"total_tokens_saved_basis\\\":{\\\"generation\\\":2,\\\"first_generation\\\":2,\\\"mixed_basis\\\":false},\\\"lifetime_by_tool\\\":{},\\\"lifetime_by_tool_since\\\":null,\\\"lifetime_unattributed\\\":0,\\\"tool_breakdown\\\":{},\\\"tool_calls\\\":{},\\\"savings_per_call\\\":0.0,\\\"result_cache\\\":{\\\"total_hits\\\":0,\\\"total_misses\\\":0,\\\"hit_rate\\\":0.0,\\\"cached_entries\\\":0},\\\"latency_per_tool\\\":{},\\\"session_cost_avoided\\\":{\\\"claude_opus_4_6\\\":0.0,\\\"claude_sonnet_4_6\\\":0.0,\\\"claude_haiku_4_5\\\":0.0,\\\"gpt5_latest\\\":0.0},\\\"total_cost_avoided\\\":{\\\"claude_opus_4_6\\\":0.0,\\\"claude_sonnet_4_6\\\":0.0,\\\"claude_haiku_4_5\\\":0.0,\\\"gpt5_latest\\\":0.0},\\\"runtime_signal\\\":{\\\"rows\\\":0,\\\"by_source\\\":{}},\\\"savings_provenance\\\":{\\\"token_reduction\\\":{\\\"average_pct\\\":99.6,\\\"task_runs\\\":15,\\\"tokenizer\\\":\\\"cl100k_base\\\",\\\"basis\\\":\\\"measured\\\",\\\"source\\\":\\\"benchmarks/provenance/measured.json\\\",\\\"methodology\\\":\\\"benchmarks/METHODOLOGY.md\\\"},\\\"replay_retrieval_quality\\\":{\\\"fixture\\\":\\\"self_v1_75_0\\\",\\\"k\\\":10,\\\"ndcg\\\":1.0,\\\"mrr\\\":1.0,\\\"recall\\\":1.0,\\\"basis\\\":\\\"measured\\\",\\\"source\\\":\\\"benchmarks/provenance/measured.json\\\",\\\"ci_gated\\\":true},\\\"implementation_channel_accuracy\\\":{\\\"corpus\\\":\\\"authored-scenarios-v2\\\",\\\"languages\\\":[\\\"python\\\",\\\"typescript\\\",\\\"go\\\"],\\\"channels\\\":{\\\"ast\\\":{\\\"precision\\\":0.818,\\\"recall\\\":1.0},\\\"duck\\\":{\\\"precision\\\":0.5,\\\"recall\\\":1.0},\\\"decorator\\\":{\\\"precision\\\":0.556,\\\"recall\\\":1.0}},\\\"basis\\\":\\\"measured\\\",\\\"source\\\":\\\"benchmarks/provenance/channel_accuracy.json\\\",\\\"ci_gated\\\":true,\\\"scope_note\\\":\\\"authored gold corpus \\\\u2014 channel discrimination on known patterns and traps, not in-the-wild base rates; n small and disclosed in the artifact\\\"},\\\"contract\\\":\\\"declared = engineering prior; measured = committed benchmark artifact (benchmarks/provenance/measured.json)\\\"},\\\"processes\\\":{\\\"live\\\":1,\\\"others\\\":0,\\\"this_pid\\\":25,\\\"oldest_age_seconds\\\":0.0},\\\"tool_surface\\\":{\\\"surface\\\":\\\"counter\\\",\\\"profile\\\":\\\"full\\\",\\\"visible_tools\\\":6,\\\"catalog_tools\\\":94,\\\"schema_tokens_visible\\\":1050,\\\"schema_tokens_catalog\\\":27880,\\\"schema_tokens_avoided\\\":26830,\\\"schema_tokens_basis\\\":\\\"one_time_at_full_rate_then_cache_read\\\",\\\"schema_tokens_basis_note\\\":\\\"The tool-schema block is stable across requests, so it is paid at full rate approximately once per cache lifetime and at cache-read rates (~0.1x) thereafter. This count is payload size, NOT a per-request saving; reading it as one overstates the cost impact by roughly an order of magnitude. Measured: benchmarks/codex_surface/.\\\",\\\"heaviest_tools\\\":{\\\"order\\\":260,\\\"route\\\":229,\\\"announce_model\\\":161,\\\"jcodemunch_guide\\\":147,\\\"menu\\\":128,\\\"set_tool_tier\\\":125},\\\"estimator\\\":\\\"bytes/4\\\"}}\"}],\"isError\":false}}\n", + "stderr": "[mcp-inspector] Secrets are stored unencrypted (file mode 0600). Set MCP_INSPECTOR_SECRET_KEY or MCP_INSPECTOR_SECRET_KEY_FILE to encrypt them.\n[mcp-inspector] How the secret store is chosen, and how to secure it: https://github.com/modelcontextprotocol/inspector/blob/main/docs/secret-storage.md\nDeprecated: Using JCODEMUNCH_SHARE_SAVINGS environment variable. This will be removed in v2.0. Use config.jsonc instead.\njcodemunch-mcp 1.108.327 by jgravelle \u00b7 https://github.com/jgravelle/jcodemunch-mcp\n", + "stdout_sha256_original": "d6467c8b56adbe08d0d04e80f05e90c7f3b52e85e44be123ade3b10c0c56fca0", + "stderr_sha256_original": "188cc3dea4db2dcff7706137697f8a79268152dfe93660d013c3abc8840d05bd", + "environment": { + "MCP_AUTO_OPEN_ENABLED": "false", + "MCP_INSPECTOR_OAUTH_STATE_PATH": "/oauth.json", + "MCP_INSPECTOR_SECRET_STORE": "file", + "MCP_INSPECTOR_SECRET_FILE": "/secrets.json", + "HOME": "/home", + "XDG_CONFIG_HOME": "/xdg-config", + "XDG_CACHE_HOME": "/xdg-cache", + "XDG_DATA_HOME": "/xdg-data", + "CLAUDE_CONFIG_DIR": "/config" + }, + "started_at_utc": "2026-10-03T07:47:38Z", + "ended_at_utc": "2026-10-03T07:47:39Z", + "attempt_status": "earlier_timed_attempt_before_complete_pin_site_reversion", + "timing_capture": "In the same shell: rtk date -u +%Y-%m-%dT%H:%M:%SZ > /inspector-tools-call.start; rtk proxy env [environment above] mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/call --tool-name order --tool-args-json '{\"action\":\"get_session_stats\",\"args\":{}}' --format json --stored-auth-only --cwd /work > /inspector-tools-call.stdout 2> /inspector-tools-call.stderr; R642B_COMMAND_STATUS=$?; rtk date -u +%Y-%m-%dT%H:%M:%SZ > /inspector-tools-call.end; printf '%s\\n' \"$R642B_COMMAND_STATUS\" > /inspector-tools-call.exit; exit \"$R642B_COMMAND_STATUS\". The bare CLI name resolves to executable above." + }, + "inspector-negative-r642b-timed-earlier": { + "command": "mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/call --tool-name w1_unknown_tool --tool-args-json '{}' --format json --stored-auth-only --cwd /work", + "exit_code": 5, + "executable": "/mcp-inspector/prefix/bin/mcp-inspector", + "cwd": "", + "stdout": "", + "stderr": "[mcp-inspector] Secrets are stored unencrypted (file mode 0600). Set MCP_INSPECTOR_SECRET_KEY or MCP_INSPECTOR_SECRET_KEY_FILE to encrypt them.\n[mcp-inspector] How the secret store is chosen, and how to secure it: https://github.com/modelcontextprotocol/inspector/blob/main/docs/secret-storage.md\nDeprecated: Using JCODEMUNCH_SHARE_SAVINGS environment variable. This will be removed in v2.0. Use config.jsonc instead.\njcodemunch-mcp 1.108.327 by jgravelle \u00b7 https://github.com/jgravelle/jcodemunch-mcp\n{\"error\":{\"code\":\"tool_not_found\",\"message\":\"Tool 'w1_unknown_tool' not found on server.\"}}\n", + "stdout_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "stderr_sha256_original": "ddb5882d31897453b80aeff4d666c5639e6eb57f6fc52b8d561858db01e659fe", + "environment": { + "MCP_AUTO_OPEN_ENABLED": "false", + "MCP_INSPECTOR_OAUTH_STATE_PATH": "/oauth.json", + "MCP_INSPECTOR_SECRET_STORE": "file", + "MCP_INSPECTOR_SECRET_FILE": "/secrets.json", + "HOME": "/home", + "XDG_CONFIG_HOME": "/xdg-config", + "XDG_CACHE_HOME": "/xdg-cache", + "XDG_DATA_HOME": "/xdg-data", + "CLAUDE_CONFIG_DIR": "/config" + }, + "started_at_utc": "2026-10-03T07:47:39Z", + "ended_at_utc": "2026-10-03T07:47:40Z", + "attempt_status": "earlier_timed_attempt_before_complete_pin_site_reversion", + "timing_capture": "In the same shell: rtk date -u +%Y-%m-%dT%H:%M:%SZ > /inspector-negative.start; rtk proxy env [environment above] mcp-inspector --cli --config /mcp.json --server jcodemunch --method tools/call --tool-name w1_unknown_tool --tool-args-json '{}' --format json --stored-auth-only --cwd /work > /inspector-negative.stdout 2> /inspector-negative.stderr; R642B_COMMAND_STATUS=$?; rtk date -u +%Y-%m-%dT%H:%M:%SZ > /inspector-negative.end; printf '%s\\n' \"$R642B_COMMAND_STATUS\" > /inspector-negative.exit; exit \"$R642B_COMMAND_STATUS\". The bare CLI name resolves to executable above." + }, + "mcporter-call-r642b-timed-earlier": { + "command": "mcporter call --stdio /jcodemunch-mcp/prefix/bin/jcodemunch-mcp --env CODE_INDEX_PATH=/code-index --env JCODEMUNCH_SHARE_SAVINGS=0 --env HOME=/home --cwd /work --name jcodemunch --server jcodemunch --tool order --args '{\"action\":\"get_session_stats\",\"args\":{}}' --output json --no-oauth", + "exit_code": 0, + "executable": "/mcporter/prefix/bin/mcporter", + "cwd": "", + "stdout": "{\n \"session_tokens_saved\": 0,\n \"session_calls\": 0,\n \"session_duration_s\": 0.1,\n \"session_response_tokens\": 0,\n \"total_tokens_saved\": 0,\n \"total_tokens_saved_basis\": {\n \"generation\": 2,\n \"first_generation\": 2,\n \"mixed_basis\": false\n },\n \"lifetime_by_tool\": {},\n \"lifetime_by_tool_since\": null,\n \"lifetime_unattributed\": 0,\n \"tool_breakdown\": {},\n \"tool_calls\": {},\n \"savings_per_call\": 0,\n \"result_cache\": {\n \"total_hits\": 0,\n \"total_misses\": 0,\n \"hit_rate\": 0,\n \"cached_entries\": 0\n },\n \"latency_per_tool\": {},\n \"session_cost_avoided\": {\n \"claude_opus_4_6\": 0,\n \"claude_sonnet_4_6\": 0,\n \"claude_haiku_4_5\": 0,\n \"gpt5_latest\": 0\n },\n \"total_cost_avoided\": {\n \"claude_opus_4_6\": 0,\n \"claude_sonnet_4_6\": 0,\n \"claude_haiku_4_5\": 0,\n \"gpt5_latest\": 0\n },\n \"runtime_signal\": {\n \"rows\": 0,\n \"by_source\": {}\n },\n \"savings_provenance\": {\n \"token_reduction\": {\n \"average_pct\": 99.6,\n \"task_runs\": 15,\n \"tokenizer\": \"cl100k_base\",\n \"basis\": \"measured\",\n \"source\": \"benchmarks/provenance/measured.json\",\n \"methodology\": \"benchmarks/METHODOLOGY.md\"\n },\n \"replay_retrieval_quality\": {\n \"fixture\": \"self_v1_75_0\",\n \"k\": 10,\n \"ndcg\": 1,\n \"mrr\": 1,\n \"recall\": 1,\n \"basis\": \"measured\",\n \"source\": \"benchmarks/provenance/measured.json\",\n \"ci_gated\": true\n },\n \"implementation_channel_accuracy\": {\n \"corpus\": \"authored-scenarios-v2\",\n \"languages\": [\n \"python\",\n \"typescript\",\n \"go\"\n ],\n \"channels\": {\n \"ast\": {\n \"precision\": 0.818,\n \"recall\": 1\n },\n \"duck\": {\n \"precision\": 0.5,\n \"recall\": 1\n },\n \"decorator\": {\n \"precision\": 0.556,\n \"recall\": 1\n }\n },\n \"basis\": \"measured\",\n \"source\": \"benchmarks/provenance/channel_accuracy.json\",\n \"ci_gated\": true,\n \"scope_note\": \"authored gold corpus \u2014 channel discrimination on known patterns and traps, not in-the-wild base rates; n small and disclosed in the artifact\"\n },\n \"contract\": \"declared = engineering prior; measured = committed benchmark artifact (benchmarks/provenance/measured.json)\"\n },\n \"processes\": {\n \"live\": 1,\n \"others\": 0,\n \"this_pid\": 25,\n \"oldest_age_seconds\": 0\n },\n \"tool_surface\": {\n \"surface\": \"counter\",\n \"profile\": \"full\",\n \"visible_tools\": 6,\n \"catalog_tools\": 94,\n \"schema_tokens_visible\": 1050,\n \"schema_tokens_catalog\": 27880,\n \"schema_tokens_avoided\": 26830,\n \"schema_tokens_basis\": \"one_time_at_full_rate_then_cache_read\",\n \"schema_tokens_basis_note\": \"The tool-schema block is stable across requests, so it is paid at full rate approximately once per cache lifetime and at cache-read rates (~0.1x) thereafter. This count is payload size, NOT a per-request saving; reading it as one overstates the cost impact by roughly an order of magnitude. Measured: benchmarks/codex_surface/.\",\n \"heaviest_tools\": {\n \"order\": 260,\n \"route\": 229,\n \"announce_model\": 161,\n \"jcodemunch_guide\": 147,\n \"menu\": 128,\n \"set_tool_tier\": 125\n },\n \"estimator\": \"bytes/4\"\n }\n}\n", + "stderr": "", + "stdout_sha256_original": "2b299e18d0c05c2914876815b733bc74f7c5d9a582094c074d464cff98f58094", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "started_at_utc": "2026-10-03T07:47:40Z", + "ended_at_utc": "2026-10-03T07:47:41Z", + "attempt_status": "earlier_timed_attempt_before_complete_pin_site_reversion", + "evidence_use": "compatibility_attempt_for_hold_only", + "environment": { + "HOME": "/home", + "XDG_CONFIG_HOME": "/xdg-config", + "XDG_CACHE_HOME": "/xdg-cache", + "XDG_DATA_HOME": "/xdg-data", + "CLAUDE_CONFIG_DIR": "/config", + "MCP_AUTO_OPEN_ENABLED": "false", + "MCP_INSPECTOR_OAUTH_STATE_PATH": "/oauth.json", + "MCP_INSPECTOR_SECRET_STORE": "file", + "MCP_INSPECTOR_SECRET_FILE": "/secrets.json" + }, + "timing_capture": "In the same shell: rtk date -u +%Y-%m-%dT%H:%M:%SZ > /mcporter-call.start; rtk proxy env [environment above] mcporter call --stdio /jcodemunch-mcp/prefix/bin/jcodemunch-mcp --env CODE_INDEX_PATH=/code-index --env JCODEMUNCH_SHARE_SAVINGS=0 --env HOME=/home --cwd /work --name jcodemunch --server jcodemunch --tool order --args '{\"action\":\"get_session_stats\",\"args\":{}}' --output json --no-oauth > /mcporter-call.stdout 2> /mcporter-call.stderr; R642B_COMMAND_STATUS=$?; rtk date -u +%Y-%m-%dT%H:%M:%SZ > /mcporter-call.end; printf '%s\\n' \"$R642B_COMMAND_STATUS\" > /mcporter-call.exit; exit \"$R642B_COMMAND_STATUS\". The bare CLI name resolves to executable above." } }, "independent_observation": { @@ -169,5 +376,56 @@ "decisive_output": "..................s....................ssssssssssssss..........................s..........................................ssssssss...........................sss.........s.........................sssss.....................................................\n----------------------------------------------------------------------\nRan 253 tests in 65.608s\n\nOK (skipped=33)", "scope": "Repository unit/integration tests with native local npm fixtures; no macOS runtime or host switch." } - ] + ], + "r642b_recorded_at_utc": "2026-10-03T07:49:39.883972+00:00", + "r642b_scope": "Fresh timed runs of the four original commands, using the W1 scratch installs and a fresh isolated configuration/home. mcporter 0.14.2 is compatibility-attempt evidence for its hold only.", + "r642b_claude_hud_upgrade": { + "status": "documented, host verification pending", + "installed_version": "2.1.288", + "scope": "Installed native client help only, executed from scratch cwd with HOME and CLAUDE_CONFIG_DIR in temporary directories. No marketplace or plugin update executed; host configuration and plugins were not touched.", + "upstream_sources": [ + "https://github.com/anthropics/claude-code/blob/v2.1.288/CHANGELOG.md", + "https://code.claude.com/docs/en/plugins/install#update-plugins-now", + "https://code.claude.com/docs/en/plugins/cli-reference#plugin-marketplace-update", + "https://code.claude.com/docs/en/plugins/loading#plugins-and-marketplaces-that-arent-on-disk-at-session-start", + "https://code.claude.com/docs/en/env-vars#variables" + ], + "help_commands": [ + { + "command": "claude --version", + "executable": "", + "cwd": "/work", + "environment": { + "HOME": "/home", + "CLAUDE_CONFIG_DIR": "/config" + }, + "exit_code": 0, + "returned_output": "2.1.288 (Claude Code)\n" + }, + { + "command": "claude plugin marketplace update --help", + "executable": "", + "cwd": "/work", + "environment": { + "HOME": "/home", + "CLAUDE_CONFIG_DIR": "/config" + }, + "exit_code": 0, + "returned_output": "Usage: claude plugin marketplace update [options] [name]\n\nUpdate marketplace(s) from their source - updates all if no name specified\n\nOptions:\n -h, --help Display help for command\n --json With a marketplace name: print one machine-readable result line as\n the last line on stdout (same exit codes)\n" + }, + { + "command": "claude plugin update --help", + "executable": "", + "cwd": "/work", + "environment": { + "HOME": "/home", + "CLAUDE_CONFIG_DIR": "/config" + }, + "exit_code": 0, + "returned_output": "Usage: claude plugin update [options] \n\nUpdate a plugin to the latest version (restart required to apply)\n\nOptions:\n --accept-command Accept the marketplace-declared command (a\n command-source install, or the headersHelper that\n fetches the archive) whose sha256 a previous --json\n run reported as shownCommand.sha256; counts as -y\n for exactly that command, for that plugin and\n marketplace catalog, and nothing else. If either\n changed (a refresh that moved the catalog counts),\n the run refuses and reports the command again, to\n be shown to a person again\n -h, --help Display help for command\n --json Print one machine-readable result line on stdout\n instead of the human message (same exit codes; a\n marketplace-declared command is still shown and\n must be confirmed \u2014 pass -y when not interactive)\n -s, --scope Installation scope: user, project, local, managed\n (default: auto-detect)\n -y, --yes Accept the displayed marketplace-declared command\n without the confirmation prompt \u2014 a changed install\n command, or the headersHelper command that fetches\n its archive (required when stdin or stdout is not a\n TTY)\n" + } + ], + "offline_tag_transition_verified": false + }, + "r642b_last_updated_at_utc": "2026-10-03T08:25:40.680899+00:00" } diff --git a/evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json b/evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json new file mode 100644 index 000000000..6c95d7783 --- /dev/null +++ b/evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json @@ -0,0 +1,326 @@ +{ + "schema_version": 1, + "observed_date_utc": "2026-10-03", + "recorded_at_utc": "2026-10-03T08:18:54.354483+00:00", + "evidence_class": "native_local_integration", + "repair_contract": "R642b", + "source_head": "2d6f49233fa15e4993819c718d131bc6c10e5125", + "upstream_sources": [ + "https://github.com/containers/bubblewrap/tree/v0.9.0", + "https://github.com/containers/bubblewrap/blob/v0.9.0/bwrap.xml", + "https://github.com/git/git/blob/v2.43.0/Documentation/git.txt", + "https://github.com/gitleaks/gitleaks/releases/tag/v8.30.1", + "https://pypi.org/pypi/PyYAML/6.0.3/json" + ], + "required_checks": [ + { + "id": "validate", + "command": "python3 scripts/validate.py", + "exit_code": 0, + "started_at_utc": "2026-10-03T07:57:02Z", + "ended_at_utc": "2026-10-03T07:57:23Z", + "returned_stdout": "{\"components\": 69, \"hashed_files\": 9422, \"profiles\": 4, \"receipts\": 196, \"status\": \"passed\"}\nIntegrity and scope checks only; no live provider or GPU execution.\n", + "returned_stderr": "", + "stdout_sha256_original": "e6ac2f4e28d35828e6e2798646edd1577d8d3990901ca2fc55f597ba2f66d22e", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "validate-convergence", + "command": "python3 scripts/validate_convergence.py --all-recorded --root . --json", + "exit_code": 0, + "started_at_utc": "2026-10-03T07:57:02Z", + "ended_at_utc": "2026-10-03T07:57:04Z", + "returned_stdout": "{\"records\": [{\"errors\": [], \"observations\": 3, \"path\": \"blueprints/blind-catalog-convergence/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 3, \"path\": \"blueprints/blind-catalog-convergence/memory-experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 4, \"path\": \"blueprints/catalog-runtime-review/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 15, \"path\": \"blueprints/convergence-practice/application-delivery/experiment-macos-20260924.json\", \"valid\": true}, {\"errors\": [], \"observations\": 3, \"path\": \"blueprints/convergence-practice/application-delivery/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/ci-security/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/document-ingestion/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 0, \"path\": \"blueprints/convergence-practice/gpt6-family-tiering-20260926/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/gpu-inference/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 3, \"path\": \"blueprints/convergence-practice/job-recovery/experiment-macos.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/job-recovery/experiment-wsl.json\", \"valid\": true}, {\"errors\": [], \"observations\": 7, \"path\": \"blueprints/convergence-practice/local-inference-latest-20260926/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 2, \"path\": \"blueprints/convergence-practice/mac-memory-patch/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/native-recovery/claude/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/native-recovery/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 2, \"path\": \"blueprints/convergence-practice/native-worker/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 20, \"path\": \"blueprints/convergence-practice/omniroute-routing-20260928/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/wsl-memory-maintenance/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 2, \"path\": \"blueprints/convergence-practice/wsl-native-tools/experiment-wsl.json\", \"valid\": true}, {\"errors\": [], \"observations\": 0, \"path\": \"blueprints/convergence-practice/wsl-new-distro-image-20261001/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/wsl-retrieval/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 3, \"path\": \"blueprints/convergence-practice/wsl-transport-recovery/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 8, \"path\": \"blueprints/us-equities/sim-capacity/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 6, \"path\": \"evidence/artifacts/local-model-workloads-20260924/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 24, \"path\": \"evidence/artifacts/memory-stack-20260925/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 3, \"path\": \"evidence/artifacts/native-workflow-writing-recovery-20260921/experiment.json\", \"valid\": true}], \"valid\": true}\n", + "returned_stderr": "", + "stdout_sha256_original": "672ad5b6c96651f6d613a584d812f00e78339b7db50fec643a27aaaf148c906c", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "landscape", + "command": "python3 scripts/landscape.py --root .", + "exit_code": 0, + "started_at_utc": "2026-10-03T07:57:02Z", + "ended_at_utc": "2026-10-03T07:57:03Z", + "returned_stdout": "{\"counts\": {\"applied_skills\": 3, \"comparison_candidates\": 365, \"comparison_repositories\": 161, \"current_public_stars\": 343, \"dispositions\": {\"conditional\": 164, \"measured_tradeoff\": 9, \"out_of_scope\": 9, \"overlap\": 14, \"selected\": 136, \"unqualified\": 33}, \"domain_layers\": 4, \"explained_components\": 69, \"foundation_decisions\": 54, \"foundation_layers\": 20, \"foundation_statuses\": {\"accepted_within_scope\": 44, \"partial_acceptance\": 2, \"source_review\": 8}, \"historical_candidate_cards\": 154, \"layers\": 32, \"quality_review_repositories\": 16, \"research_queue_layers\": 32, \"research_repositories\": 875, \"selected_components\": 69}, \"scope\": \"Coverage and reference integrity; no new runtime or ranking acceptance.\", \"status\": \"passed\"}\n", + "returned_stderr": "", + "stdout_sha256_original": "f2ffcf6bb1442024fdf17236278925740ad8416a239fe8aa8133c7b75cabeadb", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "unittest", + "command": "python3 -B -m unittest tests.test_stack_lifecycle tests.test_render_config tests.test_adoption_contract tests.test_grand_dashboard tests.test_landscape_sweep_harness tests.test_observability_tool_names tests.test_observability_run_correlation tests.test_sdk_usage_scope tests.test_blind_checkout", + "exit_code": 1, + "started_at_utc": "2026-10-03T07:57:02Z", + "ended_at_utc": "2026-10-03T07:58:23Z", + "returned_stdout": "Installed dashboard and two units; service activation remains explicit.\nstarted start-race\nnot started launch-refused: the job runner could not start\n", + "returned_stderr": ".........................................................................................................................................s.................................................................................................ss............................ssssssss..s...sssssEEEEEE.E.EE....EE........................\n======================================================================\nERROR: test_a_reference_to_a_symlink_whose_target_is_not_exported_is_missing (tests.test_blind_checkout.AllowlistExportTests.test_a_reference_to_a_symlink_whose_target_is_not_exported_is_missing)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 670, in setUp\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(self.export),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-from-packets\", str(self.packets),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-missing-refs\"]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmp/tmp7byiusd6/hosts/blind/export is inside the git repository /tmp; place it outside every repository\n\n======================================================================\nERROR: test_an_export_inside_the_worktree_is_refused (tests.test_blind_checkout.AllowlistExportTests.test_an_export_inside_the_worktree_is_refused)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 670, in setUp\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(self.export),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-from-packets\", str(self.packets),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-missing-refs\"]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmp/tmp3ng4ijcp/hosts/blind/export is inside the git repository /tmp; place it outside every repository\n\n======================================================================\nERROR: test_bare_reference_reduction (tests.test_blind_checkout.AllowlistExportTests.test_bare_reference_reduction)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 670, in setUp\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(self.export),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-from-packets\", str(self.packets),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-missing-refs\"]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmp/tmpc9iru6yk/hosts/blind/export is inside the git repository /tmp; place it outside every repository\n\n======================================================================\nERROR: test_counts_and_missing_references_are_reported (tests.test_blind_checkout.AllowlistExportTests.test_counts_and_missing_references_are_reported)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 670, in setUp\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(self.export),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-from-packets\", str(self.packets),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-missing-refs\"]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmp/tmpmmjj42vv/hosts/blind/export is inside the git repository /tmp; place it outside every repository\n\n======================================================================\nERROR: test_export_holds_only_referenced_and_transitive_paths (tests.test_blind_checkout.AllowlistExportTests.test_export_holds_only_referenced_and_transitive_paths)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 670, in setUp\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(self.export),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-from-packets\", str(self.packets),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-missing-refs\"]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmp/tmpktd9qkky/hosts/blind/export is inside the git repository /tmp; place it outside every repository\n\n======================================================================\nERROR: test_missing_references_are_refused_by_default (tests.test_blind_checkout.AllowlistExportTests.test_missing_references_are_refused_by_default)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 670, in setUp\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(self.export),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-from-packets\", str(self.packets),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-missing-refs\"]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmp/tmp5nkumk2_/hosts/blind/export is inside the git repository /tmp; place it outside every repository\n\n======================================================================\nERROR: test_no_catalog_json_in_the_export_carries_a_winner_or_incumbent_value (tests.test_blind_checkout.CatalogWinnerKeyTests.test_no_catalog_json_in_the_export_carries_a_winner_or_incumbent_value)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 567, in test_no_catalog_json_in_the_export_carries_a_winner_or_incumbent_value\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(export)]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmp/tmp4ekfuzfm/hosts/blind/export is inside the git repository /tmp; place it outside every repository\n\n======================================================================\nERROR: test_escaping_symlinks_are_removed_and_inner_ones_kept (tests.test_blind_checkout.ExportSymlinkTests.test_escaping_symlinks_are_removed_and_inner_ones_kept)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 482, in test_escaping_symlinks_are_removed_and_inner_ones_kept\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(export)]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmp/tmpb4qhqdsy/hosts/blind/export is inside the git repository /tmp; place it outside every repository\n\n======================================================================\nERROR: test_instruction_names_that_are_directory_symlinks_become_stubs (tests.test_blind_checkout.ExportSymlinkTests.test_instruction_names_that_are_directory_symlinks_become_stubs)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 504, in test_instruction_names_that_are_directory_symlinks_become_stubs\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(export)]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmp/tmpf5df4pdq/hosts/blind/export is inside the git repository /tmp; place it outside every repository\n\n======================================================================\nERROR: test_export_has_the_stripped_tree_without_git_or_the_manifest (tests.test_blind_checkout.ExportTests.test_export_has_the_stripped_tree_without_git_or_the_manifest)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 386, in test_export_has_the_stripped_tree_without_git_or_the_manifest\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(export)]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmp/tmpdz1m7f99/hosts/blind/export is inside the git repository /tmp; place it outside every repository\n\n======================================================================\nERROR: test_the_export_replaces_every_project_instruction_file_and_leaves_the_worktree_alone (tests.test_blind_checkout.ExportTests.test_the_export_replaces_every_project_instruction_file_and_leaves_the_worktree_alone)\nPR #141 review (P1): AGENTS.md and CLAUDE.md were copied unchanged, so a Codex child started with\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 440, in test_the_export_replaces_every_project_instruction_file_and_leaves_the_worktree_alone\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(export)]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmp/tmpj17i6jls/hosts/blind/export is inside the git repository /tmp; place it outside every repository\n\n----------------------------------------------------------------------\nRan 325 tests in 80.366s\n\nFAILED (errors=11, skipped=17)\n", + "stdout_sha256_original": "218009ef7d10a4a842bbb74f17cacb1afed3ca4cf06f2e084ebf9d7c2a9ec82d", + "stderr_sha256_original": "12470b293b9a41b66c610e58dc35e6e47e5b2ce0e5e62bca2ce3f7746c8a5425" + }, + { + "id": "validate-catalogs", + "command": "python3 scripts/validate_catalogs.py", + "exit_code": 0, + "started_at_utc": "2026-10-03T07:57:02Z", + "ended_at_utc": "2026-10-03T07:57:02Z", + "returned_stdout": "{\"beyond_star_catalog_repositories\": 102, \"models\": 20, \"public_stars\": 357, \"repository_entries\": 154, \"starred_catalog_repositories\": 46, \"unique_catalog_repositories\": 148}\nCatalog structure and evidence classes validated; source claims and native executions were not rerun.\n", + "returned_stderr": "", + "stdout_sha256_original": "8f241daedb4f7a5eaaff358e5653981120ee9436a8959c7b968eedb30dbe9a01", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "validate-foundation", + "command": "python3 scripts/validate_foundation.py --root . --json", + "exit_code": 0, + "started_at_utc": "2026-10-03T07:57:02Z", + "ended_at_utc": "2026-10-03T07:57:02Z", + "returned_stdout": "{\n \"ok\": true,\n \"counts\": {\n \"layers\": 20,\n \"decisions\": 54,\n \"foundation_components\": 61,\n \"domain_components\": 7,\n \"evidence_receipts\": 84,\n \"candidates\": 3\n },\n \"errors\": []\n}\n", + "returned_stderr": "", + "stdout_sha256_original": "b6535ffab61c1faafa85b93dbe965f253fa479ac0c58dfb6af61c0094a001d3f", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "component-matrix", + "command": "python3 scripts/component_matrix.py --check", + "exit_code": 0, + "started_at_utc": "2026-10-03T07:57:02Z", + "ended_at_utc": "2026-10-03T07:57:03Z", + "returned_stdout": "{\"rows\": 32, \"status\": \"checked\"}\n", + "returned_stderr": "", + "stdout_sha256_original": "08ce4f275c99b7f91a141cfca5b7384f060aacf620f23a324cde692d55e6ffcd", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "new-host-grand-list", + "command": "python3 scripts/new_host_grand_list.py --check", + "exit_code": 0, + "started_at_utc": "2026-10-03T07:57:02Z", + "ended_at_utc": "2026-10-03T07:57:02Z", + "returned_stdout": "{\"status\": \"passed\", \"layers\": 32, \"winners\": 66}\n", + "returned_stderr": "", + "stdout_sha256_original": "63d8d8221f6c7c051149b1405ef5de7623dbb2d37257fad49a8a774b02d49226", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "build-ecosystem", + "command": "python3 scripts/build_ecosystem.py --check", + "exit_code": 0, + "started_at_utc": "2026-10-03T07:57:02Z", + "ended_at_utc": "2026-10-03T07:57:08Z", + "returned_stdout": "{\"architecture_pin_drift\": [{\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"foundation/native-clients\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"worktrunk\", \"edition_pin\": \"0.79.0\", \"row\": \"foundation/workers\", \"stack_pin\": \"0.80.0\"}, {\"component_id\": \"worktrunk\", \"edition_pin\": \"0.79.0\", \"row\": \"foundation/isolation\", \"stack_pin\": \"0.80.0\"}, {\"component_id\": \"jcodemunch-mcp\", \"edition_pin\": \"1.108.319\", \"row\": \"foundation/code-navigation\", \"stack_pin\": \"1.108.327\"}, {\"component_id\": \"openresearch\", \"edition_pin\": \"0.2.7\", \"row\": \"foundation/web-research\", \"stack_pin\": \"0.2.15\"}, {\"component_id\": \"syft\", \"edition_pin\": \"1.52.0\", \"row\": \"foundation/ci-supply-chain\", \"stack_pin\": \"1.54.0\"}, {\"component_id\": \"nextjs\", \"edition_pin\": \"16.3.6\", \"row\": \"foundation/hosting-services\", \"stack_pin\": \"16.3.8\"}, {\"component_id\": \"opentelemetry-collector-contrib\", \"edition_pin\": \"0.161.0\", \"row\": \"foundation/observation-inference\", \"stack_pin\": \"0.162.0\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"foundation/agent-sdks\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"mcp-inspector\", \"edition_pin\": \"2.8.0\", \"row\": \"foundation/mcp-surfaces\", \"stack_pin\": \"2.9.0\"}, {\"component_id\": \"worktrunk\", \"edition_pin\": \"0.79.0\", \"row\": \"foundation/git-github-automation\", \"stack_pin\": \"0.80.0\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"us-equities/data-quality-orchestration\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"opentelemetry-collector-contrib\", \"edition_pin\": \"0.161.0\", \"row\": \"us-equities/data-quality-orchestration\", \"stack_pin\": \"0.162.0\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"us-equities/evaluation-experiments\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"opentelemetry-collector-contrib\", \"edition_pin\": \"0.161.0\", \"row\": \"us-equities/evaluation-experiments\", \"stack_pin\": \"0.162.0\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"us-equities/agents-models-workers\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"us-equities/observability-hosting\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"opentelemetry-collector-contrib\", \"edition_pin\": \"0.161.0\", \"row\": \"us-equities/observability-hosting\", \"stack_pin\": \"0.162.0\"}, {\"component_id\": \"syft\", \"edition_pin\": \"1.52.0\", \"row\": \"us-equities/security-supply-chain\", \"stack_pin\": \"1.54.0\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"cross/cross:gpt6-harnesses\", \"stack_pin\": \"0.159.3\"}], \"bytes\": 15122719, \"input_sha256\": \"0cc51849d2f9081434a3c66cdf1b644fbca9a67c89d85bad631dc668895ffad7\", \"output_sha256\": \"021d43b49f32679f7fafa340fccaba08b53821bc4487bc9a926cbc684797843e\", \"status\": \"passed\"}\n", + "returned_stderr": "", + "stdout_sha256_original": "77256b99d661a3b329b2c2ca31d82bda830b550e69143364726c3d7cf666fec5", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "pre-push-registry", + "command": "python3 -B -m unittest tests.test_osv_lockfile_coverage.LockfileInventoryTests.test_every_tracked_lockfile_and_manifest_is_listed tests.test_blind_checkout.RepositoryClassificationTests.test_every_blueprint_value_under_a_label_key_is_classified tests.test_workflow_security_coverage.NewWorkflowSecurityCoverageTests.test_all_published_workflows_are_listed_and_covered", + "exit_code": 0, + "started_at_utc": "2026-10-03T07:57:02Z", + "ended_at_utc": "2026-10-03T07:57:03Z", + "returned_stdout": "", + "returned_stderr": "...\n----------------------------------------------------------------------\nRan 3 tests in 0.202s\n\nOK\n", + "stdout_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "stderr_sha256_original": "8ce8c3903330d15bfe40814b3443a4cdec6e7dea58cc22bc34fc38116ab1de9b" + }, + { + "id": "unittest-qualified", + "command": "uv run --no-project --python 3.13 --with PyYAML==6.0.3 python3 -B -m unittest tests.test_stack_lifecycle tests.test_render_config tests.test_adoption_contract tests.test_grand_dashboard tests.test_landscape_sweep_harness tests.test_observability_tool_names tests.test_observability_run_correlation tests.test_sdk_usage_scope tests.test_blind_checkout", + "exit_code": 1, + "started_at_utc": "2026-10-03T08:04:33Z", + "ended_at_utc": "2026-10-03T08:06:49Z", + "returned_stdout": "Installed dashboard and two units; service activation remains explicit.\nstarted start-race\nnot started launch-refused: the job runner could not start\n{\"dashboard_result\": [], \"stage\": \"start_and_resume\"}\n{\"dashboard_result\": [], \"stage\": \"same_id_replay_and_new_id_republication\"}\n{\"dashboard_result\": [], \"stage\": \"unavailable_and_legacy_without_additive_baseline\"}\n", + "returned_stderr": "Installed 1 package in 10ms\n.........................................................................................................................................s.................................................................................................ss...............................................EEEEEE.E.EE....EE........................\n======================================================================\nERROR: test_a_reference_to_a_symlink_whose_target_is_not_exported_is_missing (tests.test_blind_checkout.AllowlistExportTests.test_a_reference_to_a_symlink_whose_target_is_not_exported_is_missing)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 670, in setUp\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(self.export),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-from-packets\", str(self.packets),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-missing-refs\"]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmphwjjj3kd/hosts/blind/export is inside the git repository /.local/state/native-agent-stack/session-0c-20261002/builds; place it outside every repository\n\n======================================================================\nERROR: test_an_export_inside_the_worktree_is_refused (tests.test_blind_checkout.AllowlistExportTests.test_an_export_inside_the_worktree_is_refused)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 670, in setUp\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(self.export),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-from-packets\", str(self.packets),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-missing-refs\"]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmp6z7og9p5/hosts/blind/export is inside the git repository /.local/state/native-agent-stack/session-0c-20261002/builds; place it outside every repository\n\n======================================================================\nERROR: test_bare_reference_reduction (tests.test_blind_checkout.AllowlistExportTests.test_bare_reference_reduction)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 670, in setUp\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(self.export),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-from-packets\", str(self.packets),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-missing-refs\"]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmpu2e4k4ze/hosts/blind/export is inside the git repository /.local/state/native-agent-stack/session-0c-20261002/builds; place it outside every repository\n\n======================================================================\nERROR: test_counts_and_missing_references_are_reported (tests.test_blind_checkout.AllowlistExportTests.test_counts_and_missing_references_are_reported)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 670, in setUp\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(self.export),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-from-packets\", str(self.packets),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-missing-refs\"]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmptoxktage/hosts/blind/export is inside the git repository /.local/state/native-agent-stack/session-0c-20261002/builds; place it outside every repository\n\n======================================================================\nERROR: test_export_holds_only_referenced_and_transitive_paths (tests.test_blind_checkout.AllowlistExportTests.test_export_holds_only_referenced_and_transitive_paths)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 670, in setUp\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(self.export),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-from-packets\", str(self.packets),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-missing-refs\"]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmpn92m_w1x/hosts/blind/export is inside the git repository /.local/state/native-agent-stack/session-0c-20261002/builds; place it outside every repository\n\n======================================================================\nERROR: test_missing_references_are_refused_by_default (tests.test_blind_checkout.AllowlistExportTests.test_missing_references_are_refused_by_default)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 670, in setUp\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(self.export),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-from-packets\", str(self.packets),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--allow-missing-refs\"]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmpwpkxm2i8/hosts/blind/export is inside the git repository /.local/state/native-agent-stack/session-0c-20261002/builds; place it outside every repository\n\n======================================================================\nERROR: test_no_catalog_json_in_the_export_carries_a_winner_or_incumbent_value (tests.test_blind_checkout.CatalogWinnerKeyTests.test_no_catalog_json_in_the_export_carries_a_winner_or_incumbent_value)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 567, in test_no_catalog_json_in_the_export_carries_a_winner_or_incumbent_value\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(export)]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmprpj_ec6h/hosts/blind/export is inside the git repository /.local/state/native-agent-stack/session-0c-20261002/builds; place it outside every repository\n\n======================================================================\nERROR: test_escaping_symlinks_are_removed_and_inner_ones_kept (tests.test_blind_checkout.ExportSymlinkTests.test_escaping_symlinks_are_removed_and_inner_ones_kept)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 482, in test_escaping_symlinks_are_removed_and_inner_ones_kept\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(export)]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmpoxy931i0/hosts/blind/export is inside the git repository /.local/state/native-agent-stack/session-0c-20261002/builds; place it outside every repository\n\n======================================================================\nERROR: test_instruction_names_that_are_directory_symlinks_become_stubs (tests.test_blind_checkout.ExportSymlinkTests.test_instruction_names_that_are_directory_symlinks_become_stubs)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 504, in test_instruction_names_that_are_directory_symlinks_become_stubs\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(export)]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmpclbn97e6/hosts/blind/export is inside the git repository /.local/state/native-agent-stack/session-0c-20261002/builds; place it outside every repository\n\n======================================================================\nERROR: test_export_has_the_stripped_tree_without_git_or_the_manifest (tests.test_blind_checkout.ExportTests.test_export_has_the_stripped_tree_without_git_or_the_manifest)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 386, in test_export_has_the_stripped_tree_without_git_or_the_manifest\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(export)]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmpfrkp90qi/hosts/blind/export is inside the git repository /.local/state/native-agent-stack/session-0c-20261002/builds; place it outside every repository\n\n======================================================================\nERROR: test_the_export_replaces_every_project_instruction_file_and_leaves_the_worktree_alone (tests.test_blind_checkout.ExportTests.test_the_export_replaces_every_project_instruction_file_and_leaves_the_worktree_alone)\nPR #141 review (P1): AGENTS.md and CLAUDE.md were copied unchanged, so a Codex child started with\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_blind_checkout.py\", line 440, in test_the_export_replaces_every_project_instruction_file_and_leaves_the_worktree_alone\n self.assertEqual(blind_checkout.main([\"--source\", str(self.source), \"--rev\", \"HEAD\",\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \"--dest\", str(self.dest), \"--export\", str(export)]), 0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/tools/sota-convergence/blind_checkout.py\", line 974, in main\n raise SystemExit(f\"--export {export} is inside the git repository {ancestor}; place it outside every \"\n \"repository\")\nSystemExit: --export /tmpmdlsfw6h/hosts/blind/export is inside the git repository /.local/state/native-agent-stack/session-0c-20261002/builds; place it outside every repository\n\n----------------------------------------------------------------------\nRan 325 tests in 135.162s\n\nFAILED (errors=11, skipped=3)\n", + "stdout_sha256_original": "eba0b619349c3c3ca47e5db79069f9ced44782a2df010fb5cd9ece3272d2e980", + "stderr_sha256_original": "6965f8991515836cf2177298958d4d93881f203ba504a4c115db0b07a28c6d3f" + }, + { + "id": "unittest-isolated", + "command": "bwrap --ro-bind / / --tmpfs /tmp --bind --proc /proc --dev-bind /dev /dev --die-with-parent --new-session -- env [isolated environment] uv run --no-project --python 3.13 --with PyYAML==6.0.3 python3 -B -m unittest tests.test_stack_lifecycle tests.test_render_config tests.test_adoption_contract tests.test_grand_dashboard tests.test_landscape_sweep_harness tests.test_observability_tool_names tests.test_observability_run_correlation tests.test_sdk_usage_scope tests.test_blind_checkout", + "exit_code": 1, + "started_at_utc": "2026-10-03T08:09:45Z", + "ended_at_utc": "2026-10-03T08:11:58Z", + "returned_stdout": "Installed dashboard and two units; service activation remains explicit.\nstarted start-race\nnot started launch-refused: the job runner could not start\n{\"dashboard_result\": [], \"stage\": \"start_and_resume\"}\n{\"dashboard_result\": [], \"stage\": \"same_id_replay_and_new_id_republication\"}\n{\"dashboard_result\": [], \"stage\": \"unavailable_and_legacy_without_additive_baseline\"}\n", + "returned_stderr": ".....EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE.................................................................................................s.................................................................................................ss........................................................................................\n======================================================================\nERROR: test_a_host_supplied_binary_wins_over_the_pin (tests.test_render_config.AiMemoryBinTests.test_a_host_supplied_binary_wins_over_the_pin)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 466, in setUp\n (self.hosts_dir / f\"{self.host}.json\").write_text(json.dumps(values, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-no-bin.json'\n\n======================================================================\nERROR: test_a_platform_without_a_pins_file_fails_closed_unless_the_binary_is_given (tests.test_render_config.AiMemoryBinTests.test_a_platform_without_a_pins_file_fails_closed_unless_the_binary_is_given)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 466, in setUp\n (self.hosts_dir / f\"{self.host}.json\").write_text(json.dumps(values, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-no-bin.json'\n\n======================================================================\nERROR: test_each_platform_renders_its_own_pinned_install (tests.test_render_config.AiMemoryBinTests.test_each_platform_renders_its_own_pinned_install)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 466, in setUp\n (self.hosts_dir / f\"{self.host}.json\").write_text(json.dumps(values, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-no-bin.json'\n\n======================================================================\nERROR: test_the_template_names_no_versioned_ai_memory_install (tests.test_render_config.AiMemoryBinTests.test_the_template_names_no_versioned_ai_memory_install)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 466, in setUp\n (self.hosts_dir / f\"{self.host}.json\").write_text(json.dumps(values, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-no-bin.json'\n\n======================================================================\nERROR: test_a_host_supplied_model_wins_over_the_pin (tests.test_render_config.CodexModelTests.test_a_host_supplied_model_wins_over_the_pin)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 612, in setUp\n (self.hosts_dir / f\"{self.host}.json\").write_text(json.dumps(values, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-no-codex-model.json'\n\n======================================================================\nERROR: test_a_platform_without_a_pins_file_fails_closed_unless_the_model_is_given (tests.test_render_config.CodexModelTests.test_a_platform_without_a_pins_file_fails_closed_unless_the_model_is_given)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 612, in setUp\n (self.hosts_dir / f\"{self.host}.json\").write_text(json.dumps(values, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-no-codex-model.json'\n\n======================================================================\nERROR: test_each_platform_renders_the_model_its_pinned_codex_lists (tests.test_render_config.CodexModelTests.test_each_platform_renders_the_model_its_pinned_codex_lists)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 612, in setUp\n (self.hosts_dir / f\"{self.host}.json\").write_text(json.dumps(values, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-no-codex-model.json'\n\n======================================================================\nERROR: test_gpt_6_1_sol_starts_at_codex_0_159_1 (tests.test_render_config.CodexModelTests.test_gpt_6_1_sol_starts_at_codex_0_159_1)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 612, in setUp\n (self.hosts_dir / f\"{self.host}.json\").write_text(json.dumps(values, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-no-codex-model.json'\n\n======================================================================\nERROR: test_out_and_check_name_the_derived_model_its_pin_and_the_rules_sources (tests.test_render_config.CodexModelTests.test_out_and_check_name_the_derived_model_its_pin_and_the_rules_sources)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 612, in setUp\n (self.hosts_dir / f\"{self.host}.json\").write_text(json.dumps(values, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-no-codex-model.json'\n\n======================================================================\nERROR: test_the_template_names_its_models_only_through_the_placeholder (tests.test_render_config.CodexModelTests.test_the_template_names_its_models_only_through_the_placeholder)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 612, in setUp\n (self.hosts_dir / f\"{self.host}.json\").write_text(json.dumps(values, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-no-codex-model.json'\n\n======================================================================\nERROR: test_assistant_capture_is_an_explicit_opt_in_on_the_stop_hook_only (tests.test_render_config.RenderConfigTests.test_assistant_capture_is_an_explicit_opt_in_on_the_stop_hook_only)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_assistant_capture_rejects_anything_but_true_or_false (tests.test_render_config.RenderConfigTests.test_assistant_capture_rejects_anything_but_true_or_false)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_check_exit_one_and_diff_when_rendered_differs_from_live_fixture (tests.test_render_config.RenderConfigTests.test_check_exit_one_and_diff_when_rendered_differs_from_live_fixture)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_check_exit_zero_when_rendered_matches_live_fixture (tests.test_render_config.RenderConfigTests.test_check_exit_zero_when_rendered_matches_live_fixture)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_check_reports_missing_live_file (tests.test_render_config.RenderConfigTests.test_check_reports_missing_live_file)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_check_reports_newline_difference_not_byte_identical (tests.test_render_config.RenderConfigTests.test_check_reports_newline_difference_not_byte_identical)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_claude_template_turns_off_claudeai_skill_sync_and_mcp_servers (tests.test_render_config.RenderConfigTests.test_claude_template_turns_off_claudeai_skill_sync_and_mcp_servers)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_codex_templates_bind_context_mode_per_session_and_run_headroom_offline (tests.test_render_config.RenderConfigTests.test_codex_templates_bind_context_mode_per_session_and_run_headroom_offline)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_codex_user_template_sets_the_verified_base_keys (tests.test_render_config.RenderConfigTests.test_codex_user_template_sets_the_verified_base_keys)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_default_project_live_path_honors_adoption_project_root_env (tests.test_render_config.RenderConfigTests.test_default_project_live_path_honors_adoption_project_root_env)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_default_project_live_path_never_hardcodes_catalog_checkout (tests.test_render_config.RenderConfigTests.test_default_project_live_path_never_hardcodes_catalog_checkout)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_default_render_has_no_assistant_capture (tests.test_render_config.RenderConfigTests.test_default_render_has_no_assistant_capture)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_hud_statusline_requires_an_installed_entry (tests.test_render_config.RenderConfigTests.test_hud_statusline_requires_an_installed_entry)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_missing_key_fails_with_nonzero_exit (tests.test_render_config.RenderConfigTests.test_missing_key_fails_with_nonzero_exit)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_recipe_jcodemunch_step_copies_only_the_server_tables (tests.test_render_config.RenderConfigTests.test_recipe_jcodemunch_step_copies_only_the_server_tables)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_recipe_project_form_mirrors_start_mjs_and_approves_tools (tests.test_render_config.RenderConfigTests.test_recipe_project_form_mirrors_start_mjs_and_approves_tools)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_render_out_writes_three_files (tests.test_render_config.RenderConfigTests.test_render_out_writes_three_files)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_set_overrides_and_supplements_host_values (tests.test_render_config.RenderConfigTests.test_set_overrides_and_supplements_host_values)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_templates_are_placeholders_only_no_literal_host_paths (tests.test_render_config.RenderConfigTests.test_templates_are_placeholders_only_no_literal_host_paths)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_templates_round_trip_with_string_template_substitute (tests.test_render_config.RenderConfigTests.test_templates_round_trip_with_string_template_substitute)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_versioned_tool_paths_follow_the_linux_pins (tests.test_render_config.RenderConfigTests.test_versioned_tool_paths_follow_the_linux_pins)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 59, in setUp\n self.fixture_host_path.write_text(json.dumps(FIXTURE_VALUES, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-host.json'\n\n======================================================================\nERROR: test_a_host_supplied_version_wins_over_the_pin (tests.test_render_config.SocratiCodeVersionTests.test_a_host_supplied_version_wins_over_the_pin)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 539, in setUp\n (self.hosts_dir / f\"{self.host}.json\").write_text(json.dumps(values, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-no-socraticode-version.json'\n\n======================================================================\nERROR: test_a_platform_without_a_pins_file_fails_closed_unless_the_version_is_given (tests.test_render_config.SocratiCodeVersionTests.test_a_platform_without_a_pins_file_fails_closed_unless_the_version_is_given)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 539, in setUp\n (self.hosts_dir / f\"{self.host}.json\").write_text(json.dumps(values, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-no-socraticode-version.json'\n\n======================================================================\nERROR: test_each_platform_renders_its_own_pinned_install (tests.test_render_config.SocratiCodeVersionTests.test_each_platform_renders_its_own_pinned_install)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 539, in setUp\n (self.hosts_dir / f\"{self.host}.json\").write_text(json.dumps(values, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-no-socraticode-version.json'\n\n======================================================================\nERROR: test_the_template_names_no_versioned_socraticode_install (tests.test_render_config.SocratiCodeVersionTests.test_the_template_names_no_versioned_socraticode_install)\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File \"/tests/test_render_config.py\", line 539, in setUp\n (self.hosts_dir / f\"{self.host}.json\").write_text(json.dumps(values, indent=2))\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 555, in write_text\n return PathBase.write_text(self, data, encoding, errors, newline)\n ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_abc.py\", line 651, in write_text\n with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:\n ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/cpython-3.13.15-linux-x86_64-gnu/lib/python3.13/pathlib/_local.py\", line 537, in open\n return io.open(self, mode, buffering, encoding, errors, newline)\n ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nOSError: [Errno 30] Read-only file system: '/adoption/hosts/test-fixture-no-socraticode-version.json'\n\n----------------------------------------------------------------------\nRan 325 tests in 132.538s\n\nFAILED (errors=35, skipped=3)\n", + "stdout_sha256_original": "eba0b619349c3c3ca47e5db79069f9ced44782a2df010fb5cd9ece3272d2e980", + "stderr_sha256_original": "c4f9e48599f6c1d131521153193fe2deabbcba9d8a4babfe1545783d564d07ce" + }, + { + "id": "unittest-final-isolated", + "command": "bwrap --ro-bind / / --bind --ro-bind /.git /.git --tmpfs /tmp --bind --proc /proc --dev-bind /dev /dev --die-with-parent --new-session -- env TMPDIR=/tmp UV_CACHE_DIR=/uv-cache UV_PYTHON_DOWNLOADS=never OTELCOL_TEST_BIN=/opentelemetry-collector-contrib/prefix/otelcol-contrib NPM_CONFIG_CACHE=/npm-cache NPM_CONFIG_USERCONFIG=/npm-user.ini NPM_CONFIG_GLOBALCONFIG=/npm-global.ini uv run --no-project --python 3.13 --with PyYAML==6.0.3 python3 -B -m unittest tests.test_stack_lifecycle tests.test_render_config tests.test_adoption_contract tests.test_grand_dashboard tests.test_landscape_sweep_harness tests.test_observability_tool_names tests.test_observability_run_correlation tests.test_sdk_usage_scope tests.test_blind_checkout", + "exit_code": 0, + "started_at_utc": "2026-10-03T08:14:21Z", + "ended_at_utc": "2026-10-03T08:16:32Z", + "returned_stdout": "Installed dashboard and two units; service activation remains explicit.\nstarted start-race\nnot started launch-refused: the job runner could not start\n{\"dashboard_result\": [], \"stage\": \"start_and_resume\"}\n{\"dashboard_result\": [], \"stage\": \"same_id_replay_and_new_id_republication\"}\n{\"dashboard_result\": [], \"stage\": \"unavailable_and_legacy_without_additive_baseline\"}\n", + "returned_stderr": ".........................................................................................................................................s.................................................................................................ss........................................................................................\n----------------------------------------------------------------------\nRan 325 tests in 131.237s\n\nOK (skipped=3)\n", + "stdout_sha256_original": "eba0b619349c3c3ca47e5db79069f9ced44782a2df010fb5cd9ece3272d2e980", + "stderr_sha256_original": "c47f3d0fb4d6f7606aae20bdf92447c6d437046e4d27d22edb724302fa204179" + }, + { + "id": "final-validate", + "command": "python3 scripts/validate.py", + "exit_code": 0, + "started_at_utc": "2026-10-03T08:20:31Z", + "ended_at_utc": "2026-10-03T08:20:52Z", + "returned_stdout": "{\"components\": 69, \"hashed_files\": 9423, \"profiles\": 4, \"receipts\": 196, \"status\": \"passed\"}\nIntegrity and scope checks only; no live provider or GPU execution.\n", + "returned_stderr": "", + "stdout_sha256_original": "864499f0cad48237fff7f8bb9f425522dd3f65c7a7a327378d8bd2344a11d3ff", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "final-validate-convergence", + "command": "python3 scripts/validate_convergence.py --all-recorded --root . --json", + "exit_code": 0, + "started_at_utc": "2026-10-03T08:20:31Z", + "ended_at_utc": "2026-10-03T08:20:33Z", + "returned_stdout": "{\"records\": [{\"errors\": [], \"observations\": 3, \"path\": \"blueprints/blind-catalog-convergence/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 3, \"path\": \"blueprints/blind-catalog-convergence/memory-experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 4, \"path\": \"blueprints/catalog-runtime-review/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 15, \"path\": \"blueprints/convergence-practice/application-delivery/experiment-macos-20260924.json\", \"valid\": true}, {\"errors\": [], \"observations\": 3, \"path\": \"blueprints/convergence-practice/application-delivery/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/ci-security/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/document-ingestion/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 0, \"path\": \"blueprints/convergence-practice/gpt6-family-tiering-20260926/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/gpu-inference/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 3, \"path\": \"blueprints/convergence-practice/job-recovery/experiment-macos.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/job-recovery/experiment-wsl.json\", \"valid\": true}, {\"errors\": [], \"observations\": 7, \"path\": \"blueprints/convergence-practice/local-inference-latest-20260926/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 2, \"path\": \"blueprints/convergence-practice/mac-memory-patch/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/native-recovery/claude/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/native-recovery/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 2, \"path\": \"blueprints/convergence-practice/native-worker/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 20, \"path\": \"blueprints/convergence-practice/omniroute-routing-20260928/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/wsl-memory-maintenance/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 2, \"path\": \"blueprints/convergence-practice/wsl-native-tools/experiment-wsl.json\", \"valid\": true}, {\"errors\": [], \"observations\": 0, \"path\": \"blueprints/convergence-practice/wsl-new-distro-image-20261001/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 1, \"path\": \"blueprints/convergence-practice/wsl-retrieval/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 3, \"path\": \"blueprints/convergence-practice/wsl-transport-recovery/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 8, \"path\": \"blueprints/us-equities/sim-capacity/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 6, \"path\": \"evidence/artifacts/local-model-workloads-20260924/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 24, \"path\": \"evidence/artifacts/memory-stack-20260925/experiment.json\", \"valid\": true}, {\"errors\": [], \"observations\": 3, \"path\": \"evidence/artifacts/native-workflow-writing-recovery-20260921/experiment.json\", \"valid\": true}], \"valid\": true}\n", + "returned_stderr": "", + "stdout_sha256_original": "672ad5b6c96651f6d613a584d812f00e78339b7db50fec643a27aaaf148c906c", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "final-landscape", + "command": "python3 scripts/landscape.py --root .", + "exit_code": 0, + "started_at_utc": "2026-10-03T08:20:31Z", + "ended_at_utc": "2026-10-03T08:20:32Z", + "returned_stdout": "{\"counts\": {\"applied_skills\": 3, \"comparison_candidates\": 365, \"comparison_repositories\": 161, \"current_public_stars\": 343, \"dispositions\": {\"conditional\": 164, \"measured_tradeoff\": 9, \"out_of_scope\": 9, \"overlap\": 14, \"selected\": 136, \"unqualified\": 33}, \"domain_layers\": 4, \"explained_components\": 69, \"foundation_decisions\": 54, \"foundation_layers\": 20, \"foundation_statuses\": {\"accepted_within_scope\": 44, \"partial_acceptance\": 2, \"source_review\": 8}, \"historical_candidate_cards\": 154, \"layers\": 32, \"quality_review_repositories\": 16, \"research_queue_layers\": 32, \"research_repositories\": 875, \"selected_components\": 69}, \"scope\": \"Coverage and reference integrity; no new runtime or ranking acceptance.\", \"status\": \"passed\"}\n", + "returned_stderr": "", + "stdout_sha256_original": "f2ffcf6bb1442024fdf17236278925740ad8416a239fe8aa8133c7b75cabeadb", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "final-validate-catalogs", + "command": "python3 scripts/validate_catalogs.py", + "exit_code": 0, + "started_at_utc": "2026-10-03T08:20:31Z", + "ended_at_utc": "2026-10-03T08:20:32Z", + "returned_stdout": "{\"beyond_star_catalog_repositories\": 102, \"models\": 20, \"public_stars\": 357, \"repository_entries\": 154, \"starred_catalog_repositories\": 46, \"unique_catalog_repositories\": 148}\nCatalog structure and evidence classes validated; source claims and native executions were not rerun.\n", + "returned_stderr": "", + "stdout_sha256_original": "8f241daedb4f7a5eaaff358e5653981120ee9436a8959c7b968eedb30dbe9a01", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "final-validate-foundation", + "command": "python3 scripts/validate_foundation.py --root . --json", + "exit_code": 0, + "started_at_utc": "2026-10-03T08:20:31Z", + "ended_at_utc": "2026-10-03T08:20:31Z", + "returned_stdout": "{\n \"ok\": true,\n \"counts\": {\n \"layers\": 20,\n \"decisions\": 54,\n \"foundation_components\": 61,\n \"domain_components\": 7,\n \"evidence_receipts\": 84,\n \"candidates\": 3\n },\n \"errors\": []\n}\n", + "returned_stderr": "", + "stdout_sha256_original": "b6535ffab61c1faafa85b93dbe965f253fa479ac0c58dfb6af61c0094a001d3f", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "final-component-matrix", + "command": "python3 scripts/component_matrix.py --check", + "exit_code": 0, + "started_at_utc": "2026-10-03T08:20:31Z", + "ended_at_utc": "2026-10-03T08:20:32Z", + "returned_stdout": "{\"rows\": 32, \"status\": \"checked\"}\n", + "returned_stderr": "", + "stdout_sha256_original": "08ce4f275c99b7f91a141cfca5b7384f060aacf620f23a324cde692d55e6ffcd", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "final-new-host-grand-list", + "command": "python3 scripts/new_host_grand_list.py --check", + "exit_code": 0, + "started_at_utc": "2026-10-03T08:20:31Z", + "ended_at_utc": "2026-10-03T08:20:31Z", + "returned_stdout": "{\"status\": \"passed\", \"layers\": 32, \"winners\": 66}\n", + "returned_stderr": "", + "stdout_sha256_original": "63d8d8221f6c7c051149b1405ef5de7623dbb2d37257fad49a8a774b02d49226", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "final-build-ecosystem", + "command": "python3 scripts/build_ecosystem.py --check", + "exit_code": 0, + "started_at_utc": "2026-10-03T08:20:31Z", + "ended_at_utc": "2026-10-03T08:20:37Z", + "returned_stdout": "{\"architecture_pin_drift\": [{\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"foundation/native-clients\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"worktrunk\", \"edition_pin\": \"0.79.0\", \"row\": \"foundation/workers\", \"stack_pin\": \"0.80.0\"}, {\"component_id\": \"worktrunk\", \"edition_pin\": \"0.79.0\", \"row\": \"foundation/isolation\", \"stack_pin\": \"0.80.0\"}, {\"component_id\": \"jcodemunch-mcp\", \"edition_pin\": \"1.108.319\", \"row\": \"foundation/code-navigation\", \"stack_pin\": \"1.108.327\"}, {\"component_id\": \"openresearch\", \"edition_pin\": \"0.2.7\", \"row\": \"foundation/web-research\", \"stack_pin\": \"0.2.15\"}, {\"component_id\": \"syft\", \"edition_pin\": \"1.52.0\", \"row\": \"foundation/ci-supply-chain\", \"stack_pin\": \"1.54.0\"}, {\"component_id\": \"nextjs\", \"edition_pin\": \"16.3.6\", \"row\": \"foundation/hosting-services\", \"stack_pin\": \"16.3.8\"}, {\"component_id\": \"opentelemetry-collector-contrib\", \"edition_pin\": \"0.161.0\", \"row\": \"foundation/observation-inference\", \"stack_pin\": \"0.162.0\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"foundation/agent-sdks\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"mcp-inspector\", \"edition_pin\": \"2.8.0\", \"row\": \"foundation/mcp-surfaces\", \"stack_pin\": \"2.9.0\"}, {\"component_id\": \"worktrunk\", \"edition_pin\": \"0.79.0\", \"row\": \"foundation/git-github-automation\", \"stack_pin\": \"0.80.0\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"us-equities/data-quality-orchestration\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"opentelemetry-collector-contrib\", \"edition_pin\": \"0.161.0\", \"row\": \"us-equities/data-quality-orchestration\", \"stack_pin\": \"0.162.0\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"us-equities/evaluation-experiments\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"opentelemetry-collector-contrib\", \"edition_pin\": \"0.161.0\", \"row\": \"us-equities/evaluation-experiments\", \"stack_pin\": \"0.162.0\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"us-equities/agents-models-workers\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"us-equities/observability-hosting\", \"stack_pin\": \"0.159.3\"}, {\"component_id\": \"opentelemetry-collector-contrib\", \"edition_pin\": \"0.161.0\", \"row\": \"us-equities/observability-hosting\", \"stack_pin\": \"0.162.0\"}, {\"component_id\": \"syft\", \"edition_pin\": \"1.52.0\", \"row\": \"us-equities/security-supply-chain\", \"stack_pin\": \"1.54.0\"}, {\"component_id\": \"codex\", \"edition_pin\": \"0.159.2\", \"row\": \"cross/cross:gpt6-harnesses\", \"stack_pin\": \"0.159.3\"}], \"bytes\": 15122881, \"input_sha256\": \"61091627e21f97499a83ed3267b818c07597d033be70dcd4a08ba1934355ed30\", \"output_sha256\": \"1b2e01c9fea3c7ed52d744f09848f3ad8761b74748b0fe6e087e4358ebd8199d\", \"status\": \"passed\"}\n", + "returned_stderr": "", + "stdout_sha256_original": "ccec1827a5e3ca5b5b35751297b885e98f26b9114d57d905b09d22412a3d479a", + "stderr_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "id": "final-pre-push-registry", + "command": "python3 -B -m unittest tests.test_osv_lockfile_coverage.LockfileInventoryTests.test_every_tracked_lockfile_and_manifest_is_listed tests.test_blind_checkout.RepositoryClassificationTests.test_every_blueprint_value_under_a_label_key_is_classified tests.test_workflow_security_coverage.NewWorkflowSecurityCoverageTests.test_all_published_workflows_are_listed_and_covered", + "exit_code": 0, + "started_at_utc": "2026-10-03T08:20:31Z", + "ended_at_utc": "2026-10-03T08:20:32Z", + "returned_stdout": "", + "returned_stderr": "...\n----------------------------------------------------------------------\nRan 3 tests in 0.206s\n\nOK\n", + "stdout_sha256_original": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "stderr_sha256_original": "109b2b2c0b0df77a30f3e9097dc79e93e5c97a83357180f36648fbdca112831b" + } + ], + "test_environment": { + "python": "3.13.15", + "dependency": "PyYAML==6.0.3, native uv run as in R642", + "OTELCOL_TEST_BIN": "/opentelemetry-collector-contrib/prefix/otelcol-contrib", + "UV_CACHE_DIR": "/uv-cache", + "UV_PYTHON_DOWNLOADS": "never", + "NPM_CONFIG_CACHE": "/npm-cache", + "NPM_CONFIG_USERCONFIG": "/npm-user.ini", + "NPM_CONFIG_GLOBALCONFIG": "/npm-global.ini", + "final_TMPDIR": "/tmp, private Bubblewrap tmpfs", + "ownership": "Host root read-only; owned worktree and task cache writable; worktree .git read-only. No other-worker Git markers were changed." + }, + "failed_conditions": [ + { + "id": "unittest", + "condition": "Default temporary root has an existing Git marker; 11 blind export errors, 17 skips." + }, + { + "id": "unittest-qualified", + "condition": "Alternate writable temporary root also has an existing Git marker; 11 blind export errors, 3 skips." + }, + { + "id": "unittest-isolated", + "condition": "Private tmpfs fixes the export boundary, but a read-only worktree refuses 35 render fixture writes; 3 skips." + } + ], + "astra_judgment": { + "trigger": "The first bounded Sol temporary-root repair failed on the same export boundary.", + "role": "One consequential judgment at max", + "accepted_boundary": "Supported Bubblewrap private tmpfs; existing successful-export and inside-repository-refusal tests both passed. Source/help/release verified by coordinator.", + "scope": "Boundary judgment, not full-suite acceptance; the final unchanged suite supplies its own returned result." + }, + "pr_metadata_observation": { + "pr": 642, + "url": "https://github.com/seathatflowsinourveins/native-agent-stack/pull/642", + "component_moves": 8, + "mcporter_move_row": false, + "mcporter_hold_present": true, + "code_publish_status": "R642b working-tree patch awaits coordinator commit/push" + }, + "limitations": [ + "Local repository/native fixture checks only; no live provider, GPU, broker, host plugin upgrade or Collector service switch.", + "Three optional suite skips remain: installed Context Mode security build selector, real Bash 3.2 and ShellCheck.", + "Earlier failed conditions and their returned outputs are retained; they are not accepted attempts.", + "Host paths in returned output are replaced by distinct role placeholders; hashes refer to original stdout/stderr before sanitization." + ], + "publication_check": { + "command": " protect --staged --redact", + "environment": { + "GIT_INDEX_FILE": "/scratch.index", + "GIT_OBJECT_DIRECTORY": "/git-objects", + "GIT_ALTERNATE_OBJECT_DIRECTORIES": "" + }, + "stage_commands": [ + "git read-tree HEAD", + "git add -A" + ], + "cleanup_command": "git reset -- . (temporary index only)", + "version": "8.30.1", + "exit_code": 0, + "started_at_utc": "2026-10-03T08:21:22Z", + "ended_at_utc": "2026-10-03T08:21:22Z", + "returned_stdout": "", + "returned_stderr": "\n \u25cb\n \u2502\u2572\n \u2502 \u25cb\n \u25cb \u2591\n \u2591 gitleaks\n\n4:21AM INF 0 commits scanned.\n4:21AM INF scanned ~171555 bytes (171.55 KB) in 198ms\n4:21AM INF no leaks found\n", + "scope": "Native staged scan of the prepared R642b changes; final bytes are re-scanned after recording and registration. This does not qualify host-local guarded job containment.", + "real_index_unchanged": true + } +} diff --git a/evidence/receipts/mcp-inspector-290-qualification-20261003.json b/evidence/receipts/mcp-inspector-290-qualification-20261003.json index b98f476b2..bd02bf597 100644 --- a/evidence/receipts/mcp-inspector-290-qualification-20261003.json +++ b/evidence/receipts/mcp-inspector-290-qualification-20261003.json @@ -119,6 +119,11 @@ "bytes": 1235523, "matches_recorded_sha256": true, "scope": "byte identity with the qualified W1 artifact; not signature or upstream test acceptance" - } + }, + "r642b_timed_command_refs": [ + "evidence/artifacts/currency-wave-w1-20261003/native-checks.json#/commands/inspector-tools-list-r642b-timed", + "evidence/artifacts/currency-wave-w1-20261003/native-checks.json#/commands/inspector-tools-call-r642b-timed", + "evidence/artifacts/currency-wave-w1-20261003/native-checks.json#/commands/inspector-negative-r642b-timed" + ] } } diff --git a/evidence/receipts/mcporter-0142-qualification-20261003.json b/evidence/receipts/mcporter-0142-qualification-20261003.json index ef3e19be8..df28409d4 100644 --- a/evidence/receipts/mcporter-0142-qualification-20261003.json +++ b/evidence/receipts/mcporter-0142-qualification-20261003.json @@ -1,14 +1,14 @@ { "schema_version": 1, "id": "mcporter-0142-qualification-20261003", - "kind": "native_cli_e2e", + "kind": "compatibility_attempt", "recorded_at_utc": "2026-10-03T05:55:06.824136+00:00", "component_ids": [ "mcporter" ], - "claim": "The recorded version command printed \"0.14.2\" (exit 0). The new ad-hoc stdio order/get_session_stats canary returned \"visible_tools\": 6, \"catalog_tools\": 94 and \"session_tokens_saved\": 0 (exit 0).", + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the accepted canary is a fresh ad-hoc stdio call, with no daemon.", + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", @@ -120,6 +120,33 @@ "matches_recorded_sha256": true, "scope": "byte identity with the qualified W1 artifact; not signature or upstream test acceptance" }, - "command_sanitization": "Restored from the hashed W1-moves.json packet. Qualification and host prefixes remain distinct; scratch HOME path segments use , retaining all child paths including separate npm user/global config files and XDG directories." + "command_sanitization": "Restored from the hashed W1-moves.json packet. Qualification and host prefixes remain distinct; scratch HOME path segments use , retaining all child paths including separate npm user/global config files and XDG directories.", + "adoption_status": "held_not_selected", + "overturn_condition": "A consistent resolved dependency tree (npm ls --all succeeds) and qualified persistent daemon/serve role, including use, restart and recovery, in an isolated prefix.", + "r642b_timed_command_refs": [ + "evidence/artifacts/currency-wave-w1-20261003/native-checks.json#/commands/mcporter-call-r642b-timed" + ], + "r642b_dependency_tree_check": { + "command": "npm ls --global --prefix /mcporter/prefix --all --json", + "environment": { + "HOME": "/home", + "NPM_CONFIG_CACHE": "/npm-cache", + "NPM_CONFIG_USERCONFIG": "/npm-user.ini", + "NPM_CONFIG_GLOBALCONFIG": "/npm-global.ini", + "NPM_CONFIG_OFFLINE": "true" + }, + "exit_code": 1, + "started_at_utc": "2026-10-03T08:16:49Z", + "ended_at_utc": "2026-10-03T08:16:50Z", + "returned_json_problems": [ + "invalid: @modelcontextprotocol/core@2.2.0 /mcporter/prefix/lib/node_modules/mcporter/node_modules/@modelcontextprotocol/core" + ], + "returned_stderr": "npm error code ELSPROBLEMS\nnpm error invalid: @modelcontextprotocol/core@2.2.0 /mcporter/prefix/lib/node_modules/mcporter/node_modules/@modelcontextprotocol/core\nnpm error A complete log of this run can be found in: /npm-cache/_logs/2026-10-03T08_16_49_590Z-debug-0.log\n", + "stdout_sha256_original": "f1d26e61afa60d2757ae7a42f2df0f699df87a0b7e1ff0b7c0d2d861ed12a2ee", + "retained_stdout_fields": [ + "problems" + ], + "scope": "Read-only native inspection of the W1 scratch install. This fresh ELSPROBLEMS output corroborates the hold; no dependency resolution or host installation was changed." + } } } diff --git a/manifests/stack.json b/manifests/stack.json index 416bae218..02cba4470 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -627,8 +627,8 @@ }, { "id": "mcporter", - "repository": "https://github.com/openclaw/mcporter/tree/v0.14.2", - "version": "0.14.2", + "repository": "https://github.com/openclaw/mcporter/tree/v0.14.1", + "version": "0.14.1", "license": "MIT", "profile": "core", "role": "Native CLI bridge with persistent MCP daemon connection", @@ -642,15 +642,13 @@ "current-session-observation-20260920", "claude-upstream-checks-20260921", "claude-repository-evidence-20260921", - "mcporter-0141-qualification-20260925", - "mcporter-0142-qualification-20261003" + "mcporter-0141-qualification-20260925" ], "upstream_sources": [ - "https://github.com/openclaw/mcporter/tree/v0.14.2", - "https://github.com/openclaw/mcporter/releases/tag/v0.14.2" + "https://github.com/openclaw/mcporter/tree/v0.14.1" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.14.2\" (exit 0). The new ad-hoc stdio order/get_session_stats canary returned \"visible_tools\": 6, \"catalog_tools\": 94 and \"session_tokens_saved\": 0 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.14.1 receipts retain their original scope." + "freshness": "0.14.1 serves bin/mcporter on the NativeStack WSL2 host since 2026-09-25 after a matched 37-step comparison against 0.13.13 (independent review). 0.14.x runs ps from PATH, so whatever launches the daemon needs ps on its PATH. 0.13.13 is kept for rollback. The Mac pin stays 0.13.13, and the landscape winner pin stays 0.13.13 until a new verdict wave." }, { "id": "openresearch", diff --git a/observability/README.md b/observability/README.md index 7c607ad2e..419ed1a8b 100644 --- a/observability/README.md +++ b/observability/README.md @@ -27,7 +27,8 @@ notifications. [Machine-readable evidence](receipt.json) records the exact scope | Native execution | openai/codex; anthropics/claude-code; official Codex SDK | Existing native subscriptions and model choices; no API-account migration | | Context and accounting | mksglu/context-mode; rtk-ai/rtk; ccusage/ccusage | Context/output estimates separate from native usage; scoped retrieval rather than full-log ingestion | | Memory and retrieval | akitaonrails/ai-memory; SocratiCode; qdrant/qdrant; vllm-project/vllm; QMD | Prior memory/RAG acceptance plus current service metrics; no new universal memory index | -| Collection | open-telemetry/opentelemetry-collector-contrib 0.162.0 | One Collector process using core/contrib components; selected private correlation IDs retained | +| Collection (deployed) | open-telemetry/opentelemetry-collector-contrib 0.161.0 | The live traffic, restart and retained-storage receipts above belong to this deployed version; one Collector process uses core/contrib components and retains selected private correlation IDs | +| Collection (selected) | open-telemetry/opentelemetry-collector-contrib 0.162.0 | [W1 scratch qualification](../evidence/receipts/otelcol-contrib-0162-qualification-20261003.json) covers version and configuration validation; no host service was switched, and runtime acceptance remains pending | | Storage and viewing | prometheus/prometheus 3.14.0; grafana/loki 3.7.8; grafana/grafana 13.2.2 | Native queries, dashboard, bounded retention and restart acceptance | | Alert delivery | prometheus/alertmanager 0.34.1; binwiederhier/ntfy 2.28.0 | Native webhook and bundled ntfy template; local inbox only | | Workflow/research | Dagu; DeerFlow; native Astra SDK; LEAN | Existing execution receipts plus local service observation; no connected broker | diff --git a/recipes/README.md b/recipes/README.md index 702439160..f6a07a4e4 100644 --- a/recipes/README.md +++ b/recipes/README.md @@ -97,7 +97,7 @@ Commands assume the selected upstream executable is on the current shell's PATH. | `huggingface-hub-native` · `1.32.0` | `uv tool install huggingface-hub==1.32.0` | `hf --version`; [revision-pinned model download](#local-semantic-code-search). Authentication, if needed, uses native `hf auth login`; never publish credentials. | | `markitdown` · `0.1.8` | `uv tool install markitdown==0.1.8` | `markitdown fixtures/greeting.html -o "$STACK_HOME/output/greeting.md"`; inspect the greeting in the result. This uses the base HTML converter; PDF/Office extras are separate decisions. 0.1.8 replaced 0.1.7 on the NativeStack WSL2 host on 2026-09-25 after a discriminating comparison (`evidence/receipts/markitdown-018-qualification-20260925.json`): fixture, 8-K and committed-HTML outputs are byte-identical, while `` now stays inline HTML and ``, `%2F` paths and `data-src` images convert differently. The converter follows the file extension: HTML saved as `.txt` exits 0 with its markup passed through unchanged ([E1 receipt](../evidence/artifacts/token-e2e-ultracode-20260925/README.md#retained-failures-and-gaps)). Give the type with `-x html` or `-m text/html` ([`__main__.py`](https://github.com/microsoft/markitdown/blob/v0.1.8/packages/markitdown/src/markitdown/__main__.py#L65-L75)), then check that the output has no raw tags and holds the required facts. Install and qualify only the extras a workload needs ([optional dependencies](https://github.com/microsoft/markitdown/blob/v0.1.8/README.md#optional-dependencies)); one HTML success says nothing about other formats. The host runs the qualification prefix, and the bootstrap's `install_pin` form, which omits `--exclude-newer`, has no fresh-host equivalence check yet (receipt limitations). | | `mcp-inspector` · `2.9.0` | `npm install --global --prefix "$STACK_HOME/tools/mcp-inspector-2.9.0" @modelcontextprotocol/inspector@2.9.0` | `mcp-inspector --cli --config "$PROJECT_ROOT/.mcp.json" --server socraticode --method tools/list --format json --stored-auth-only --cwd "$PROJECT_ROOT"`. Handshake/schema discovery only; follow with a selected tool call for functionality. Read the installed version with `npm ls --global --prefix "$STACK_HOME/tools/mcp-inspector-2.9.0" --depth=0`: the launcher has no version flag and forwards unknown arguments to the default web mode, so `mcp-inspector --version` starts the web UI with `--version` as a stdio server command (observed 2026-09-25 on 2.7.0; the 2.8.0 launcher file was byte-identical; the 2.9.0 help still exposes only mode/help flags). Unless `MCP_AUTO_OPEN_ENABLED=false`, that web mode also opens a browser tab (on WSL, the Windows browser), which then shows `spawn --version ENOENT`; both client templates set it to `false` for agent commands (`resolveAutoOpen` in the 2.7.0 and 2.8.0 web builds). 2.8.0's web server turns its API token gate off only for `DANGEROUSLY_OMIT_AUTH` set to `true` or `1`; 2.7.0 turned it off for any non-empty value, including `false` and `0` ([PR #2390](https://github.com/modelcontextprotocol/inspector/pull/2390), measured in the receipt below). npm 11 reports the package's `postinstall` as not allowed; that script exits at once for a package installed under `node_modules`, so nothing is missing. 2.9.0's package license is `SEE LICENSE IN LICENSE`, which describes an MIT-to-Apache-2.0 relicensing transition. 2.8.0 replaced 2.7.0 on the NativeStack WSL2 host on 2026-09-26 after a matched comparison (`evidence/receipts/mcp-inspector-280-qualification-20260926.json`). The [2.9.0 scratch qualification](../evidence/receipts/mcp-inspector-290-qualification-20261003.json) passed stdio tools/list, tools/call and an unknown-tool control with a temporary config and `--stored-auth-only`; the installed host prefix was not switched. OAuth storage migration and multi-profile behavior remain outside that qualification. | -| `mcporter` · `0.14.2` | `npm install --global --prefix "$STACK_HOME/tools/mcporter-0.14.2" mcporter@0.14.2` | `mcporter --config "$MCPORTER_CONFIG" list socraticode --brief --no-oauth`, then [local semantic search](#local-semantic-code-search) or [Context Mode](#retained-context-mode). Node >=24 is required, and so is `ps` on the PATH of whatever launches the daemon: 0.14.x finds `ps` through PATH, and without it the daemon cannot connect keep-alive servers and `mcporter daemon stop` refuses. Before switching versions, stop a running daemon once `mcporter daemon status --json` shows `activeCalls` 0 on every server; both versions speak daemon protocol 3, so an old daemon keeps serving new clients. 0.14.1 replaced 0.13.13 on the NativeStack WSL2 host on 2026-09-25 after a matched 37-step comparison (`evidence/receipts/mcporter-0141-qualification-20260925.json`). With `--stdio`, `--name` only names the ad-hoc server ([`ephemeral-flags.ts` L97-105](https://github.com/openclaw/mcporter/blob/v0.14.1/src/cli/ephemeral-flags.ts#L97-L105)); without `--server` or a `server.tool` selector, 0.14.1 takes the first positional token, such as `content=@file`, as the server ([`call-arguments.ts` L164-192](https://github.com/openclaw/mcporter/blob/v0.14.1/src/cli/call-arguments.ts#L164-L192)), so the argument never reaches the tool. Pass `--server NAME --tool TOOL` with `--name NAME`. A successful call is transport acceptance, not a token saving. The [0.14.2 scratch canary](../evidence/receipts/mcporter-0142-qualification-20261003.json) returned get_session_stats over ad-hoc stdio with no daemon; the host remains at its prior installed version. Keep-alive/daemon, OAuth and `serve` remain unqualified at 0.14.2. | +| `mcporter` · `0.14.1` | `npm install --global --prefix "$STACK_HOME/tools/mcporter-0.14.1" mcporter@0.14.1` | `mcporter --config "$MCPORTER_CONFIG" list socraticode --brief --no-oauth`, then [local semantic search](#local-semantic-code-search) or [Context Mode](#retained-context-mode). Node >=24 is required, and so is `ps` on the PATH of whatever launches the daemon: 0.14.x finds `ps` through PATH, and without it the daemon cannot connect keep-alive servers and `mcporter daemon stop` refuses. Before switching versions, stop a running daemon once `mcporter daemon status --json` shows `activeCalls` 0 on every server; both versions speak daemon protocol 3, so an old daemon keeps serving new clients. 0.14.1 replaced 0.13.13 on the NativeStack WSL2 host on 2026-09-25 after a matched 37-step comparison (`evidence/receipts/mcporter-0141-qualification-20260925.json`). With `--stdio`, `--name` only names the ad-hoc server ([`ephemeral-flags.ts` L97-105](https://github.com/openclaw/mcporter/blob/v0.14.1/src/cli/ephemeral-flags.ts#L97-L105)); without `--server` or a `server.tool` selector, 0.14.1 takes the first positional token, such as `content=@file`, as the server ([`call-arguments.ts` L164-192](https://github.com/openclaw/mcporter/blob/v0.14.1/src/cli/call-arguments.ts#L164-L192)), so the argument never reaches the tool. Pass `--server NAME --tool TOOL` with `--name NAME`. A successful call is transport acceptance, not a token saving. | | `openresearch` · `0.2.15` | Official [alphaXiv/OpenResearch v0.2.15](https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15), asset `openresearch-cli-x86_64-unknown-linux-musl.tar.xz`; [qualified archive and rollback](native-upgrades-20260921.md) | `orx --no-telemetry discover keyword 'agent memory' --published-after 2026-06-21 --published-before 2026-09-19 --limit 3`; retrieve only a selected result with `orx --no-telemetry paper "$PAPER_ID" --full`. Public literature access, not a model-quality ranking. The [0.2.15 qualification](../evidence/receipts/openresearch-0215-qualification-20261003.json) covers archive integrity and isolated version output; discover/paper did not run. Retain 0.2.7 as the rollback source. | | `playwright-cli` · `0.1.22` | `npm install --global --prefix "$STACK_HOME/tools/playwright-cli-0.1.22" @playwright/cli@0.1.22`; bundled Playwright `1.64.0-alpha-1790635538000` | Optional alternative to agent-browser. `playwright-cli --help` checks installation only; consult its native skill for the chosen browser workflow. Historical installation evidence is Windows-scoped, not a claimed Linux browser E2E. The [0.1.22 qualification](../evidence/receipts/playwright-cli-0122-qualification-20261003.json) covers version/help only; the existing-Chrome fixture was not repeated. Its help/version invocations may perform the upstream anonymous update check and cache write. | | `promptfoo` · `0.123.1` | `npm install --global --prefix "$STACK_HOME/tools/promptfoo-0.123.1" promptfoo@0.123.1` | `PROMPTFOO_DISABLE_TELEMETRY=1 promptfoo eval --config "$EVAL_CONFIG" --no-cache --no-table --no-progress-bar --no-share --no-write --output "$EVAL_RESULT"`. The retained native fixture used a local echo provider and passed two exact assertions with zero model tokens. Select the intended provider/data explicitly; no paid default is supplied. | @@ -110,10 +110,40 @@ Commands assume the selected upstream executable is on the current shell's PATH. | `shanraisshan/claude-code-best-practice` · `15969ed2471a177d938c889255d2f23f07e4742a` | `git clone https://github.com/shanraisshan/claude-code-best-practice.git "$STACK_HOME/tools/claude-code-best-practice"`, then `git -C "$STACK_HOME/tools/claude-code-best-practice" checkout --detach 15969ed2471a177d938c889255d2f23f07e4742a` | Optional reference: read selected README guidance; verify advice against current native docs. No runtime or bulk plugin installation. | | `shellcheck` · `0.11.0` | Official [koalaman/shellcheck v0.11.0](https://github.com/koalaman/shellcheck/releases/tag/v0.11.0), asset `shellcheck-v0.11.0.linux.x86_64.tar.xz`; archive procedure | `shellcheck --norc --format=json1 fixtures/example.sh`; inspect all diagnostics. Static shell analysis is not a product test suite. | | `socraticode` · `1.15.0` | `npm install --global --prefix "$STACK_HOME/tools/socraticode-1.15.0" --ignore-scripts --before=2026-09-24T12:00:00Z socraticode@1.15.0` | [Local semantic code search](#local-semantic-code-search). Source `f6191f076a42405f0d5508139f3a8b505cfef93a`; AGPL-3.0-only with upstream commercial alternative. This profile uses external local services, not Docker or a cloud key. `--before` reproduces the qualified dependency tree; the package ships no shrinkwrap. The macOS pin stays 1.14.0 until a Mac qualifies 1.15.0. | +| `syft` · `1.54.0` | Official [anchore/syft v1.54.0](https://github.com/anchore/syft/releases/tag/v1.54.0); [verified Linux archive and rollback](#syft-1540-linux-archive-and-rollback) | `syft version -o json`; the [W1 receipt](../evidence/receipts/syft-1540-qualification-20261003.json) retains the SDK inventory command and output. Preserve 1.52.0 for rollback; hosted SBOM and signature acceptance remain pending. | | `toon` · `4.1.1` | `npm install --global --prefix "$STACK_HOME/tools/toon-4.1.1" @toon-format/cli@4.1.1` | `toon fixtures/records.json --stats -o "$STACK_HOME/output/records.toon"`; `toon "$STACK_HOME/output/records.toon" --decode --strict -o "$STACK_HOME/output/records.recovered.json"`. Compare decoded JSON values to the original, including numeric precision. Token estimates are not provider billing. Keep the original JSON unless the strict decode is value-equal: 4.1.1 emits a root string that starts with U+FEFF unquoted, and decoding strips it, which can change the value or its type (open [#339](https://github.com/toon-format/toon/issues/339)). Choose TOON by the exact encoded size and that equality. No record count is an upstream threshold: the tabular encoder takes any number of non-empty objects that share one key set, with columns of primitives or, recursively, of non-empty objects that share one key set; an empty object or an array-valued column falls back to list form ([`tabular.ts` L6-78](https://github.com/toon-format/toon/blob/v4.1.1/packages/toon/src/encode/tabular.ts#L6-L78)). | | `vllm` · `0.30.0` | `uv venv --python 3.13 "$STACK_HOME/tools/vllm-0.30.0"`; `uv pip install --python "$STACK_HOME/tools/vllm-0.30.0/bin/python" vllm==0.30.0` | [Pinned local GPU embedding service](#local-semantic-code-search). 0.30.0 carries the WSL pinned-memory fallback and serves the production embeddings on the NativeStack WSL2 host since 2026-09-25, qualified against 0.25.0 first (identical embeddings and code-index results; `evidence/receipts/vllm-030-switch-20260925.json`). 0.29.0 failed GPU startup under WSL with unavailable UVA; keep 0.25.0 installed for rollback until the new pin has run a while. | | `worktrunk` · `0.80.0` | Official [max-sixty/worktrunk v0.80.0](https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0); [qualified archive and rollback](native-upgrades-20260921.md) | `wt list --format json`; for an actual owned writing task, `wt switch --create "$BRANCH" --base "$BASE_REF" --no-cd --no-hooks --format json`. The retained 0.79.0 disposable lifecycle verified selection and `wt remove "$BRANCH" --foreground --no-hooks --format json`, leaving only the original worktree. The [0.80.0 scratch qualification](../evidence/receipts/worktrunk-0800-qualification-20261003.json) ran `wt list` in a synthetic repository only; retain 0.79.0 for rollback. | +## Syft 1.54.0 Linux archive and rollback + +The current Syft recipe uses [anchore/syft v1.54.0](https://github.com/anchore/syft/releases/tag/v1.54.0), +source commit `cc326e45a6213360266dda4b30cc68095946d676`. +Download the Linux amd64 archive and its publisher checksums into an explicit +scratch directory, check the archive before extracting into a versioned prefix, +and invoke that executable directly. These are the native archive and validation +commands retained in the [W1 receipt](../evidence/receipts/syft-1540-qualification-20261003.json): + +```sh +SYFT_W1_DOWNLOAD="$STACK_HOME/downloads/syft-1.54.0" +SYFT_W1_PREFIX="$STACK_HOME/tools/syft-1.54.0" +mkdir -p "$SYFT_W1_DOWNLOAD" "$SYFT_W1_PREFIX" +gh release download v1.54.0 --repo anchore/syft --dir "$SYFT_W1_DOWNLOAD" --pattern syft_1.54.0_linux_amd64.tar.gz --pattern syft_1.54.0_checksums.txt +(cd "$SYFT_W1_DOWNLOAD" && sha256sum --check --ignore-missing syft_1.54.0_checksums.txt) +tar --no-same-owner -xzf "$SYFT_W1_DOWNLOAD/syft_1.54.0_linux_amd64.tar.gz" -C "$SYFT_W1_PREFIX" +"$SYFT_W1_PREFIX/syft" version -o json +``` + +The [publisher checksum file](https://github.com/anchore/syft/releases/download/v1.54.0/syft_1.54.0_checksums.txt) +and the receipt carry the accepted archive digest. The receipt's native SDK +inventory remains its bounded functional evidence; it did not verify the new +Sigstore bundle format, and the first hosted `sbom-vuln` and `publish-catalog` +installation paths remain pending. Preserve the previous 1.52.0 prefix for +rollback, with [its official release](https://github.com/anchore/syft/releases/tag/v1.52.0) +and publisher checksums. The dated trading recipe remains historical 1.52.0 +evidence until its owner updates it; `adoption/manifest.json#/recipe_map/syft` +now selects this current foundation recipe. + ## Context Hub opt-out For `@aisuite/chub@0.1.4`, set `telemetry: false` and `feedback: false` in `~/.chub/config.yaml`. These are upstream settings: [`docs/cli-reference.md:215–229`](https://github.com/andrewyng/context-hub/blob/v0.1.4/docs/cli-reference.md#L215-L229) documents both switches and their environment equivalents; [`SECURITY.md:28`](https://github.com/andrewyng/context-hub/blob/v0.1.4/SECURITY.md#L28) confirms the telemetry config location. Use `CHUB_TELEMETRY=0 CHUB_FEEDBACK=0` only for invocations where `HOME` or `CHUB_DIR` is overridden, such as a worker using another home: [`cli/src/lib/config.js:23–40`](https://github.com/andrewyng/context-hub/blob/v0.1.4/cli/src/lib/config.js#L23-L40) resolves the config from that location. No wrapper script is needed. The verified npm tarball digest is recorded in both [Linux](../adoption/pins-linux-x86_64.json) and [macOS](../adoption/pins-macos-arm64.json) pins; it is artifact identity, not native acceptance. diff --git a/scripts/native_token_ci.py b/scripts/native_token_ci.py index 5e29b6683..f7bb85c8e 100644 --- a/scripts/native_token_ci.py +++ b/scripts/native_token_ci.py @@ -57,7 +57,7 @@ # and the commit is its identity (adoption/pins-linux-x86_64.json, kind uv-tool-from-git). SERENA_COMMIT = "c6fbd1c5932df2494ffa0020af5a9fbe80b82143" PINS = {"rtk": "0.50.0", "qmd": "2.8.3", "repomix": "1.18.1", "toon": "4.1.1", - "mcporter": "0.14.2", "markitdown": "0.1.8", "ast-grep": "0.45.3", + "mcporter": "0.14.1", "markitdown": "0.1.8", "ast-grep": "0.45.3", "ccusage": "20.0.26", "codebase-memory-mcp": "0.11.0", "headroom": "0.37.0", "jcodemunch-mcp": "1.108.327", "context-mode": "1.0.169", "serena": f"2.0.0.dev0 @ {SERENA_COMMIT}", "ai-memory": "2.4.1", "context-hub": "0.1.4", diff --git a/tests/test_adoption_bootstrap_macos.py b/tests/test_adoption_bootstrap_macos.py index 8033270ad..cc3973b30 100644 --- a/tests/test_adoption_bootstrap_macos.py +++ b/tests/test_adoption_bootstrap_macos.py @@ -258,7 +258,7 @@ def test_urls_are_https_and_name_a_darwin_arm64_or_npm_asset(self): # exactly, so a move on either side fails here until this table is reviewed again. MAC_PIN_LAGS_LINUX = { "ai-memory": ("2.3.2", "2.4.1", "evidence/receipts/ai-memory-241-qualification-20260925.json"), - "mcporter": ("0.13.13", "0.14.2", "evidence/receipts/mcporter-0142-qualification-20261003.json"), + "mcporter": ("0.13.13", "0.14.1", "evidence/receipts/mcporter-0141-qualification-20260925.json"), # Linux moved to 0.159.3 on 2026-10-01; the Mac keeps 0.155.1 until its own # qualification (the receipts' limitations). "codex": ("0.155.1", "0.159.3", "evidence/receipts/codex-01593-native-queue-20261001.json"), diff --git a/tools/token-report/README.md b/tools/token-report/README.md index 7a9c515b7..cad73a96a 100644 --- a/tools/token-report/README.md +++ b/tools/token-report/README.md @@ -31,8 +31,8 @@ gh release download v0.50.0 --repo rtk-ai/rtk \ uv venv "$REPORT_TOOLS/headroom-0.37.0" uv pip install --python "$REPORT_TOOLS/headroom-0.37.0/bin/python" headroom-ai==0.37.0 uv tool install jcodemunch-mcp==1.108.327 -npm install --prefix "$REPORT_TOOLS/mcporter-0.14.2" mcporter@0.14.2 -export PATH="$REPORT_TOOLS/rtk-0.50.0:$REPORT_TOOLS/headroom-0.37.0/bin:$REPORT_TOOLS/mcporter-0.14.2/node_modules/.bin:$HOME/.local/bin:$PATH" +npm install --prefix "$REPORT_TOOLS/mcporter-0.14.1" mcporter@0.14.1 +export PATH="$REPORT_TOOLS/rtk-0.50.0:$REPORT_TOOLS/headroom-0.37.0/bin:$REPORT_TOOLS/mcporter-0.14.1/node_modules/.bin:$HOME/.local/bin:$PATH" ``` The checksum command must report the selected archive as `OK`. Other operating From 1b9d09273be764d1cb26993ed9b5138b16bd7ce6 Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 04:34:17 -0400 Subject: [PATCH 06/50] Re-register the W1 bot-review round files (hot-file protocol, last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 79 ++++++++++++++++++++++------------------- 1 file changed, 42 insertions(+), 37 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index e76e97b89..683720be1 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4018,13 +4018,13 @@ }, { "id": "mcporter-0142-qualification-20261003", - "kind": "native_cli_e2e", + "kind": "compatibility_attempt", "component_ids": [ "mcporter" ], - "claim": "The recorded version command printed \"0.14.2\" (exit 0). The new ad-hoc stdio order/get_session_stats canary returned \"visible_tools\": 6, \"catalog_tools\": 94 and \"session_tokens_saved\": 0 (exit 0).", + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the accepted canary is a fresh ad-hoc stdio call, with no daemon.", + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", @@ -4329,8 +4329,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "1718c5b0acd021df75308ca42aa35cea8039702d2f638842a47cf62c87938f68", - "bytes": 63692 + "sha256": "932806ffa1d2b9b1b6053068a907c1574cc8701365201f055438272261d49486", + "bytes": 65378 }, { "path": "adoption/credential-inventory.json", @@ -4429,8 +4429,8 @@ }, { "path": "adoption/manifest.json", - "sha256": "7bb179e8440be17b75484c21495e66385ea8eb959a491d43d2488056ddede09a", - "bytes": 20102 + "sha256": "4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714", + "bytes": 20038 }, { "path": "adoption/new-wsl-profile.json", @@ -4474,12 +4474,12 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "5afb235eaafc76c1348809329800a6414cff1bc797e119e5ff5e0297ce04c402", - "bytes": 32270 + "sha256": "f39042b4c9999ae2f1fe7a32b85dc5f555bc845a91d96209925daafe1a2a8eda", + "bytes": 31575 }, { "path": "adoption/pins-macos-arm64.json", - "sha256": "58cce2b4581117c729fa60126b1cef24d2c8cf2fa19950bbef669b8881f2311c", + "sha256": "1d693b66002e8931af2370fc9da919f667bfbf3a1a22ddd54bdd2c1d81cf19e4", "bytes": 43700 }, { @@ -4489,8 +4489,8 @@ }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "f3298bc8b8a105a0179be003fd916282e2db2009cee22a9536ed097e706023db", - "bytes": 26276 + "sha256": "15c8fe95c8484d85fd369f10d7d8723b467f8ed33200576abdc45d4715715889", + "bytes": 26335 }, { "path": "adoption/platforms/macos-arm64.md", @@ -9865,8 +9865,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "57d619d6904e3f80148e81245cf7b4180c581c4680acc26e4f970be6c9f94e95", - "bytes": 491131 + "sha256": "7c4937a35a7ee54d2a4f5b74cbb3ba69b1379e48a1fad4a32084200571365986", + "bytes": 490254 }, { "path": "blueprints/trials-20260926/README.md", @@ -15205,8 +15205,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "883e38a6e70bd5ac44f327bc7ac8beb56c2bb252c41ebd361de85031a93c63ab", - "bytes": 287705 + "sha256": "2d939cb03f303a0ccf87356a72df9ffe18c8e9649fc8c3bec01100db6c4408be", + "bytes": 287577 }, { "path": "catalogs/landscape/research-state.json", @@ -15215,8 +15215,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "58fce711495355032ff360a018099a5bcc9f4fac5d89ae0a90e17f07c2e16370", - "bytes": 286129 + "sha256": "26c021f065f577637368db1b42c7f34cd9ec30ae89ae4179f18337677004b85e", + "bytes": 290085 }, { "path": "catalogs/landscape/us-equities.json", @@ -15955,8 +15955,8 @@ }, { "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "8478ca3a2b6db1471a91ddaf1225e30c80bff433b0295b84a9b83ac95e14cc93", - "bytes": 20359 + "sha256": "45a4cc616e230dbcc65e0b308922f22a61179139845049d6fa73376618076913", + "bytes": 28687 }, { "path": "docs/direct-results.md", @@ -16210,7 +16210,7 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "48ced30b2922fe638af083fd873724c39f062b2903f79aaf1cdc8f51acfd759e", + "sha256": "02c9ae5e193d3b759d4036b3b10a77019ee6a0d14bcddd28b23c750825fab68f", "bytes": 18484 }, { @@ -16320,7 +16320,7 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "d27e356ba812e5983a83021f833a9f60c3fe860e307871b0a571054243c1a420", + "sha256": "ee51bbd55ab98e55b72fa91647a6adcee036a8ea6da695144f0a896b32e82736", "bytes": 587562 }, { @@ -17935,8 +17935,13 @@ }, { "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", - "sha256": "6cadeabcb90fa7440a72538f216cbf031106a57cb9b6d7c1155674ec3e3fc963", - "bytes": 25075 + "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", + "bytes": 74214 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", + "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", + "bytes": 121015 }, { "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", @@ -48200,8 +48205,8 @@ }, { "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", - "sha256": "c7ace6e12522585e47cfea8a31d702e5656446e7574507218b605235d82aa5b5", - "bytes": 9779 + "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", + "bytes": 10165 }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", @@ -48210,8 +48215,8 @@ }, { "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", - "sha256": "1a2f88df967ffc3b460bad86c0026f433aee7ddaf333a7e5da5520b1cd2cb37a", - "bytes": 8409 + "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", + "bytes": 10463 }, { "path": "evidence/receipts/memory-landscape-20260921.json", @@ -49015,13 +49020,13 @@ }, { "path": "manifests/stack.json", - "sha256": "824878f6c49975e564590ef3a0d760b4ec14ea43708cec6947b745ab64f914c6", - "bytes": 103602 + "sha256": "51c40b98bd8502bcf664585a271246126d9f750ef369aa57f1b9fc73ddc5a0c1", + "bytes": 103387 }, { "path": "observability/README.md", - "sha256": "0c9395106ed32420ea5b26cbd2d7c2f30218c6850c7290680643dedb9292d288", - "bytes": 15457 + "sha256": "721b99df7babd5288f62a260910e0d7d704e103e2fa57a7d8797426971b2a508", + "bytes": 15861 }, { "path": "observability/backends/README.md", @@ -49300,8 +49305,8 @@ }, { "path": "recipes/README.md", - "sha256": "9b2da5a65fd73850c4774a3f075f00070885351edd38b44779ae3e9bdc0a7eda", - "bytes": 126428 + "sha256": "816386cde96d3ee55c62942822fab79c3bd0d23e4eaa8fd9bb6989d311b95d1e", + "bytes": 128375 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -49420,7 +49425,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "11277c5a212ceaabfffc811fda1f6d41ab781949585ab4b0da7168bd9778d44c", + "sha256": "03307274bb4891465267cc617aa81e0863ed7fb7ba0c5632c7bbcb3d0513bf44", "bytes": 114715 }, { @@ -49750,7 +49755,7 @@ }, { "path": "tests/test_adoption_bootstrap_macos.py", - "sha256": "5fe82766d90ffeab29262eb776ed7b43f599b59a88d755e630cb91c116a77a8a", + "sha256": "8dd9d881d0ae3472eddf91c9be6da13a5ee891983fe70367dce22d798ae3cfb7", "bytes": 228097 }, { @@ -51140,7 +51145,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "c389f35a9dde4b18f6e52a6505b527546cdf97d40ab022d2294848a7531f9d1a", + "sha256": "56ffe669a67dae185d7de23e270e53c420f9b346198913e1073fa9341e43a8be", "bytes": 25833 }, { From e7513144cd50ed56d60f3ffc5351f95e505a16e6 Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 08:43:58 -0400 Subject: [PATCH 07/50] W1 judgment custody: complete reviewer outputs, sanitized only of host paths Retains under evidence/artifacts/currency-wave-w1-20261003/judgments/ the nine Opus move judges of W1-moves.json with its seven holds_not_in_scope strings (move-hold-judges.json), the Opus and Sol #642 reviewer start events and results (review-round-findings.json) and the R642 and R642b repair replies (repair-round-replies.md, repair-round-2-replies.md), and adds a Judgment custody paragraph to the W1 decision record. Same request as the Codex root lane's finding 2 on #645 (comment of 2026-10-03T09:06Z): the PRs kept only short excerpts of the reviewer models' judgments. Sanitization: coordination-folder absolute paths reduced to their file name, the home path replaced by ; nothing else changed. The reply files are byte copies of the coordination copies (no host path occurred in them). The move judges are complete; the seven holds_not_in_scope strings are kept as the source packet recorded them, already cut at 600 characters. move-hold-judges.json keeps the source's wave, workflow_run, moves..judge and holds_not_in_scope and drops the facts; review-round-findings.json holds the four journal lines of workflow wf_267d65f8-7f6 for #642 (two started, two result) in file order. Both JSON files use the source writer's format. Privacy scan for apoth, henosis and @gmail: zero hits. The literal /home/ appears five times, all in quoted reviewer text that is not a host path (/home/ twice, /home/, $S/home/..., /home/example/). Checks: validate.py, validate_convergence.py --all-recorded and the three pre-push registry tests exit 0. Co-Authored-By: Claude Opus 5.5 --- docs/decisions/2026-10-03-currency-wave-w1.md | 16 + .../judgments/move-hold-judges.json | 87 +++++ .../judgments/repair-round-2-replies.md | 138 ++++++++ .../judgments/repair-round-replies.md | 315 ++++++++++++++++++ .../judgments/review-round-findings.json | 134 ++++++++ 5 files changed, 690 insertions(+) create mode 100644 evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json create mode 100644 evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md create mode 100644 evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md create mode 100644 evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json diff --git a/docs/decisions/2026-10-03-currency-wave-w1.md b/docs/decisions/2026-10-03-currency-wave-w1.md index e72b9fa12..495763038 100644 --- a/docs/decisions/2026-10-03-currency-wave-w1.md +++ b/docs/decisions/2026-10-03-currency-wave-w1.md @@ -149,6 +149,22 @@ The W1 `holds_not_in_scope` entries stay out of this integration: | dagu | The supplied hold records no verified 2.18.1 archive, installed version or behavior review. Requalification is running separately. | | rtk | The supplied hold records no candidate artifact, observed version or qualified release metadata. Requalification is running separately. | +**Judgment custody.** The complete reviewer outputs behind this record, and the +repair replies that answered them, are retained under +`evidence/artifacts/currency-wave-w1-20261003/judgments/`, sanitized only of +host paths: +[move-hold-judges.json](../../evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json) +(the nine Opus move judges of `W1-moves.json`, workflow `wf_a95468d8-3af`; its +seven `holds_not_in_scope` strings are kept as the packet recorded them, +already cut at 600 characters), +[review-round-findings.json](../../evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json) +(the start events and results of the Opus `approve` and Sol `repair` #642 +reviewers, workflow `wf_267d65f8-7f6`), +[repair-round-replies.md](../../evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md) +(R642) and +[repair-round-2-replies.md](../../evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md) +(R642b). + ## Completeness critic and next sweep Search-first used the existing native recipes and upstream snapshot method; no diff --git a/evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json b/evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json new file mode 100644 index 000000000..cea061b63 --- /dev/null +++ b/evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json @@ -0,0 +1,87 @@ +{ + "wave": "W1 2026-10-03", + "workflow_run": "wf_a95468d8-3af", + "moves": { + "jcodemunch-mcp": { + "judge": { + "component": "jcodemunch-mcp", + "decision": "move", + "reason": "v1.108.327 is a clean stable release, and I re-checked every decisive fact.\n\n(1) Release status: per `gh api releases/tags/v1.108.327` it is not a prerelease or a draft, was published 2026-10-02T18:21:53Z, and `releases/latest` points to it. PyPI shows 1.108.327 as the latest version, and neither its wheel nor its sdist is yanked. `git ls-remote` resolves the tag v1.108.327 to commit 6d5ae86c130f96624e2ca2d797fa3b853c210b9d. It resolves v1.108.319 to 8f7b34ab, which matches manifests/stack.json:1694. OSV `/v1/query` returned `{}` for jcodemunch-mcp 1.108.327 and for tree-sitter-fsharp 0.3.12. GitHub issue search found no open issue that mentions 1.108.327 and no open regression issue. Only two issues were opened since 10-02. #961 is still open, but it was reported against v1.108.315, and tools/index_folder.py is byte-identical between .319 and .327, so it already affected the current pin. #960 is closed.\n\n(2) Integrity: my local sha256sum of the downloaded wheel is 9e2f6394\u2026f88a. The same digest appears in three published places: the PyPI JSON, the GitHub release asset digest, and the subject of the PEP 740 publish attestation (publisher jgravelle/jcodemunch-mcp, release.yml, environment pypi). The size is 1734964 bytes.\n\n(3) Version: the installed dist-info METADATA says Version 1.108.327. `__version__` comes from `importlib.metadata`. `uv-receipt.toml` names the hashed wheel as its requirement. After the smoke run, the server wrote `last_seen_version` = 1.108.327. All of this agrees with the coordinator's `--version` output (`jcodemunch-mcp 1.108.327`, exit 0). I did not run the binary myself.\n\n(4) No breaking change reaches this repository's documented use. I compared the installed .319 copy on this host with the .327 scratch copy; 75 files differ.\n- Byte-identical: counter.py, security.py, tools/index_folder.py, encoding/__init__.py and encoding/gate.py. The server.py `index_folder` schema (L1597-1645) is also unchanged.\n- config.py only adds the repo-key miss cache (#960). The `.jcodemunch.jsonc` keys (`max_folder_files`, `context_providers`, `extra_ignore_patterns`) and the JSONC loader are unchanged.\n- `make_symbol_id` is identical, and the PARSER_GENERATION 9 note says no Python symbol id moves.\n- get_symbol.py only changes the not-found error. The `search_symbols` schema only adds an optional `semantic_channel_error` blob. sqlite_store.py only adds `runtime_calls` columns; the index file path (`_db_path`) is unchanged. token_tracker.py only adds cache-lookup counting.\n- So the frozen oracle in scripts/native_token_ci.py, the `total_tokens_saved` field that token_manifest.py reads, and the route/menu/order tools the template enables should all still work. The .327 `get_session_stats` smoke kept the six-tool `counter` surface (6 visible tools, `schema_tokens_visible` 1050).\n- The two new required dependencies have wheels on both documented platforms: tree-sitter-fsharp 0.3.12 (abi3 builds for macOS arm64 and manylinux x86_64) and tree-sitter 0.26.0 (cp313 builds for both). This host's .319 environment already runs tree-sitter 0.26.0, tree-sitter-language-pack 0.13.0, anyio 4.15.1 and mcp 1.30.0, so the only new package here is tree-sitter-fsharp.\n- PARSER_GENERATION 7\u21929 means each existing index is fully re-parsed once. The recipe already indexes with `incremental:false`.\n- The repository never runs `jcodemunch-mcp init`, `claude-md` or `config --check`. The only match is upstream's quoted install text at docs/token-efficiency-stack.json:1846.\n\nThe user's 2026-10-03 directive ends the 7-day cooldown for clean releases. The move still depends on the PR's native-token-e2e run passing (see the integration notes).", + "integration_notes": "Base: build from origin/main at 56473e4b in an owned worktree. That is the coordinator's 0c/base tree, and their pin_sites line numbers refer to it. Do not use the main checkout: it is detached at 5cfa2400e and has unrelated uncommitted edits.\n\nA. Pin edits that must move together:\n- manifests/stack.json:1681: version 1.108.327.\n- manifests/stack.json:1694: source_pin = the commit 6d5ae86c130f96624e2ca2d797fa3b853c210b9d. Do not use the annotated tag object 4254801d5304ad70269d51d798df5eb59af12da4.\n- manifests/stack.json:1710: point the release URL at tag v1.108.327.\n- manifests/stack.json:1711: the LICENSE URL may be re-anchored to 6d5ae86c. The coordinator reports the LICENSE blob is unchanged (b0301faa); I did not re-check that.\n- Update the row's `freshness` text.\n- scripts/native_token_ci.py:62 PINS must change in the same commit; lines 1740-1742 fail with \"Manifest pin changed\" if it does not match stack.json.\n- Install and version lines: adoption/bootstrap.md:397,399; recipes/README.md:522,523; docs/token-session-handbook.md:333; tools/token-report/README.md:33; docs/foundation-stack.md:15 (release link).\n- docs/token-efficiency-stack.json:1718: change the install line only (coordinator-cited precedent 3058b2379, which I did not re-check).\n\nB. Pin-move checklist (#587):\n- Refresh catalogs/landscape/upstream-snapshot.json `components[58]` with its own method. Fields: `selected_version`, `selected_source_pin`, `checks`, `pushed_at`, `latest_stable_release`, `selected_pin_source`, `latest_release_source`, `release_relationship`, `selected_pin_matches_latest_release_commit`.\n- blueprints/token-native-focus/saturation-audit.json: version at :4117 and source_pin at :4258.\n- Add a `native_cli_e2e` qualification receipt and index it in `manifests/evidence.json` `receipts[]` under the hot-file protocol in docs/lanes.md. Append its id to the stack row's `evidence_ids` and to the audit row's `functional_evidence.public_receipts`.\n- The receipt's claim must state only what ran at .327:\n - the hashed wheel was installed into an isolated scratch prefix;\n - `--version` printed `jcodemunch-mcp 1.108.327`;\n - one `get_session_stats` call ran through mcporter 0.14.1 (visible_tools 6, catalog_tools 94, schema_tokens_visible 1050, schema_tokens_catalog 27880).\n- `index_folder`, `search_symbols` and `get_symbol_source` at .327 may enter the receipt only from the PR's native-token-e2e artifact or from a host run you perform yourself. Never carry over the .319 receipt's \"exact requested function returned\" wording.\n- Leave dated records unchanged: evidence/**, docs/decisions/**, manifests/candidates.json, and dated card text in docs/token-efficiency-stack.json. Also leave catalogs/foundation/new-wsl-architecture-20261001.json:345: `build_ecosystem.py --check` lists it under `architecture_pin_drift` and still passes (tests/test_ecosystem_manifest.py, `test_architecture_pin_drift_passes_and_is_listed`).\n\nC. Do not edit examples/claude-native/workflows/child-usage.mjs:701. The file is hash-pinned in examples/claude-native/workflows/SHA256SUMS:2, and its @8f7b34ab permalink stays valid; the entry points are still gcm, jcodemunch-mcp and munch-bench.\n\nThese citations are anchored at v1.108.319 or 8f7b34ab and remain valid permalinks: .jcodemunch.jsonc:1-3,13,25; recipes/README.md:583-595; adoption/templates/project.codex.config.template.toml:36-37; tests/test_jcodemunch_config.py:3,5,309; tests/test_codex_worker_lane.py:386; docs/token-session-handbook.md:263; tools/token-report/README.md:40; docs/native-token-ci.md:20. The source diff shows the behaviour they cite is unchanged at .327.\n\nIf you re-anchor them to v1.108.327, these are the line shifts I computed from the installed copies:\n- config.py: +12 for L48-L727 (48\u219260, 346-354\u2192358-366, 374\u2192386, 536-544\u2192548-556, 548\u2192560, 630-727\u2192642-739) and +61 for L1084-L1254 (1084-1091\u21921145-1152, 1230\u21921291, 1254\u21921315).\n- server.py: L1597-1645 unchanged; 5500-5577\u21925505-5582; 5511\u21925516; 5915-5932\u21925920-5937.\n- security.py, tools/index_folder.py and counter.py are byte-identical, so their line numbers stay the same.\n\nD. These statements describe behaviour verified at 1.108.319: recipes/README.md:597-600 (\"in this release\"); scripts/native_token_ci.py:360,1211,1254; docs/token-efficiency-stack.md:401; tools/token-report/README.md:78; tools/token-report/token_manifest.py:495; tools/capability-gate/README.md:156; tests/test_capability_gate.py:387; docs/landscape.md:44. The source diff supports them at .327 (encoding gate identical, `_db_path` unchanged, token_tracker.py only adds cache-lookup counting), but I executed none of them at .327. Either re-verify them in the qualification run or keep them labelled as 1.108.319 observations.\n\nE. Merge condition: the PR changes manifests/stack.json and scripts/native_token_ci.py, so .github/workflows/native-token-e2e.yml runs `python3 scripts/native_token_ci.py --install`. That job does a fresh `uv tool install --python 3.13 jcodemunch-mcp==1.108.327` on ubuntu-24.04, checks the version, runs `index_folder`, compares `search_symbols` and `get_symbol_source` against the frozen oracle (`fixtures/after.py::greeting#function`, lines 1-2, exact source), and runs the negative control. It must pass.\n- native_token_ci.py:1241 accepts only the MUNCH text shape for the positive search. If that search returns JSON, or the oracle's id, bounds or source differ, the response shape has changed for a documented use: switch to hold. Do not loosen the fixture.\n- Also run `python3 scripts/validate.py`, `python3 scripts/build_ecosystem.py --check`, and `tests.test_native_token_ci`, `test_jcodemunch_config`, `test_codex_worker_lane`, `test_ecosystem_manifest` and the stack lifecycle test.\n- PR body: cite the user's 2026-10-03 cooldown directive and include a non-empty `## SOTA sources` section (release tag, PyPI JSON, compare v1.108.319...v1.108.327). Add one `lane:*` label.\n\nF. Host move after merge: reinstall with the route's spec form into `$eco` and read back `$eco/bin/jcodemunch-mcp --version`.\n- Server processes already running .319 (several PIDs) keep the old code until their sessions restart. The .327 process_registry.py and process_locks.py changes read the same record keys (`pid`, `create_time`, `started_at`), so mixed versions should coexist.\n- The first `index_folder` on each existing index does a full re-parse (PARSER_GENERATION 9).\n- This host's .319 environment already has anyio 4.15.1, so the anyio advisories are already fixed here. The sentence-transformers advisory applies only to an extra that is not installed.\n\nVerification gaps (not defects):\n- The Sigstore bundle and certificate chain were not verified; I read only the attestation statement's subject digest.\n- The `--version` output came from the coordinator; I cross-checked it against METADATA, the uv receipt and `last_seen_version` but did not re-run it.\n- `index_folder`, `search_symbols` and `get_symbol_source` were not executed at .327.\n- The 37 dependency wheels were not hash-verified.\n- Neither the spec-form install `jcodemunch-mcp==1.108.327` nor the macOS arm64 route was exercised. PyPI serves one wheel carrying the verified hash, and both new dependencies have macOS arm64 wheels.\n\nToken tools: Context Mode `ctx_execute` for read-only diffs, digests, API reads and greps, printing only derived answers; Read for small known file ranges. No compressors stacked, no savings claimed." + } + }, + "playwright-cli": { + "judge": { + "component": "playwright-cli", + "decision": "move", + "reason": "v0.1.22 meets all four move conditions. I re-checked each one myself.\n\n(1) Clean stable release. The GitHub release v0.1.22 has draft false and prerelease false, and it is releases/latest. On npm, dist-tags latest is 0.1.22 and deprecated is null. Nothing newer has been published: the packument's modified time equals 0.1.22's publish time.\n\n(2) Integrity. I rehashed the scratch tarball (35464 bytes, 16 files, matching dist.fileCount):\n- sha512 base64 6WMkQNM4...GLsyfA== equals the registry dist.integrity.\n- sha1 8f4bb69e84084f1fabcb4ba08f491f7e16894a06 equals dist.shasum.\n- sha512 hex e9632440...18bb327c equals the subject digest in both npm attestations (publish v0.1 and SLSA v1). Both name workflow .github/workflows/publish.yml at refs/tags/v0.1.22 and gitCommit b85c7a736bb473bf55b584e54a09ffa698d6d871. That commit is also the object of the lightweight tag and the npm gitHead.\n- sha256 bb4840be17006e2b7ba856224dc3062f6571d5f647352476f95c5e77ff5d679a equals the reported value.\n- I also reproduced the 0.1.21 pin's sha256 46d0b660... from the registry.\nThe attestation signatures were not cryptographically verified. That is the same basis as the 0.1.21 pin.\n\n(3) Version output. The coordinator's run of --version printed 0.1.22 with exit 0. The source agrees. playwright-cli.js:36 passes the installed package.json version (0.1.22) as embedderVersion. playwright-core lib/tools/cli-client/program.js:75-77 prints that value and exits 0. The .bin link resolves to that playwright-cli.js. I did not run the binary myself.\n\n(4) No breaking change affects this repository's documented use. Upstream labels no breaking change. Against the 0.1.21 npm package, only five files differ:\n- package.json: version, plus the alpha dependency 1789764292000 -> 1790635538000\n- README.md: one documentation line\n- the bundled SKILL.md\n- two skill reference files\nplaywright-cli.js and skillCheck.js are byte-identical. Their sha256 fda25227... equals the entry_sha256 recorded in the 0.1.21 fixture receipt. The bin mapping, engines (cli >=18; playwright and playwright-core >=20 in both alphas) and install scripts (none) are unchanged.\n\nThis repository uses the component by installing an exact version and running --help and --version. The only change that touches agent configuration is the bundled skill's allowed-tools narrowing, which drops Bash(npx:*) and Bash(npm:*). That is a tightening, and this repository installs no playwright-cli skill: adoption/skills/manifest.json lists it as not adopted, and neither checkout has a .claude/skills/playwright-cli or .agents/skills/playwright-cli directory.\n\nThe release was published 2026-09-28. The user waived the remaining cooldown for clean stable releases.", + "integration_notes": "BASE. origin/main is 56473e4b840f0e6940c031801d866e7e9bf29baf (confirmed by git ls-remote just now). That is HEAD of ROOT=/code/.worktrees/native-agent-stack/0c/base, and all line numbers below refer to ROOT. Do not use line numbers from /code/native-agent-stack (HEAD 5cfa2400e, stale and dirty).\n\n1) CHANGE TOGETHER (enforced by checks)\na. ROOT/manifests/stack.json:681 version -> \"0.1.22; Playwright 1.64.0-alpha-1790635538000\".\nb. ROOT/blueprints/token-native-focus/saturation-audit.json:5919 -> the same string. ROOT/tests/test_stack_lifecycle.py:28-32 requires repository, version, profile and role to equal stack.json.\nc. ROOT/catalogs/landscape/upstream-snapshot.json:1506 selected_version -> the same string. ROOT/scripts/landscape.py:1373-1381 enforces this; CI runs python3 scripts/landscape.py --root .\n The rest of that row is a dated observation from 2026-09-21:\n - checks at 1509-1532, with stdout_sha256\n - pushed_at at 1538\n - latest_stable_release v0.1.21 at 1540-1547\n - latest_release_source 74354ecc at 1548-1553\n - release_relationship \"selected_version_matches_latest_stable\" at 1558\n Refresh these from real API calls: repos/microsoft/playwright-cli, releases/latest, and commits/v0.1.22 (expected: b85c7a736bb473bf55b584e54a09ffa698d6d871, published_at 2026-09-28T23:23:13Z, prerelease false, draft false, target_commitish main). Record genuine timestamps and stdout hashes and never write them by hand. If you do not refresh the row, do not leave release_relationship claiming a match the recorded observation no longer shows.\nd. ROOT/recipes/README.md:102 -> version `0.1.22`; install `npm install --global --prefix \"$STACK_HOME/tools/playwright-cli-0.1.22\" @playwright/cli@0.1.22`; bundled Playwright `1.64.0-alpha-1790635538000`.\ne. ROOT/manifests/stack.json:699 freshness. Rewrite it for 0.1.22:\n - State the integrity basis: sha512 equals dist.integrity and the provenance subject; sha256 is a local rehash.\n - State that the existing-Chrome fixture in token-practice-gap-followup-20260920 ran on 0.1.21 with alpha 1789764292000 and was not repeated on 0.1.22, and that the Playwright dependencies are still alpha builds.\n - Keep role (line 684) unchanged, because saturation-audit mirrors it.\n - Add the new receipt id to evidence_ids (689-694). Add the same id and path to the saturation-audit row's functional_evidence.public_receipts (tests/test_stack_lifecycle.py:33-36 requires it).\n - Register the receipt in manifests/evidence.json: the receipt entry plus the file sha256/bytes index. That file is a shared hot file, so follow docs/lanes.md.\n\n2) NEW-WSL SOURCE PROFILE. Edit these only if this lane owns them; otherwise hand them off.\nUpdate ROOT/adoption/new-wsl-profile.json:989-1046 as one set:\n- pin 0.1.22\n- artifact cli-0.1.22.tgz, URL https://registry.npmjs.org/@playwright/cli/-/cli-0.1.22.tgz\n- checksum sha256 bb4840be17006e2b7ba856224dc3062f6571d5f647352476f95c5e77ff5d679a, source https://registry.npmjs.org/%40playwright%2Fcli/0.1.22, integrity_observation downloaded_and_rehashed\n- install `npm install -g @playwright/cli@0.1.22`, source README at v0.1.22\n- acceptance source ci.yml at v0.1.22. ci.yml is not in the compare, so it still uses Node 20 and npm ci. Change the prerequisite to \"Run from the v0.1.22 source checkout\".\n- README evidence ref at commit b85c7a736bb473bf55b584e54a09ffa698d6d871\n- release tag 0.1.22 and its source\nKeep execution_status UNRUN, provisioning_status unprovisioned_source_review and default_install false. The slot is split; see tests/test_new_wsl_profile.py:85-98. source_review_ref reviewed v0.1.21, so add the new receipt to evidence_refs instead of implying that review covers 0.1.22.\nThen:\n- edit ROOT/adoption/new-wsl-profile.md:199 (pin, and README link at b85c7a7)\n- regenerate ROOT/docs/new-wsl-handbook.json and .md with `python3 scripts/build_new_wsl_handbook.py --write`. These files are generated (\"Do not edit this file\"), so do not hand-edit 7656-7702 or line 648.\n\n3) LEAVE UNCHANGED. These are dated or sealed records, and their 0.1.21 text is still true as history.\n- ROOT/docs/stack.md:29: part of the 2026-09-19 snapshot. Precedent: prometheus-3150-qualification-20260926.json:19 and tests/test_agentsview_qualification.py:142-145 treat it as dated_record.\n- ROOT/catalogs/landscape/foundation.json:2442 and :2498: the web-research verdict row, with both lanes sealed, agreement disagree, checked_at 2026-09-22. Line 2442 narrates the 0.1.21 receipt; line 2498 is the overturn arm as of the verdict. Change these only through the verdict tooling.\n- ROOT/docs/grand-catalog-handbook.md:1565: the same text, frozen 2026-09-22.\n- ROOT/catalogs/foundation/new-wsl-architecture-20261001.json:656: a dated edition.\n- evidence/**, docs/decisions/** and the sota-convergence manifests.\n\n4) RECEIPT. Suggested path: evidence/receipts/playwright-cli-0122-qualification-20261003.json. Sanitize it: replace scratch and home paths with placeholders, leave out the host user name, and stamp it with date -u.\nRecord:\n- release, tag, gitHead and attestation facts (workflow, gitCommit, both subject digests)\n- npm facts: latest 0.1.22, time 2026-09-28T23:24:31.286Z, deprecated null, engines, dependencies, no install scripts\n- artifact facts: 35464 bytes, 16 files, sha512 b64, sha1, sha512 hex, sha256 rehash; also that the 0.1.21 sha256 46d0b660... was reproduced\n- compare: 2 commits (83368cb3bfc0, b85c7a736bb4), 6 files\n- npm package diff: 5 files changed; playwright-cli.js sha256 fda252270793401d2856530a5f503adf7fc326fc07bed97e413138f67c50662b unchanged\n- install: local, non-global install of the verified tarball; exit 0; 3 packages; lock integrities playwright sha512-/5XDUMxp... and playwright-core sha512-pNwaXirh...\n- --version printed 0.1.22, exit 0; --help exit 0; both run by the coordinator with HOME overridden\n- evidence class: artifact and metadata checks plus a local CLI smoke test, not a browser end-to-end run\n\n5) CAVEATS\n- Not new in 0.1.22 (playwright-cli.js:35-56 is identical in 0.1.21): unless NO_UPDATE_NOTIFIER or CI is set, every invocation, including --help and --version, does three things at most once per 24 h. It writes cli-update-check.json under the Playwright registry directory (default ~/.cache/ms-playwright). It compares /.claude or .agents/skills/playwright-cli/SKILL.md with the bundled skill. It sends a GET to registry.npmjs.org/@playwright/cli/latest. Adding NO_UPDATE_NOTIFIER=1 to the check commands is optional and belongs in a separate change.\n- The skill's allowed-tools are now Bash(playwright-cli:*) Bash(npx playwright:*) Bash(npx --no-install playwright:*). No repository configuration depends on the old list.\n- run-code now exposes fetch, timers and crypto; require and process are still blocked. No documented repository flow uses run-code.\n- The Playwright dependencies are still alpha builds.\n\n6) VERIFICATION GAPS\n- I did not execute the binary; the version result relies on the coordinator's run plus the source reading.\n- The existing-Chrome loopback fixture was not re-run on 0.1.22.\n- Upstream `npm ci && npm run test` was not run.\n- `npm audit signatures` and Sigstore verification were not run.\n- The documented --global --prefix install form was not executed.\n- microsoft/playwright changes between the two alpha builds were reviewed only through the PR links in the release notes.\n- The macOS host evidence was not re-checked.\n\n7) BEFORE COMMIT. Run:\n- python3 scripts/validate.py\n- python3 scripts/landscape.py --root .\n- python3 -m unittest tests.test_stack_lifecycle, plus tests.test_new_wsl_profile and the handbook regeneration if the profile changed\nBuild the PR body from .github/pull_request_template.md. It needs a non-empty \"## SOTA sources\" section listing the release URL, npm version manifest, attestation URL and compare URL, and the PR needs one lane:* label.\n\nToken lanes used: ctx_batch_execute and ctx_execute for hashing, registry, GitHub API and git reads (streamed, no files written); Grep and Read for known sites." + } + }, + "openresearch": { + "judge": { + "component": "openresearch", + "decision": "move", + "reason": "All four move conditions held when I re-checked them. Nothing is gated. I read from B=/code/.worktrees/native-agent-stack/0c/base, which is at 56473e4b, equal to origin/main, with a clean tree.\n\n(1) Clean stable release. `gh api releases/tags/v0.2.15` returns prerelease false, draft false, published 2026-10-02T17:44:48Z and target_commitish ee36ef0333ca3c533eace915f1bec322a1efde1c. `releases/latest` returns v0.2.15. `git/ref/tags/v0.2.15` is commit ee36ef03. Cargo.toml at the tag says version 0.2.15. The v0.2.7...v0.2.15 comparison is 71 ahead and 0 behind, with base 24e404ec, which is the current source_pin.\n\n(2) Integrity. I recomputed the tarball's sha256: f36ed4095f4839767a162a555d9e7eafc04f70f0664ce3767178f81fc0b45c86, 11890208 bytes. `sha256sum -c` against the release .sha256 sidecar printed OK, exit 0. The release's sha256.sum line 5 and the API asset digest give the same hash and size. The scratch-installed orx (sha256 16dc0f909116f878be49c49aa9ba0bab4a5c74ca36ca3d59ea2f38f53ea9a4fe) is byte-identical to the archive member streamed out of the verified tarball.\n\n(3) Version. The supplied isolated `orx --version` printed \"orx 0.2.15\", exit 0. I did not run the binary, because acceptance commands are outside my role. I confirmed the version without running it:\n- the binary is the verified archive member;\n- Cargo.toml at the tag says 0.2.15;\n- the binary contains the string 0.2.15;\n- the bootstrap's exact-match probe accepts that output (B/adoption/bootstrap-linux.sh:806-816).\n\n(4) No breaking change affects documented use. The documented uses are B/manifests/stack.json:659-660, B/recipes/README.md:101, B/recipes/native-upgrades-20260921.md:51-52 (example id 2609.05760), the version probe and install_single_binary_tarball (B/adoption/bootstrap-linux.sh:369-383). At v0.2.15:\n- `--no-telemetry` is still a global flag (src/main.rs:53-54).\n- The discover keyword arguments (published_after, published_before, limit) and the paper arguments (id, source, full) have the same structure.\n- client.rs discover_papers_by_keyword, and paper.rs run_alphaxiv and fallback_markdown_kind, are byte-identical to v0.2.7.\n- discover_papers, fetch_paper_markdown and fetch_paper_github only gained public_get. That is a retry of up to 3 attempts on HTTP 429, with the same user-agent and no auth header.\n- The id 2609.05760 still routes to alphaXiv and parses to itself (detect_source, is_pmid, parse_paper_id).\n- The archive still holds exactly one file named orx.\n- Self-update covers only the installer, app-bundle, AppImage and portable channels (src/updates.rs InstallChannel::self_updates), not the bootstrap's tarball route.\n\nThe one unlabeled break is in `orx logs`: it lost --head, --bytes and --range (PR #450). The repository uses `orx logs` nowhere outside evidence/. No issue updated since the release reports a problem with discover, paper, telemetry or rate limits. PR #514 \"Bump version to 0.2.16\" is open but not released.", + "integration_notes": "Work from origin/main, B=/code/.worktrees/native-agent-stack/0c/base (56473e4b). The primary checkout /code/native-agent-stack is stale and its line numbers are shifted.\n\nA. Change by hand:\n1. B/manifests/stack.json\n - :654 version \"0.2.15\".\n - :673 https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15.\n - :675 source_pin ee36ef0333ca3c533eace915f1bec322a1efde1c.\n - :676 freshness: rewrite it. It currently says \"Installed tested pin\" and points to manifests/landscape.json, which has no OpenResearch entry. Point it to catalogs/landscape/upstream-snapshot.json. State the evidence class (integrity, isolated version, source review). Say there has been no discover/paper run at 0.2.15 and no host switch. Name 0.2.7 as the rollback.\n - :662-670 evidence_ids: add the new receipt id.\n2. B/adoption/pins-linux-x86_64.json\n - :204 version \"0.2.15\".\n - :206 url .../download/v0.2.15/openresearch-cli-x86_64-unknown-linux-musl.tar.xz.\n - :207 sha256 f36ed4095f4839767a162a555d9e7eafc04f70f0664ce3767178f81fc0b45c86.\n - :208 install_note: rewrite it for the 2026-10-03 qualification.\n - Keep version_probe unchanged.\n3. B/blueprints/token-native-focus/saturation-audit.json\n - :5434 version \"0.2.15\". tests/test_stack_lifecycle.py:31-32 requires it to equal stack.json.\n - :5503 source_pin ee36ef03.\n - Add the new receipt to functional_evidence.public_receipts with the same path as in manifests/evidence.json (test_stack_lifecycle.py:33-36).\n - Do not extend the old receipts' \"use: accepted_within_scope\" stage to cover 0.2.15.\n4. B/catalogs/landscape/upstream-snapshot.json, openresearch row :1429-1501.\n - selected_version and selected_source_pin must equal stack.json (scripts/landscape.py:1375-1378; CI validate.yml:111).\n - Re-collect the row the way the markitdown and mcporter rows were re-collected on 2026-09-25. Use the file's methodology (`gh api {endpoint}`; exit code, times and stdout_sha256 for each check). The four checks are repos/alphaXiv/OpenResearch, releases/latest, commits/ee36ef03 and commits/v0.2.15.\n - Update latest_stable_release, selected_pin_source and latest_release_source.\n - Set release_relationship and selected_pin_matches_latest_release_commit from what you observe at collection time, since 0.2.16 is pending.\n5. B/recipes/README.md:101: change the version cell and the release link to v0.2.15, link the receipt, and name 0.2.7 as the rollback (archive c0f8c748..., commit 24e404ec).\n6. B/manifests/evidence.json: add a receipts entry and an artifact sha256/bytes entry, the same way mcporter-0141-qualification-20260925 does at :3159 and :47553. Do not give it kind native_cli_e2e.\n\nB. Do not hand-edit. Some of these correct the supplied pin_sites.\n- B/catalogs/landscape/foundation.json:2414 is the web-research winner pin (winners[2]) from the sealed 2026-09-22 verdict wave (run_id foundation-web-research-20260922). tools/sota-convergence/build_verdicts.py --check checks it (validate.yml:119). It stays 0.2.7, the same way the markitdown winner stayed 0.1.7 (:1517) and the mcporter winner stayed 0.13.13 (:4796); see also the mcporter receipt's limitation at evidence.json:3167. The new receipt stays unbound until a new verdict wave.\n- Generated files:\n - Run scripts/new_host_grand_list.py in write mode, then `--check` (validate.yml:123). Only bootstrap_version moves to 0.2.15 (:242 reads the pins file). The \"pin\" field (:252) is the winner and stays 0.2.7.\n - Run `scripts/component_matrix.py --check` (validate.yml:121). Its pin (:327, :388) also stays 0.2.7.\n- Dated records stay as they are:\n - recipes/native-upgrades-20260921.md:13. Its procedure does not depend on the version, and it is the recipe_map target (adoption/manifest.json:161). If you repoint the recipe, change native_integration.recipe_document in the same edit (test_stack_lifecycle.py:37).\n - catalogs/foundation/new-wsl-architecture-20261001.json:632 and :634. Note this as a caveat: a new host that follows this edition installs v0.2.7.\n - docs/decisions/2026-10-01-definitive-sota-wsl-program.md:298, docs/stack.md:28, docs/grand-catalog-handbook.md, catalogs/sota-convergence/*, docs/ecosystem/*.html and evidence/**.\n\nC. Run: python3 scripts/validate.py; python3 scripts/landscape.py --root .; python3 tools/sota-convergence/build_verdicts.py --check; python3 scripts/component_matrix.py --check; python3 scripts/new_host_grand_list.py --check; python3 -m unittest.\n\nD. Receipt facts. Sanitize host paths (/...) to placeholders.\n- Release: tag v0.2.15, commit ee36ef03, published 2026-10-02T17:44:48Z. Prerelease false, draft false, immutable false. It is releases/latest.\n- Integrity: three-way, using the sidecar, sha256.sum line 5 and the API digest. There is no signature or attestation (attestations API returned 404).\n- Binary sha256 16dc0f90..., equal to the archive member.\n- `orx --version` printed \"orx 0.2.15\", exit 0, under env -i, unshare -rn and a scratch HOME. That is supplied evidence, not re-run by me.\n- Comparison: 71 commits ahead, 0 behind.\n- Source review of the documented paths as in the reason field. Upstream sources: v0.2.15/v0.2.14 release pages, compare v0.2.7...v0.2.15, PRs #450 and #481, and src/main.rs, src/client.rs, src/commands/paper.rs, src/updates.rs at the tag. Put these in the PR's \"## SOTA sources\" section and add one lane:* label.\n\nE. Caveats and gaps:\n- No discover or paper run at 0.2.15. The supplied premise that a stored key or account is required, and that no PAPER_ID exists, is not supported: these call paths send no credentials, and the recipe gives 2609.05760. A networked run with that id is the open functional gap.\n- Upstream Rust tests were not run.\n- The 429 retry can lengthen runs.\n- The startup update check still runs unless ORX_NO_UPDATE_CHECK or NO_UPDATE_NOTIFIER is set.\n- `--no-telemetry` applies per command. The same opt-out model exists at both tags.\n- Linux x86_64 only; there is no macOS pin.\n- Switching the host binary or launcher is a separate step and needs its own read-back.\n- My lanes: Context Mode ctx_execute and ctx_search for gh api reads, hashing and source diffs; Read and Grep for known files." + } + }, + "mcp-inspector": { + "judge": { + "component": "mcp-inspector", + "decision": "move", + "reason": "Move 2.8.0 to 2.9.0, on the condition that host qualification passes first (see integration notes). I re-checked all four criteria myself on 2026-10-03 using reads only, and all four hold. The \"clean\" criterion depends on one interpretation, stated below.\n\n(1) Clean stable release.\n- GitHub release 2.9.0: prerelease=false, draft=false, and it is releases/latest. Its target_commitish is the commit the lightweight tag points to (ae865a19178ddf6f375780a02e9c77c4cf4da184).\n- npm: dist-tags.latest=2.9.0 and the version is not deprecated. 2.8.0 and 2.9.0 are the only versions at or above 2.8.0.\n- Published by the GitHub Actions trusted publisher, with SLSA v1 provenance: .github/workflows/main.yml at refs/tags/2.9.0, gitCommit ae865a19.\n- Advisories: OSV returns 0 vulns for 2.9.0 and for 2.8.0. The repo and GraphQL advisories are only GHSA-g9hg-qhmf-q45m (<0.16.6) and GHSA-7f8r-222p-6f5g (<0.14.1).\n- Interpretation: the release body lists a \"Known issue\", #2549. OAuth profiles that share one server overwrite each other's tokens in the secret store. This is a regression from #2482; the fix (PR #2556) merged to v2/main on 2026-10-02 but is not released. I treat it as having no effect here: git grep of origin/main 56473e4b outside evidence/ finds no MCP_INSPECTOR_OAUTH_STATE_PATH, MCP_INSPECTOR_SECRET_STORE/SECRET_FILE, MCP_INSPECTOR_PERSIST_TOKENS or --advertise-apps, and every documented target is stdio.\n- I read \"clean\" as release hygiene. The recorded gloss of the user's 2026-10-03 directive (\"no known regression or advisory against it\") would count #2549 as a known regression. If the coordinator applies that gloss strictly, holding costs about 4 days: the normal 7-day cooldown from the 2026-09-30T22:40Z npm publish ends around 2026-10-07. It does not require waiting for 2.10.0.\n\n(2) Integrity. I recomputed the hashes over the scratch inspector-2.9.0.tgz (1,235,523 bytes):\n- The sha512 SRI (sha512-77VWBmsA18jd...+tw==) equals the registry dist.integrity, fetched fresh.\n- The sha1 (42f9d00d...) equals dist.shasum.\n- The sha512 hex (efb55606...) equals the subject digest of both registry attestations.\n- The sha256 (0671ad3c...ed09) equals the value in adoption/new-wsl-profile.json.\n- All 23 files in the tarball are byte-identical to the scratch-prefix install.\n- Gap: the Sigstore signature is not verified. Decoding the attestation reads it; it does not check the signature.\n\n(3) Version. The binary itself cannot report a version. The launcher has no version flag, and it is byte-identical to 2.8.0's (clients/launcher/build/index.js sha256 21ca6e6e..., parse-launcher-argv.js a417cf4d...). `--version` would start web mode instead. The documented route (npm ls, recipes/README.md:99) printed @modelcontextprotocol/inspector@2.9.0 with exit 0 in the scout's run. I confirmed this from the installed package.json (2.9.0) and from prefix/bin/mcp-inspector, which resolves into that package's launcher.\n\n(4) No breaking change affects documented use. I compared the 2.9.0 builds with the host's 2.8.0 install:\n- The 2.9.0 CLI build defines every flag the recipes use: --config, --server, --method, --format, --stored-auth-only, --cwd, --tool-name, --tool-args-json.\n- The 12 storedAuthOnly lines are identical to 2.8.0's.\n- The --config secret-store path is textually identical to 2.8.0's. That covers loadServerEntries, rehydrateMcpConfigFromKeychain, resolveSecretStore, expectedSecretFields, chooseFallbackKind and warnAboutSecretStorage. The only difference is that probeKeyringAvailable adds a findCredentialsAsync call.\n- In the web build, isEnvFlagEnabled (DANGEROUSLY_OMIT_AUTH) and resolveAutoOpen (MCP_AUTO_OPEN_ENABLED) are identical. LICENSE and the postinstall script are identical.\n- #2471 stops advertising the UI extension by default. This cannot change tools/list for the documented servers: the socraticode 1.15.0/1.16.0 and qmd 2.8.3 installs contain no io.modelcontextprotocol/ui reference, and GitHub code search finds none in oraios/serena (default branch, not the pinned commit).\n- #2482 moves OAuth token storage into the secret store. It only affects OAuth servers over sse or streamable-http.\n\nNothing functional has run on 2.9.0 yet (tools/list, tools/call, --stored-auth-only). The directive still requires host qualification and review rounds, so the move is gated on those in the integration notes.", + "integration_notes": "1. WHERE TO WORK. Use an owned worktree at origin/main 56473e4b840f0e6940c031801d866e7e9bf29baf (base worktree, clean). The main checkout (/code/native-agent-stack, detached 5cfa2400e) has uncommitted edits from another lane in exactly the hot files this move touches: manifests/stack.json, recipes/README.md, catalogs/landscape/upstream-snapshot.json, manifests/evidence.json and catalogs/landscape/research-state.json. Follow the docs/lanes.md hot-file protocol. Hand off research-state.json:473 to its owner; it exists only in main and still says \"Inspector2.8.0\". Do not edit it.\n\n2. HOST QUALIFICATION GATE (before relinking).\n- Install from the verified tarball (sha256 0671ad3cc535b00cbfbd3a9aad7559a735ec471d72030f0e69b7add778f8ed09, in mcp-inspector/). Use the same route as the 2.8.0 receipt (evidence/receipts/mcp-inspector-280-qualification-20260926.json:37): `npm install --global --no-audit --no-fund --prefix ~/.local/share/codex-ecosystem/tools/mcp-inspector-2.9.0 `. Keep the 2.8.0 and 2.7.0 prefixes.\n- Run the recipe smokes: recipes/README.md:256-257 (socraticode tools/list) and :265-268 (serena tools/call get_symbols_overview), both with --stored-auth-only.\n- Re-run the 2026-09-26 harness (evidence/artifacts/sota-refresh-20260926/mcp-inspector/{accept_inspector.py,compare_inspector.py,sandbox.sh}) comparing 2.9.0 with 2.8.0. That covers the 15 gated steps: stdio and streamable HTTP to a scratch QMD, unknown tool exit 5, --strict, and the DANGEROUSLY_OMIT_AUTH matrix.\n- Expected differences that are not regressions: `--cli --help` gains --advertise-apps and --require-digests. Any secret-store stderr warning should match 2.8.0's, since the code is identical apart from findCredentialsAsync.\n- Only when everything passes: with no Inspector process running, relink ~/.local/share/codex-ecosystem/bin/mcp-inspector, then run the post-switch checks through PATH (npm ls 2.9.0, tools/list, tools/call, unknown tool exit 5).\n- If anything regresses: stop, keep 2.8.0, and record a hold.\n\n3. SIGNATURES. Run `npm audit signatures` in a throwaway project (`npm init -y`, then `npm install @modelcontextprotocol/inspector@2.9.0 --ignore-scripts --no-audit --no-fund`); audit refuses global installs. Record counts only. The receipt must say the attestation decode was a read, not a signature check. Also record the dependency-tree difference: there is no shrinkwrap; 2.9.0 installed 117 packages versus 190 for 2.8.0, server-legacy, express and ip-address are absent, and undici is 8.11.2 and fast-uri 3.1.8.\n\n4. EDITS THAT MUST MOVE TOGETHER (base line numbers; validation fails otherwise).\n- manifests/stack.json:\n - :604 version 2.9.0.\n - :605 license: the LICENSE file is byte-identical (sha256 0382b005...), so only change \"2.8.0 LICENSE\" to \"2.9.0 LICENSE\".\n - :609 `npx @modelcontextprotocol/inspector@2.9.0 --help`.\n - :616-617 append the new receipt id and keep the 2.8.0 id.\n - :620 releases/tag/2.9.0.\n - :623 rewrite the freshness text from the new receipt's own output; the landscape winner pin stays 2.7.0.\n- recipes/README.md:99: edit in place, because the line is cited elsewhere. Change the version cell, tools/mcp-inspector-2.9.0 and @2.9.0, the npm ls prefix, and extend the byte-identical launcher and resolveAutoOpen sentences to 2.9.0. Change the DANGEROUSLY_OMIT_AUTH sentence to \"2.8.0 and later\". Update the license sentence and the replacement sentence and receipt path. Optionally add one sentence on --advertise-apps being off by default and on the OAuth secret store.\n- catalogs/landscape/upstream-snapshot.json, inspector block (about lines 1314-1369): refresh it with live gh api checks (repos/modelcontextprotocol/inspector, /releases/latest, /commits/2.9.0), recording real exit codes, timestamps and stdout sha256. Set selected_version 2.9.0; scripts/landscape.py:1375 requires it to equal stack.json. Set latest_stable_release to 2.9.0 / 2026-09-30T22:23:56Z, and latest_release_source to ref 2.9.0, sha ae865a19..., committed_at from the API.\n- blueprints/token-native-focus/saturation-audit.json: :4874 version and :4882 documented_commands. Add the receipt to functional_evidence.public_receipts with its manifests/evidence.json path; tests/test_stack_lifecycle.py:31-36 checks these.\n\n5. RECEIPT.\n- File evidence/receipts/mcp-inspector-290-qualification-.json with kind native_cli_e2e. Claims come only from its own recorded output. Index it in manifests/evidence.json receipts[] and files[], and carry convergence_records.\n- Rollback caveat (confirmed in the 2.9.0 CLI build): readOAuthStore (clients/cli/build/index.js:6258-6271) moves plaintext oauth.json secrets into a durable store and rewrites oauth.json without them (:6253-6255). So the 2.8.0 receipt's line \"keeps no store that 2.8.0 migrates\" no longer holds. Rolling back needs a fresh sign-in for OAuth servers; stdio is unaffected.\n- overturn_when: a 2.9.x or later regression in tools/list, tools/call or --stored-auth-only; an advisory against 2.9.0; adopting multiple OAuth profiles (MCP_INSPECTOR_OAUTH_STATE_PATH) before 2.10.0 ships #2556 (otherwise use the release-body workaround: a separate MCP_INSPECTOR_SECRET_STORE=file and MCP_INSPECTOR_SECRET_FILE per profile); or a verdict wave picking another inspector.\n- limitations: one host; upstream `npm run validate` not run; SSE, OAuth, web UI, TUI and MCP Apps not exercised; Serena UI-extension gating checked only on its default branch unless the host smoke covers it.\n\n6. LEAVE UNCHANGED (dated records): catalogs/foundation/new-wsl-architecture-20261001.json:1238-1268, docs/decisions/2026-10-01-definitive-sota-wsl-program.md:305, docs/stack.md (a dated_record), docs/decisions/2026-09-26-workstation-tool-refresh.md, catalogs/sota-convergence/*, the 2.8.0 receipt and its evidence.json entries, and the catalogs/landscape/foundation.json winner 2.7.0. There is no adoption/pins-*.json entry to change. adoption/new-wsl-profile.json already names 2.9.0 with the same sha256.\n\n7. PR.\n- Cite the user's 2026-10-03 directive (\"the 7day waiting period can end sooner as needed with clean upstream releases\") and the #2549 interpretation in both the PR body and the receipt.\n- Use the template's \"## SOTA sources\" section: release 2.9.0, compare 2.8.0...2.9.0, registry metadata and attestations URLs, PRs #2471/#2482/#2529/#2556, issue #2549. Add one lane:* label.\n- Before committing, run python3 scripts/validate.py, tests/test_stack_lifecycle.py and scripts/build_ecosystem.py --check, then do an independent review round.\n\nToken lanes I used: Context Mode ctx_execute for hashing, the registry, GitHub and OSV reads, and the build-source comparisons (raw bytes stayed in the sandbox); Read/Grep for known repo files. No compressors were stacked." + } + }, + "claude-hud": { + "judge": { + "component": "claude-hud", + "decision": "move", + "reason": "Move from 0.8.0 to v0.10.0 at commit 75683c6de1ac07f6bbef00d739001679dba0740c. I re-checked each decisive fact myself on 2026-10-03.\n\nSTABLE RELEASE, CHECKED LIVE\n- gh api reports release v0.10.0 as prerelease:false, draft:false, immutable:false, with 0 assets, published 2026-10-01T19:11:24Z.\n- It is releases/latest.\n- v0.9.0 and v0.10.0 are the only releases after v0.8.0. Neither is a prerelease or a draft.\n- security-advisories returns length 0.\n\nINTEGRITY\nUpstream publishes no checksum and the tag object is unsigned and mutable, so integrity rests on the git identity:\n- The tarball is 607051 bytes with sha256 6c49b71b8d4fca15d6cd9777e3724300e51eb361f4e5e8b2a12ad8085b8ac720.\n- git get-tar-commit-id prints 75683c6de1ac07f6bbef00d739001679dba0740c.\n- git ls-remote peels refs/tags/v0.10.0^{} to the same commit (tag object 801f75c6ca5332b7937a181e9d904bc4013974aa).\n- The commits API reports verified:true, reason valid, tree d4331bf0aa622ffe0b1cc7878855bbd747d8cae1.\n- The archive holds 310 regular files and 19 directories, with no links and no absolute or '..' names.\n- The prefix holds 310 files and 0 symlinks. tar --compare against it reports only Mode/Uid/Gid differences, never content or size.\n\nVERSION\n- There is no version command. dist/index.js:46-58 reads stdin, and with empty stdin it prints '[claude-hud] Initializing...'.\n- The applicable identity is package.json:3, .claude-plugin/plugin.json:4 and .claude-plugin/marketplace.json:9, all reading 0.10.0, plus the commit sha above.\n\nBREAKING CHANGES AGAINST THIS REPOSITORY'S DOCUMENTED USE\nNone is left without a matching change.\n- The repository ships no claude-hud config. Outside evidence/ nothing matches autocompactBuffer, promptCacheTtlSeconds, showCost, claude-hud.json or plugins/claude-hud.\n- Upstream needs Claude Code 2.1.260 or later; the repo floor is 2.1.284 (manifests/stack.json:241).\n- The plugin and marketplace names are unchanged.\n- The template statusLine (adoption/templates/claude.settings.template.json:327) still works:\n - dist/index.js still runs main() when executed directly (dist/index.js:102-104).\n - It honours COLUMNS (dist/utils/terminal.js:10).\n - I ran the template's own rendered command with node swapped for /bin/echo on simulated cache listings. It selects .../0.10.0/dist/index.js over 0.8.0 and 0.9.0 in either input order.\n\nTWO UPSTREAM FACTS THE INPUT OMITTED (neither blocks)\n- PR #795 (merge c0c4866780b101f0ee281f2ddd356b7ebf649879) landed 16 minutes after the release and is not in any release yet.\n - It fixes a low-severity OSC 8 hyperlink spill: when line 1 wraps at ' \u2502 ' inside a folder name, the link stays open over the rest of the HUD.\n - The pinned 0.8.0 splits at the same separators without tracking links (host cache dist/render/index.js:158-183 and 223-246). So the bug already exists in 0.8.0; it is not a regression, and holding does not avoid it.\n- Open issue #796 says showDiskUsage was silently dropped. It does not apply to the pin:\n - The v0.8.0 and v0.9.0 tag trees contain no disk file.\n - v0.9.0 src/config.ts (42105 bytes, gh exit 0) has 0 matches.\n - The installed 0.8.0 at ef5f1c8 has no showDiskUsage.\n\nMoving also brings the v0.9.0 security fixes #759, #754 and #732 and the v0.10.0 display sanitization. The user's 2026-10-03 directive ending the 7-day cooldown for clean upstream stable releases applies.", + "integration_notes": "DEFECTS TO FIX IN THE SAME CHANGE\n\n1. adoption/templates/claude.settings.template.json:327 runs the open project's dist/index.js when claude-hud is not in the cache.\n - Measured with the template's own command (node swapped for /bin/echo, cwd /tmp, no claude-hud cache dir): the exec target is 'dist/index.js', relative to the cwd. Every status refresh (refreshInterval 5) would run that project's file.\n - The defect already exists at 0.8.0. Upstream fixed the same pattern as Security in v0.9.0 (#759, CHANGELOG.md:61).\n - Reference fix: v0.10.0 scripts/statusline.mjs:35 and 41-44. It requires the entry file to exist and does nothing when no version is found.\n - The host-side move (removing or re-adding the v0.8.0 marketplace before 0.10.0 lands) opens exactly this window.\n - Add a guard before exec, for example: [ -n \"$$plugin_dir\" ] && [ -f \"$${plugin_dir}dist/index.js\" ] || exit 0;\n - Keep the $$ escaping, because the template is rendered with string.Template (tests/test_render_config.py:71-81).\n\n2. tests/test_adoption_docs_consistency.py:617 will fail unless updated.\n - Its 'bootstrap command' mutant replaces the literal \"claude-hud@v0.8.0 --scope user\".\n - Once bootstrap.md moves, the replace does nothing, so the mutant equals the real text and its expected error never appears.\n - Change the literal to v0.10.0 and keep a different version as the mutant.\n - Line 735 is a standalone checker string; changing it is optional.\n\n3. The input facts' release_notes left out #795 and #796. Record both in the receipt as known residuals, using the evidence given in the reason.\n\nMATCHING CHANGES\nThe base worktree /code/.worktrees/native-agent-stack/0c/base is at 56473e4, which equals origin/main and the remote main, and its tree is clean. The main checkout /code/native-agent-stack is at 5cfa2400e with uncommitted edits to several of these files (its template has the HUD lines at 270 and 289), so work from the base worktree only.\n\nNew identity: tag v0.10.0, commit 75683c6de1ac07f6bbef00d739001679dba0740c.\n\n- manifests/stack.json\n - :245 and :265 become .../releases/tag/v0.10.0; :246 becomes \"0.10.0\".\n - Append the new receipt id to evidence_ids and keep the 0.8.0 ids as history.\n- recipes/README.md:87\n - Set the row to 0.10.0 / 75683c6de1ac07f6bbef00d739001679dba0740c.\n - Change the install command to: claude plugin marketplace add jarrodwatts/claude-hud@v0.10.0 --scope user\n - Rewrite the setup note. In v0.10.0, /claude-hud:setup replaces any statusLine command containing 'claude-hud' without asking (scripts/setup.mjs:74-75 and 94; commands/setup.md:47).\n - It backs up settings.json first (setup.mjs:85-88).\n - It runs on 'command -v bun || command -v node' (commands/setup.md:24) instead of ${ECO_ROOT}/bin/node.\n - On template-managed hosts, skip setup (upstream says existing setups keep working, CHANGELOG.md:19) or adopt its launcher deliberately.\n- adoption/bootstrap.md:581 (install command), :596 (comment) and :598 (reviewed gitCommitSha) all move to the new tag and commit.\n- adoption/templates/claude.settings.template.json:346: ref becomes \"v0.10.0\".\n- docs/token-efficiency-stack.json:6660 and :6667 (the install and install_note fields).\n- blueprints/token-native-focus/saturation-audit.json:1678-1679 (repository and version), and the new receipt goes into functional_evidence.public_receipts. tests/test_stack_lifecycle.py:31-36 compares these with stack.json.\n- catalogs/landscape/upstream-snapshot.json, claude-hud entry (about lines 517-574):\n - selected_version and selected_repository_url (scripts/landscape.py:1375 requires them to equal stack.json)\n - check endpoint commits/v0.10.0\n - latest_stable_release: v0.10.0, 2026-10-01T19:11:24Z\n - latest_release_source: sha 75683c6, committed 2026-10-01T19:09:48Z\n - release_relationship\n - Refresh this entry with the snapshot's own method rather than by hand.\n- docs/community-native-practice.md:156\n - Its overturn condition (a tagged release after v0.8.0, re-review #734 and #719) is met.\n - #734 is carried (dist/transcript.js:262).\n - #719's local clock is replaced by Claude Code's prompt_cache field (dist/render/lines.js:34-51).\n - Both segments are off by default (dist/config.js:112 and 122).\n - Update the 'Stays the statusline at v0.8.0 (ef5f1c8)' wording, and replace ef5f1c8 in the :149 row's list of reviewed shas.\n- M14 (docs/decisions/2026-09-24-community-sweep.md:183 and 2026-09-28-community-sweep.md:197) needs a dated amendment, because it cites 0.8.0 dist/git.js:38-48.\n - v0.10.0 runs one 'git --no-optional-locks status --porcelain=v2 --branch -z' per render (dist/git.js:4 and 10).\n - It runs git diff --numstat only on a dirty tree with gitStatus.showFileStats on, which defaults to false (dist/git.js:30-32, dist/config.js:73, dist/index.js:43).\n - The idle run stays the check.\n- Receipt\n - Sanitize it: validate.py PRIVATE_CONTENT rejects /home/ paths, so put a placeholder in place of the state directory.\n - Choose a kind from RECEIPT_KINDS (upstream_provenance, or native_cli_e2e for the fixture render) and say the render shows formatting only.\n - Index it in manifests/evidence.json receipts[] and files[] under the hot-file protocol.\n - Record: the ids above; the sha256, noting it is first recorded here and not published upstream; the integrity results; the three manifest versions; both fixture renders; prerelease/draft/latest status; 0 advisories; #795 and #796; the user's 2026-10-03 cooldown directive (also cite it in the PR body).\n- Behaviour change to state (it does not break documented use): 0.8.0 defaulted to display.autocompactBuffer 'enabled' (host cache dist/config.js:112 and render/session-line.js:31). v0.10.0 shows Claude Code's used_percentage instead, so the default context percentage reads lower for the same session.\n- Follow-up: re-pin to the first tag that carries c0c4866 (#795).\n- Leave dated records as they are, including docs/stack.md:14 (classed as dated_record by tests/test_agentsview_qualification.py:142-145).\n- Already wrong before this change, and outside its scope: the freshness text at manifests/stack.json:268 points to manifests/landscape.json, which has no claude-hud entry. The same phrase appears in 27 rows.\n- Before committing, run python3 scripts/validate.py plus test_adoption_docs_consistency, test_stack_lifecycle, test_render_config and test_install_claude_profile, and the landscape check.\n\nVERIFICATION GAPS\n- No live interactive render at 0.10.0 was observed. That needs claude plugin marketplace add/install (a write to the host registry) and an interactive session. The 0.8.0 pin's own receipt (native-claude-hud-interactive-20260920) is a compatibility_attempt, so the evidence level is the same as before.\n- The \u2026/claude-hud/0.10.0/ cache directory name and the installed gitCommitSha are inferred, not observed. The bootstrap check (bootstrap.md:594-624) observes them on the host.\n- I did not confirm from client docs that Claude Code 2.1.284 supplies prompt_cache, cost and workspace.repo on the statusline's stdin. This only matters if showPromptCache, showCacheHitRate or showCost are enabled.\n- Upstream's npm test was not run.\n\nDISCLOSURE\nApart from network reads (gh api GET calls and two git ls-remote reads), my checks were read-only with three exceptions:\n- I created and immediately removed one temporary file: claude-hud-tar-d.tmp.txt.\n- I ran one 'git status --short' in the base worktree, which may have refreshed its index stat cache.\n- I made one search/code API call and discarded the result.\n\nToken tools: context-mode ctx_execute for hashing, the tar compare, the gh and ls-remote reads and the template simulation, all with small outputs; Read and Grep for known files. No compressors." + } + }, + "opentelemetry-collector-contrib": { + "judge": { + "component": "opentelemetry-collector-contrib", + "decision": "move", + "reason": "0.161.0 -> v0.162.0 meets all four criteria. I re-checked each one on 2026-10-03 using read-only checks: metadata, digests, buildinfo, release notes and upstream source.\n\n(1) Clean stable release.\n- contrib v0.162.0 (named v1.1.0/v0.162.0): prerelease=false, draft=false, published 2026-09-29T10:11:33Z, and it is releases/latest. Its tag object 0cea0d4f24220e2e54bf89b6ace0416cf6fdd593 points to commit ae8c507510f48f433ab47dd1c6b01a59d6c388b5.\n- collector-releases v0.162.0 (2026-09-29T12:34:07Z) and core v1.68.0/v0.162.0 are also non-prerelease and latest.\n- No v0.162.1 exists, and no published advisory names 0.162.0.\n- Issue searches since 2026-09-29 found no regression in a component this repo uses. The hits were unrelated:\n - contrib #51716 is about replace_all_patterns, which this repo does not use.\n - core #16067 is about service.telemetry.resource, which this repo does not use.\n - releases #1686 is a Docker multi-arch manifest problem (closed); the tarball is not affected.\n\n(2) Integrity.\n- The tarball's sha256 is fcc063749f730f8c21fe29f2d340ff174f5f1c5885bd3156fb6c985a3036fcc3. It equals the publisher sidecar and the API asset digest.\n- The size, 112285869, equals the API size.\n- The binary streamed from the tar has sha256 2425bdf5f89042cd71f56cf5a66b41681d340cbe14c0b1899bcfe2a3a685a064, the same as the extracted binary.\n- The sidecar holds only 64 hex characters, with no filename and no newline:\n - A direct `sha256sum --check ` exits 1 ('no properly formatted checksum lines found').\n - The recipe's printf form (README:18-19) prints OK and exits 0.\n- The Sigstore bundle was not checked (cosign is not installed). That is a gap; the 0.161.0 recipe had the same gap.\n\n(3) The binary reports the candidate version.\n- I did not run the binary, because my role forbids acceptance commands. The literal output 'otelcol-contrib version 0.162.0' (exit 0) comes from the coordinator's record.\n- A read-only parse of the binary's Go build info agrees with it:\n - main module github.com/open-telemetry/opentelemetry-collector-releases/contrib, built with go1.26.8.\n - Every contrib component this repo uses is at v0.162.0: prometheusexporter, transformprocessor, filelogreceiver, hostmetricsreceiver, httpcheckreceiver, groupbyattrsprocessor, deltatocumulativeprocessor, fileexporter, healthcheckextension, pkg/ottl and pkg/translator/prometheus.\n - Every core component it uses is at v0.162.0: otelcol, otlpreceiver, otlphttpexporter, batchprocessor and memorylimiterprocessor.\n\n(4) No breaking change affects documented use. I checked collector.yaml and the paper-trading fragment against the release bodies: 15 contrib end-user breaking entries and 2 core ones.\n- Only #50429 (PermissiveLabelSanitization) reaches a component this repo uses, the prometheus exporter. It only changes labels that start with a single '_', and no exported label can:\n - datapoint attributes are allowlisted (collector.yaml:257, plus client_scope);\n - resource attributes are allowlisted (:238);\n - host_metrics and http_check emit fixed standard attribute names;\n - git grep finds no key_ label and no '_'-leading selector in observability/.\n- #51242 removed the transform default-error-mode gate. That changes nothing here, because error_mode is set explicitly (collector.yaml:60,86,195; paper-trading yaml:57).\n- No --feature-gates flag appears anywhere in the repo.\n- ottl.set.allowNil was promoted to stable. It was already StageBeta and enabled by default in v0.161.0 (pkg/ottl/internal/metadata/generated_feature_gates.go@v0.161.0 L35-41; CHANGELOG v0.161.0 entry), so `set` handles nil the same way as before. Compare func_set.go at v0.161.0 and v0.162.0.\n- The config uses `batch`, not the renamed queue_batch.\n- Every other entry names a component that neither config uses.\n- Correction to the facts: their OTTL function list left out ToLowerCase (collector.yaml:103) and ContainsValue (:175-177). Both are documented at v0.162.0, and validate parsed them.\n\nOpen gaps (merge gates, not reasons to hold):\n- validate does not run the pipelines at runtime.\n- The repo's real-binary tests have not yet run on 0.162.0. Only otelcol-0.161.0 is installed at the documented tools path.\n- The merged paper-trading config has not been validated.", + "integration_notes": "All paths below are relative to the repo root. The base worktree is /code/.worktrees/native-agent-stack/0c/base at 56473e4b8, which equals origin/main there.\n\n1) COORDINATION BEFORE MERGE\n- The 2026-09-30 agreement put this bump 'after W', because the Collector is U7's join instrument.\n- tools/token-e2e/freeze_snapshot.py:101 freezes the ecosystem-otelcol unit.\n- None of the pin-move files are frozen repo items. The frozen repo items are SEALED_FILES, the carriers, the capability gate, WORKFLOW_FILES, TOOL_FILES (only skill_usage.py), plus repo.head and tree_clean of the frozen checkout.\n- Send the PR number to the Gate A owner (native-agent-stack-a7).\n- Until a7 confirms, do not update the frozen checkout and do not swap or restart NativeStack's ecosystem-otelcol.service.\n- If a7 objects, this move is gated: tell the user.\n\n2) HOST QUALIFICATION (merge gate)\n- Install 0.162.0 side by side with the README recipe at ~/.local/share/codex-ecosystem/tools/otelcol-0.162.0/. This is a new explicit path. Never overwrite tools/otelcol-0.161.0, which is the only otelcol directory today.\n- Then point these lines at 0.162.0:\n - tests/test_observability_tool_names.py:5,29,229\n - tests/test_observability_writer_identity.py:36,324\n - tests/test_observability_run_correlation.py:5,21,47,159\n - tests/test_sdk_usage_scope.py:5,28\n- Run the four modules. Record the runner output showing that the real-binary classes RAN rather than skipped:\n - tool_names:229\n - writer_identity:324\n - run_correlation:158 (needs Loki 3.7.8)\n - sdk_usage_scope:27\n A skip leaves CI green and does not count as qualification.\n- Validate the paper-trading fragment merged with the main config: `otelcol-contrib validate --config=observability/collector/collector.yaml --config=observability/paper-trading-live/collector-paper-trading.yaml`, with scratch ECOSYSTEM_OBSERVABILITY_DATA and HOME.\n- If any of these fails, stop and hold.\n\n3) CHANGE\n- manifests/stack.json:\n - :1091 -> 0.162.0.\n - :1117 freshness -> verified on 2026-10-03 (this also fixes the existing missing space in 'on2026-09-19').\n - Append the receipt id to evidence_ids.\n- blueprints/token-native-focus/saturation-audit.json:5558 -> 0.162.0, and add the receipt to functional_evidence.public_receipts (tests/test_stack_lifecycle.py:28-38 checks this).\n- catalogs/landscape/upstream-snapshot.json, entry at :2426-2483:\n - selected_version\n - the commits/v0.162.0 check\n - latest_stable_release: tag, url, published_at 2026-09-29T10:11:33Z\n - latest_release_source ref\n - tag sha, commit sha and committed_at 2026-09-29T09:11:04Z\n Refresh these with the snapshot's own method, as #446 and #587 did. scripts/landscape.py:1373-1381 requires selected_version to equal the stack row.\n- observability/collector/README.md install recipe:\n - :3 version\n - :4 release link\n - :5 archive SHA256 fcc063749f730f8c21fe29f2d340ff174f5f1c5885bd3156fb6c985a3036fcc3\n - :12 version=0.162.0\n Keep the printf check form at :18-19.\n- README :117 describes the binary the tests use: change it together with the test paths.\n- README :243 reports an observation made on 0.161.0: update it only from the new test run.\n- README links at :65-67, :189, :199, :210, :386 and :552: these anchors exist at v0.162.0, but re-point them only after rechecking each one.\n- observability/README.md:30.\n- The comment at observability/paper-trading-live/collector-paper-trading.yaml:1.\n- Run `scripts/new_host_grand_list.py --write` and keep the output if it changes.\n\n4) LEAVE AS THEY ARE\n- tests/test_observability_writer_identity_host.py:828. It must match evidence/artifacts/telemetry-writer-identity-20260926/host/apply.sh:52, which hardcodes 0.161.0, and :202 checks that the file exists. Changing only the test line breaks ApplyRollbackTests.\n- catalogs/landscape/foundation.json:4333 and :4514, and component-evidence-matrix.json.\n - Precedent: #580, #587, #542, #477 and #446 never touched foundation.json.\n - 14 winner pins already differ from stack.json.\n - build_ecosystem.py:773 lists pin drift and does not fail.\n- collector.yaml comment citations at :202, :221, :222, :225. They correctly cite the version where the behaviour was checked, and hosts install this file. If you do change them, re-verify at v0.162.0 and rerun the tests.\n- All dated records: evidence/, docs/decisions/, dated catalogs, observability/receipt.json:30-32, followup-receipt.json, the generated HTML pages and the blueprints/gap-wave2-20260923 scripts.\n\n5) RECEIPT\n- Create evidence/receipts/otelcol-contrib-0162-qualification-20261003.json, kind native_cli_e2e, in #587's shape. It should hold:\n - release identity, including the collector-releases tag commit f6159a775dad1e21433c49bd8450673dd13ed4d3;\n - the archive's sha256 and size, plus the sidecar asset digest sha256:1846777121f1fb59419bccd4dc53f5b623f0240c8b0a4772d48a1a430c5fedd8;\n - the check method;\n - the binary's sha256 2425bdf5... and size 407498914, built with go1.26.8;\n - the --version output;\n - validate exit 0, with negative controls exiting 1;\n - the test ran/skipped counts;\n - the breaking-change review, including that allowNil was already beta in 0.161.0 and #50429 is not reached.\n- Limitations to record:\n - Sigstore not verified;\n - no live-traffic run of the host service;\n - no SBOM or vulnerability scan;\n - the release was 4 days old, and the cooldown was waived.\n- Register the receipt in manifests/evidence.json receipts[] and files[].\n- Add a dated decision record docs/decisions/2026-10-03-otelcol-contrib-0-162-0.md. It should:\n - quote the user's 2026-10-03 directive: \"the 7day waiting period can end sooner as needed with clean upstream releases\";\n - list the alternatives: hold until 2026-10-06, or skip to 0.163.0;\n - state what would overturn it: a 0.162.x fix to a used component, an advisory naming 0.162.0, or a failed runtime test.\n\n6) PR\n- lane:shared, with the trading lane's ack for each head.\n- A '### SOTA sources' section.\n- The hot-file guard covering files[], receipts[] and convergence_records.\n- Checks: scripts/validate.py, the landscape check, test_stack_lifecycle, build_ecosystem --check, and the four modules.\n- One review round and one repair round.\n\n7) WATCH\n- In 0.162.0, http_check keeps connections alive by default (#49316), and so does health_check (#51175).\n- The OmniRoute 20128 serve preflight counts client sockets (lsof -ti :PORT). Go closes the connection when the server does, so the risk is low. Still, after any host swap, run `ss -Htnp '( dport = :20128 )'` before restarting 20128.\n- The config uses the otlphttp exporter, a deprecated alias of otlp_http; the rename came well before 0.162.0. It still works on 0.162.0, but could be removed later, so change it separately.\n- adoption/new-wsl-profile.json already selects 0.162.0 (as a .deb), so nothing there needs to change.\n\nHow I worked: Context Mode ctx_execute for the read-only digests, buildinfo parse, gh api calls and greps, so large outputs stayed out of context; Read for small files." + } + }, + "worktrunk": { + "judge": { + "component": "worktrunk", + "decision": "move", + "reason": "All four move conditions hold.\n\n(1) Clean stable release. v0.80.0 is tagged, not a prerelease, not a draft and immutable. It was published 2026-09-27T21:18:46Z, is the only release after v0.79.0, and was still releases/latest at 2026-10-03T05:13Z. There are 0 repository security advisories and 0 GitHub advisories for the crate. These flags come from the coordinator's gh api calls; I had no network and did not re-fetch them.\n\n(2) Integrity. I recomputed the archive hash read-only:\n- The sha256 is 532ce3ed5eecb1be274c925b5887f61671e2434a4ca2561b9a8ac9379dbba199 (8173256 bytes).\n- It matches three records: line 1 of worktrunk-x86_64-unknown-linux-musl.tar.xz.sha256, line 6 of sha256.sum, and the API digest at /code/.worktrees/native-agent-stack/0c/base/adoption/new-wsl-profile.json:815.\n- The extracted wt (sha256 1d2e89a512aa530613064aaadb92f78ad096baa6eaf44c46e4c4577302ed0e1c) is byte-identical to the archive member.\n- LICENSE (sha256 eda019ab...) equals the 0.79.0 license_sha256 at /code/.worktrees/native-agent-stack/0c/base/blueprints/gap-resolution-20260922/worktrunk-0-79-0-requalify/pins.json:37.\n- The archive holds only README.md, wt, git-wt, CHANGELOG.md and LICENSE.\n- gh release verify and verify-asset (exit 0) are coordinator-reported.\n\n(3) Version. The coordinator ran wt --version and got 'wt v0.80.0', exit 0. I did not run the binary, but its strings contain 'worktrunk/0.80.0' and do not contain '0.79.0'.\n\n(4) Breaking changes. The 0.80.0 section of CHANGELOG.md has three breaking items, at :17, :29 and :45:\n- git commit hooks now run on a detached HEAD in wt merge and wt step squash.\n- The branch field of wt config state logs --format=json changed.\n- The Rust library API changed.\n\nNone touches how this repository uses worktrunk:\n- wt list: /code/.worktrees/native-agent-stack/0c/base/manifests/stack.json:1067-1069.\n- wt list --format json, wt switch --create --base --no-cd --no-hooks --format json, and wt remove --foreground --no-hooks --format json, with the global --config and -C: /code/.worktrees/native-agent-stack/0c/base/recipes/README.md:115 and /code/.worktrees/native-agent-stack/0c/base/recipes/native-upgrades-20260921.md:53-55.\n- wt -C step copy-ignored --require-include: /code/.worktrees/native-agent-stack/0c/base/recipes/README.md:381 and /code/.worktrees/native-agent-stack/0c/base/.worktreeinclude:3.\n- The installer command with wt config shell install, which has not been run: new-wsl-profile.json:821.\n- The repository has no Cargo.toml, so it does not use the library API.\n\nThe 0.80.0 help text (switch-help.txt:17-87) still lists --create, --base, --no-cd, --no-hooks, --format text|json, -C and --config. The binary still contains copy-ignored's --require-include ('Require .worktreeinclude to copy anything').\n\nCorrection to the supplied facts: the claim that only recipes/README.md:115 and docs/gap-crosswalk use worktrunk commands is incomplete. recipes/README.md:381 and .worktreeinclude:3 also document wt step copy-ignored --require-include. No breaking item covers it (0.80.0 only fixes non-UTF-8 file names there), so the decision does not change.\n\nThe repo-local worktrunk.default-branch write by wt list is not new in 0.80.0. The 0.79.0 qualification repo has the same key at /.local/share/codex-ecosystem/tools/worktrunk-0.79.0/qualification/.git/config:6-7, written during that run's full lifecycle (not necessarily by wt list).\n\nCooldown: the release was 5 d 7 h 54 min old at the coordinator's check, inside the 7-day wait. The user's 2026-10-03 directive lets that wait end early for clean upstream releases.\n\nVerification gaps (these are not defects):\n- No one searched the upstream issues for 0.80.0 regressions. The directive's 'no known regression' clause depends on that search.\n- The create/remove/dirty-refusal lifecycle has not been re-run on 0.80.0, although #4228, #4252 and #4302 changed wt remove.\n- wt list --format json and copy-ignored were never run on 0.80.0.\n- packslip.sigstore.json was not verified.\n- cargo test has not been run.\n- I did not re-fetch the prerelease or attestation facts myself.", + "integration_notes": "0. Base. Find every site by its content on a freshly fetched origin/main. The line numbers below are from /code/.worktrees/native-agent-stack/0c/base at 56473e4b840f0e6940c031801d866e7e9bf29baf, which equals the local origin/main (2026-10-02T22:35Z). I did not fetch. In the primary checkout /code/native-agent-stack the stack.json lines sit 3 lower.\n\n1. Must change.\n\na) /code/.worktrees/native-agent-stack/0c/base/manifests/stack.json, worktrunk row:\n- version 0.80.0 (:1063).\n- upstream_sources: the v0.80.0 tag URL (:1082).\n- source_pin b49ca7eea9b03145791a5b94eccaf9c59412ed37 (:1084).\n- Append the new receipt id to evidence_ids (:1070-1079).\n- freshness (:1085) says 'Installed tested pin', which becomes false on this host. The host has only /.local/share/codex-ecosystem/tools/worktrunk-0.79.0 and no ~/.local/bin/wt. Either install 0.80.0 into a versioned prefix next to it and switch only an owned launcher, keeping 0.79.0 for rollback (/code/.worktrees/native-agent-stack/0c/base/recipes/native-upgrades-20260921.md:40-43, 81-86), or reword freshness to 'tested in a scratch prefix, not installed'.\n\nb) /code/.worktrees/native-agent-stack/0c/base/catalogs/landscape/upstream-snapshot.json:2353-2425:\n- Refresh the block with its own gh api method; never hand-type stdout hashes.\n- selected_version and selected_source_pin are enforced against stack.json by /code/.worktrees/native-agent-stack/0c/base/scripts/landscape.py:1375-1378.\n- Re-run the four checks: repos/max-sixty/worktrunk, releases/latest, commits/b49ca7ee..., commits/v0.80.0.\n- Also refresh: pushed_at; latest_stable_release (v0.80.0, 2026-09-27T21:18:46Z, target b49ca7ee..., prerelease false, draft false); selected_pin_source and latest_release_source (committed_at 2026-09-27T20:55:48Z); release_relationship; selected_pin_matches_latest_release_commit.\n\nc) /code/.worktrees/native-agent-stack/0c/base/blueprints/token-native-focus/saturation-audit.json, worktrunk row:\n- version (:8953) and source_pin (:9031).\n- Add {id, path, kind: native_cli_e2e} to functional_evidence.public_receipts (:8968-9009). /code/.worktrees/native-agent-stack/0c/base/tests/test_stack_lifecycle.py:31-37 requires the version to equal stack.json, the receipt-id set to equal stack evidence_ids, the paths to equal those in evidence.json, and recipe_document to equal the adoption recipe_map.\n- Re-scope lifecycle_evidence (:9024-9028) and lifecycle_stages install/use/cleanup (:9033-9068). Today they describe the 0.79.0 upgrade of September 21 and the disposable run of 2026-09-20; they must not read as 0.80.0 acceptance. install stays observed_installed only if 0.80.0 is actually installed on the host.\n\nd) /code/.worktrees/native-agent-stack/0c/base/recipes/README.md:115:\n- Set the version cell and the release link to v0.80.0.\n- Keep the 'retained disposable lifecycle verified...' sentence attributed to 0.79.0 unless the lifecycle is re-run (step 2).\n\ne) /code/.worktrees/native-agent-stack/0c/base/recipes/native-upgrades-20260921.md:14. This is a dated recipe ('qualified September 21'), and /code/.worktrees/native-agent-stack/0c/base/adoption/manifest.json:189 maps worktrunk to it.\n- Either add a dated 0.80.0 note that says exactly what ran and keep 0.79.0's acceptance cell, or create a new dated recipe and repoint recipe_map and the audit row's recipe_document together.\n- The rollback sentence (:82-84) names 0.78.0. After the move the rollback target is 0.79.0.\n\n2. Recommended before any lifecycle claim. Re-run the disposable create/list/remove and dirty-refusal lifecycle against the scratch binary at wt.\n- Use the pattern in /code/.worktrees/native-agent-stack/0c/base/blueprints/gap-resolution-20260922/worktrunk-0-79-0-requalify/run.py and the checks in its plan.json.\n- Use isolated --config and -C, in a scratch repo only.\n- Reason: wt remove changed in #4228, #4252 and #4302.\n\n3. Leave as dated records; do not hand-edit generated files.\n- Files: catalogs/landscape/foundation.json pins, the component-evidence matrix, the new-host grand list (.json and .md), the verdict block in docs/grand-catalog-handbook.md, and catalogs/foundation/new-wsl-architecture-20261001.json.\n- Precedents:\n - Next.js is 16.3.8 in stack.json while /code/.worktrees/native-agent-stack/0c/base/catalogs/landscape/foundation.json:3751 keeps 16.3.5.\n - The rtk-050 limitation at /code/.worktrees/native-agent-stack/0c/base/manifests/evidence.json:3106.\n - /code/.worktrees/native-agent-stack/0c/base/scripts/build_ecosystem.py:1297 passes and lists architecture_pin_drift.\n- Copy the rtk-050 limitation into the receipt: the ledger keeps winner pin 0.79.0, so host receipts at 0.80.0 do not bind (host_receipts pin_matches) until a new verdict wave.\n- Do not rewrite the dated decision rows at /code/.worktrees/native-agent-stack/0c/base/docs/decisions/2026-10-02-github-automation-practice.md:83 and /code/.worktrees/native-agent-stack/0c/base/docs/decisions/2026-10-01-definitive-sota-wsl-program.md:292. Cite them instead, and notify the workers owner, whom :83 assigns this pin.\n\n4. Receipt. Create a new native_cli_e2e receipt with component_ids [\"worktrunk\"]. Its id, kind, component_ids, claim and limitations must be identical in the payload and in the manifests/evidence.json receipts[] entry (/code/.worktrees/native-agent-stack/0c/base/scripts/validate.py:430-454).\n\nFacts to record:\n- Release: v0.80.0 is a lightweight tag pointing at b49ca7ee..., 'Release v0.80.0 (#4306)', committed 2026-09-27T20:55:48Z. Published 2026-09-27T21:18:46Z; prerelease false, draft false, immutable true; still latest at 2026-10-03T05:13:31Z.\n- Archive: 8173256 bytes, sha256 532ce3ed5eecb1be274c925b5887f61671e2434a4ca2561b9a8ac9379dbba199.\n- Checksum files: the .sha256 file hashes to f66abc185f40872b17e84fa6d1500130d4986cd925f55c09f0078f881471a662, and sha256.sum to bfd8568d6e92648e4361b4117db1944877922e96382400e28625d8b3fd79ce8c. Both sha256sum -c checks passed. gh release verify and verify-asset exited 0 (gh 2.101.0).\n- Binary hashes: wt 1d2e89a512aa530613064aaadb92f78ad096baa6eaf44c46e4c4577302ed0e1c; git-wt ab08cc32151a4d1cd3e9c3d829b8ce6ca24f6bb156cbc0b05abf895f1f07a352; LICENSE eda019ab..., the same as 0.79.0.\n- Version: wt --version and git-wt --version both print 'wt v0.80.0'.\n- Smoke: wt list exited 0 in a one-commit synthetic repo with a hermetic environment.\n- wt list writes worktrunk.default-branch and .git/wt/cache; 0.79.0 did the same. Never run it in a shared checkout.\n- The three breaking items, and why each misses the documented use. That use includes copy-ignored at recipes/README.md:381.\n- Security: none found.\n\nLimitations to record:\n- The smoke is a local integration check on a synthetic fixture, not upstream acceptance; cargo test has not been run.\n- The lifecycle (unless step 2 is done), wt list --format json, copy-ignored, shell integration and --full were not run.\n- The packslip was not verified.\n- Linux x86_64 only.\n- The host install was not switched (unless done in 1a).\n- No regression search yet. Run e.g. gh issue list --repo max-sixty/worktrunk --state all --search 0.80 before the PR calls the release clean.\n\n5. PR. stack.json and evidence.json are shared hot files, so:\n- Label lane:shared and get the trading lane's acknowledgement per head.\n- Follow the hot-file protocol: register the sha256 of every changed file in files[] and add the receipts[] entry.\n- Run python3 scripts/validate.py; landscape, build_ecosystem, component_matrix and new_host_grand_list --check; saturation_ledger --check --base origin/main; and tests/test_stack_lifecycle.py and tests/test_landscape.py.\n- The PR body needs '## SOTA sources' (the release URL, the tag commit, CHANGELOG 0.80.0 lines 3-47) and must cite the user's waiver of 2026-10-03, about 03:50Z: 'the 7day waiting period can end sooner as needed with clean upstream releases'.\n\nToken tools: context-mode ctx_execute, used twice and read-only: once for archive, member and LICENSE hashes plus the tar listing, once for git ref reads." + } + }, + "mcporter": { + "judge": { + "component": "mcporter", + "decision": "move", + "reason": "All four release-level criteria hold on facts re-checked in this review. (1) Clean stable release: the GitHub release v0.14.2 has draft false and prerelease false, was published 2026-10-01T18:24:07Z and is releases/latest. Its tag resolves to aa0f55f9bffcde9d2070c86145f37d4dd3525f6c. npm dist-tags.latest is 0.14.2, not deprecated. The repository has 0 published advisories, and the only issue opened since 2026-10-01 (#408) is a feature request. (2) Integrity, recomputed here: the npm tarball and the release asset are byte-identical (cmp exit 0, 3,585,823 bytes). Their sha256 f5baa5a02be64d5d75722c5739975eee79d393eb2761496f70a53474688f8f6b equals the GitHub asset digest and checksums.txt (sha256sum -c OK). The sha512 and sha1 equal npm dist.integrity (sha512-3ajjKzPL...HJQ==) and dist.shasum (ee7d91e7...). The SLSA attestation and npm audit signatures results are the worker's; this review did not re-run them. (3) Version: the installed package.json is 0.14.2, and --version prints that field (dist/cli/help-output.js:196-199). The worker's run exited 0 with '0.14.2'; this review did not re-execute it. (4) No breaking change reaches documented use. In src, compare v0.14.1...v0.14.2 changes only src/cli/help-output.ts and src/daemon/process-retirement.ts. The new retry is Windows-only (process-retirement.js:113-133), and POSIX still runs ps from PATH (:166). The daemon protocol stays 3 (dist/daemon/protocol.js:2). The OAuth-precedence change and the bundled client patch act only on an OAuth session, which --no-oauth never creates (dist/runtime/http-transport.js:159). The server 2.3.0 / core 2.2.0 mismatch behind `npm ls --all` exit 1 is confined to `mcporter serve`: only dist/serve.js imports the server, through the dynamic import at dist/cli.js:159, and no current recipe or stack row uses serve. Installed-package paths are under mcporter/. Condition: the pin lands only with a passing functional canary on this host, recorded in a qualification receipt. The repository's rule requires that (docs/decisions/2026-09-25-workstation-sota-refresh.md:23-25), and so does its mcporter overturn condition at :151-154, because 0.14.2 changes runtime and daemon code (bundled patched client 2.2.0, process-retirement.ts). The user's 2026-10-03 cooldown directive also keeps host qualification and review. The worker's --version, --help and import checks do not count as acceptance (scripts/new_wsl_profile.py:176-177).", + "integration_notes": "Repository paths are relative to /code/.worktrees/native-agent-stack/0c/base at 56473e4b840f0e6940c031801d866e7e9bf29baf, which matched origin/main in git ls-remote at 2026-10-03T05:26Z. The main checkout /code/native-agent-stack is stale and dirty, so re-grep line numbers on the branch base after any rebase.\n\n1. LANDING GATE (do this first)\n- Land the pin only after a functional canary of 0.14.2 passes on the NativeStack WSL2 host and is recorded in the new receipt.\n- Install from the verified tarball into a fresh prefix (bootstrap form: tools/mcporter-0.14.2). Node must be >=24, and ps must be on the PATH of whatever starts the daemon.\n- Acceptable canary shapes:\n (a) An isolated MCPORTER_DAEMON_DIR with a scratch config, covering list and call with --no-oauth, a keep-alive call, `daemon status` showing protocolVersion 3, and `daemon stop`/restart. Match it against 0.14.1 where practical (the 0.14.1 receipt's 37-step shape).\n (b) At minimum, ad-hoc `mcporter call --stdio --name N --server N --tool T ... --no-oauth` calls, which need no daemon.\n- The row's documented smoke (`mcporter --config \"${MCPORTER_CONFIG}\" list socraticode --brief --no-oauth`) against the host config proves nothing about 0.14.2 while a 0.14.1 daemon runs. dist/daemon/client.js:169-186 accepts any daemon with protocolVersion 3, so the old daemon would answer the new client.\n- Before any host-config smoke or switch:\n - run `mcporter daemon status --json`;\n - wait for activeCalls 0 on every server;\n - run `mcporter daemon stop` (recipes/README.md:100);\n - check the new daemon's process command line to confirm it runs from the 0.14.2 prefix. The 2026-09-26 correction at decision :156-169 records what happens when this is skipped.\n- If the canary cannot run or fails, return hold to the coordinator. Do not land a pin without acceptance.\n- Host state, read-only at 2026-10-03T05:26Z: codex-ecosystem bin/mcporter resolves to tools/mcporter-0.14.1, tools/mcporter-0.13.13 is present for rollback, and the host has no 0.14.2 prefix. If the host is not switched, the stack.json:649 freshness text must keep saying 0.14.1 serves bin/mcporter.\n\n2. LOCKSTEP SITES ENFORCED BY CODE\n- (a) manifests/stack.json:629, adoption/pins-linux-x86_64.json:132 and scripts/native_token_ci.py:60 (PINS) all become 0.14.2. native_token_ci.py:1740-1745 fails the run on any mismatch.\n- (b) stack.json:628 and :646 become https://github.com/openclaw/mcporter/tree/v0.14.2.\n - blueprints/token-native-focus/saturation-audit.json:4983-4984 must carry the same repository and version (tests/test_stack_lifecycle.py:31-32).\n - catalogs/landscape/upstream-snapshot.json:1374-1375 (selected_repository_url, selected_version) must match too, with selected_source_pin left null (scripts/landscape.py:1375-1381).\n- (c) Register the new receipt id in three places, all with the same path (test_stack_lifecycle.py:33-36):\n - stack.json evidence_ids (:636-644);\n - the audit row's functional_evidence.public_receipts (:4999-5035), with the same id, path and kind;\n - manifests/evidence.json receipts[].\n- (d) tests/test_adoption_bootstrap_macos.py:261 becomes (\"0.13.13\", \"0.14.2\", \"evidence/receipts/.json\"), and that file must exist (:278).\n- (e) pins-linux url and sha256:\n - :134 url becomes https://registry.npmjs.org/mcporter/-/mcporter-0.14.2.tgz.\n - :135 sha256 becomes f5baa5a02be64d5d75722c5739975eee79d393eb2761496f70a53474688f8f6b.\n - adoption/bootstrap-linux.sh:397-410 fetches exactly that url, verifies that sha256 and installs the file.\n- (f) Rewrite the :136 install_note to state:\n - dist.integrity sha512-3ajjKzPLe/39hN582XqMuOw3S9vHQfLpSBq72zVakT03xso3GDXHcht/eVLu/l2MDqulIOtLevnTKreUxymHJQ==;\n - the sha256 equals the v0.14.2 release asset digest and checksums.txt (checked 2026-10-03);\n - npm audit signatures and SLSA provenance: release.yml at refs/tags/v0.14.2, commit aa0f55f9bffcde9d2070c86145f37d4dd3525f6c (worker-reported);\n - the install form `npm install --global --prefix tools/mcporter-0.14.2 mcporter@0.14.2`;\n - Node >=24, and ps on the daemon launcher's PATH (unchanged on POSIX);\n - the tarball now bundles the patched @modelcontextprotocol/client 2.2.0 and its 12 transitive packages, so the sha256 covers that client, while @modelcontextprotocol/server and the other dependency ranges still resolve at install time;\n - the one-host scope sentence.\n\n3. OTHER CURRENT SITES\n- recipes/README.md:100:\n - change the pin cell and the install command;\n - add the \"replaced on the host\" sentence only if the host is switched;\n - \"daemon protocol 3\" stays true;\n - the v0.14.1 citations (ephemeral-flags.ts L97-105, call-arguments.ts L164-192) stay accurate because the compare leaves both files unchanged. Keep them, or move them to v0.14.2 at the same lines.\n- tools/token-report/README.md:34-35: prefix and version.\n- docs/token-efficiency-stack.json: row-level fields only, upstream_commands.install[0] (:5754) and install_note (:5761).\n- adoption/pins-macos-arm64.json:5: the prose \"0.14.1 there\" becomes \"0.14.2 there\". The Mac pin stays 0.13.13.\n- stack.json:649 freshness text.\n- adoption/bootstrap.md:166: add that pins-linux-x86_64.json changed after `v2026.09.26.2` (adoption/manifest.json:9) in its mcporter entry, 0.14.1 to 0.14.2 (URL, hash and note), so a host at that tag installs 0.14.1.\n- Check adoption/platforms/linux-wsl2.md for a matching note.\n- Dry-run tests/test_adoption_docs_consistency.py.\n\n4. DO NOT EDIT\n- docs/token-efficiency-stack.json card fields (:5792 recorded_pin, :5800, :5802 and the rest of the 2026-09-27 card). The file's pin_policy renders a drift note by design (socraticode and ccusage precedent), so :5800's \"No published 0.14.2\" stays a dated statement.\n- adoption/new-wsl-profile.json/.md, and therefore docs/new-wsl-handbook.*. It is a dated source-review contract whose refs point at 93e0916c and whose pin is a floor (scripts/new_wsl_profile.py:28-30). No test ties it to pins-linux, so moving it needs its own re-review.\n- Dated records:\n - docs/decisions/*\n - catalogs/sota-convergence/*\n - catalogs/foundation/new-wsl-architecture-20261001.json\n - tools/sota-convergence/landscape-sweep/seeds-20260926.json\n - evidence/**, including the 0.14.1 receipt\n - adoption/bootstrap.md:160-162\n - adoption/platforms/linux-wsl2.md:114\n- Tag-pinned code comments:\n - tests/test_token_measurement.py:956,1383\n - tests/test_command_position_oracle.py:51\n - examples/claude-native/workflows/child-usage.mjs:909\n - examples/claude-native/workflows/test-child-usage.mjs:693\n - examples/claude-native/workflows/README.md:503,518,540\n - scripts/native_token_ci.py:1256,1298\n - docs/native-token-ci.md:20\n- catalogs/landscape/new-host-grand-list.json:1185 and docs/new-host-grand-list.md:78 are generated. Regenerate them; never hand-edit.\n\n5. REGENERATE AND CHECK\n- Run:\n - `python3 scripts/new_host_grand_list.py --write`\n - `python3 scripts/component_matrix.py --write`\n - `python3 scripts/saturation_ledger.py --check --base origin/main`\n - `python3 scripts/build_ecosystem.py --check`\n - `python3 scripts/validate.py`\n - the unit tests named above.\n- No script writes upstream-snapshot.json. Refresh its entry the way #446 did:\n - gh api checks on repos/openclaw/mcporter, releases/latest and commits/v0.14.2, each with started/ended timestamps, exit code and stdout sha256;\n - latest_stable_release: v0.14.2, published 2026-10-01T18:24:07Z, target_commitish main, prerelease and draft false;\n - latest_release_source: ref v0.14.2, sha aa0f55f9bffcde9d2070c86145f37d4dd3525f6c.\n- The PR triggers .github/workflows/native-token-e2e.yml. It installs the pin fresh, runs `npm list --global --prefix

--depth=0 --json`, which must exit 0 (native_token_ci.py:754-755), checks --version, and makes real stdio calls.\n - It is not one of the 8 required checks (.github/main-ruleset.json:35-42), but a red run is still a failed check.\n - Record its result as hosted local-integration evidence, not as host acceptance.\n\n6. RECEIPT\n- File: evidence/receipts/mcporter-0142-qualification-.json, kind native_cli_e2e, component_ids [mcporter].\n- Limit the claim to what actually ran.\n- catalog_revision must be a published main commit.\n- Cite the user's 2026-10-03 cooldown directive. The PR body's \"## SOTA sources\" section should also cite the release, compare v0.14.1...v0.14.2 and https://registry.npmjs.org/-/npm/v1/attestations/mcporter@0.14.2.\n- Sanitize scratch paths (no /home/), and quote no host config.\n- Limitations to record:\n 1. The fresh-install dependency tree is inconsistent.\n - The bundled @modelcontextprotocol/core 2.2.0 sits beside the resolved @modelcontextprotocol/server 2.3.0, which requires core 2.3.0 exactly.\n - npm planned core@2.3.0 (install debug log line 169, placeDep), but reify kept the bundled 2.2.0, and `npm ls --global --all` exits 1 (ELSPROBLEMS).\n - Only `mcporter serve` is affected, and serve was not functionally tested. SDK 2.3.0 was published 2026-10-02, after mcporter 0.14.2.\n 2. fast-uri 3.1.0 is still bundled (client dist/ajvProvider-97rDpkRx.mjs:2743,3023). Its advisories were not re-verified, and the \"fast-uri 3.1.8 or later\" overturn condition is not met.\n 3. OAuth was never exercised.\n - The precedence change and the client patch cannot act under --no-oauth. The patch changes OAuth 401 handling and records the presented bearer token on 401 in the HTTP and SSE transports (read at hunk level at v0.14.2).\n - The upstream client changes from 2.1.0 to 2.2.0 were not reviewed beyond the canary.\n 4. The Windows-only retry was not exercised.\n 5. Mixed-version daemon operation is not qualified.\n 6. No upstream test suite was run. The evidence is from one host and is not macOS evidence; the Mac pin and the landscape winner stay 0.13.13 (scripts/host_receipts.py pin_matches).\n- Verification gaps left open by this review:\n - --version was not re-executed (worker run plus static source).\n - The SLSA attestation and npm audit signatures are worker-reported. The recomputed sha512 prefix dda8e32b matches the attestation subject the worker quoted.\n - The exit code of `npm list --depth=0` was not measured; the worker ran only --all.\n\n7. HOT FILES AND MERGE\n- Label the PR lane:shared and get the trading lane's ack for each head.\n- Notify c5 before merging anything that touches manifests/evidence.json.\n- Open PRs overlap this change:\n - #626: pins-linux and the same MAC_PIN_LAGS_LINUX tuple, likely also bootstrap.md:166;\n - #637: stack.json, upstream-snapshot and saturation-audit;\n - #581 and #561.\n- Merge after them or replay onto the new main, carrying evidence.json files[], receipts[] and convergence_records.\n- Check for a release-window hold first.\n\nReview lanes: Read and Grep for known files; ctx_execute for hashes, read-only gh and npm registry queries and JSON extraction; ctx_search once over the indexed PR bodies." + } + }, + "syft": { + "judge": { + "component": "syft", + "decision": "move", + "reason": "Move from 1.52.0 to v1.54.0. Every move condition holds on facts I re-checked against original sources (read from base worktree 56473e4b, which equals origin/main at the 05:22Z fetch).\n\n(1) Clean stable release. A gh api read at 2026-10-03T05:29Z returned prerelease=false, draft=false and immutable=true for v1.54.0, and releases/latest also returns v1.54.0. The tag resolves to commit cc326e45a6213360266dda4b30cc68095946d676. Of the three published anchore/syft advisories, the newest (GHSA-mw2c-m758-9v5q) is patched in v1.52.0 and the other two earlier. Seven issues and PRs have been opened since publication. None reports a regression in v1.54.0: #5371 (gradle.lockfile comment lines) and #5357/#5373 (Python dependency edges between same-name packages) are open bugs not attributed to this release. #5357 was filed on 09-30, before the release.\n\n(2) Integrity re-verified locally:\n- The tarball sha256 54a87372498168b2d033e876fd41fa4e8035b872699e525a57046e1f2f09c860 equals line 8 of syft_1.54.0_checksums.txt and the GitHub API asset digest.\n- `sha256sum --check --ignore-missing` printed OK (exit 0).\n- The checksums file's sha256 e423344e663d7d14db62e51ddd31e4a5012818ed69e78358391dc487483f839c equals its API digest.\n- The extracted binary (sha256 d46a9a61a6ae3d367f0a03748c5e9c59253e586c4388ab26ddcacebc2efa0d92) is byte-identical to the archive member.\n\nThis meets the repository's documented install standard of checksum list plus asset digest (blueprints/us-equities/supply-chain/README.md:36-38). The signature is not verified.\n\n(3) Version. The coordinator's `syft version -o json` output reports 1.54.0, gitCommit cc326e45 and gitDescription v1.54.0. Three independent artifacts agree: the descriptor the binary wrote into smoke-output/runtime.syft.json (syft 1.54.0, schema 16.1.11), the CycloneDX tool entry (syft 1.54.0), and the commit and tag strings embedded in the binary. I did not rerun the binary.\n\n(4) No breaking change affects the documented use:\n- I re-derived the smoke results from the output files. The manifests/stack.json:1406 scan, run in the README.md:112-126 bubblewrap harness, reproduces the 1.52.0 acceptance in blueprints/us-equities/supply-chain/receipt.json:\n - 36/36 identical name/version/PURL tuples, 166 files, 177 relationships\n - the same cataloger\n - CycloneDX 1.7 with 36 library and 87 file components\n - license coverage 34/36, SPDX expressions 31/36\n- CHANGELOG.md has only Added Features, Bug Fixes and Dependencies sections.\n- The tarball and checksums asset names that the CI URLs build from the version are unchanged.\n- Nothing in the repository reads the syft-json schemaVersion (16.1.10 to 16.1.11).\n\nThe one upstream change that touches the repository is signing: v1.54.0 publishes syft_1.54.0_checksums.txt.sigstore.json instead of .sig/.pem. That breaks only the dated cosign recipe (blueprints/gap-wave2-20260923/us-equities__security-supply-chain/verify_signatures.sh:31-46, hardcoded to 1.52.0). The install and CI paths check only the checksum and digest (README.md:36-38, .github/workflows/supply-chain.yml:86, .github/workflows/publish-catalog.yml:107-111), so this does not block the move. It does require the matching receipt and README changes in the integration notes. Under the user's 2026-10-03 waiver, the cooldown does not apply.", + "integration_notes": "A. CHECKED SITES: change these together\n1. manifests/stack.json\n - :1400 version -> \"1.54.0\"\n - :1403 source_pin -> cc326e45a6213360266dda4b30cc68095946d676\n - :1416 -> https://github.com/anchore/syft/releases/tag/v1.54.0\n - :1408-1413 append the new receipt id to evidence_ids\n - :1418 update the freshness text with the new date and scope\n2. blueprints/token-native-focus/saturation-audit.json\n - :8407 version and :8473 source_pin\n - add the new receipt to this row's functional_evidence.public_receipts\n - tests/test_stack_lifecycle.py:31-36 requires the version to equal stack.json, the public_receipts ids to equal evidence_ids, and receipt paths to match manifests/evidence.json receipts[].\n3. catalogs/landscape/upstream-snapshot.json, syft entry (lines 3131-3203)\n - Fields: selected_version, selected_source_pin, the four checks, latest_stable_release (v1.54.0, 2026-10-01T20:54:29Z), selected_pin_source, latest_release_source and the derived fields (release_relationship, selected_pin_matches_latest_release_commit).\n - scripts/landscape.py:1375-1378 enforces equality with stack.json.\n - I found no writer for this file: a grep of scripts/ and tools/ for stdout_sha256, release_relationship, selected_pin_matches_latest_release_commit and freshness_snapshot found none.\n - Repeat the method of earlier pin moves (798ac4453 #587, 85543efe5 #580, 3058b2379 #446) and record the real gh api stdout sha256 values and timestamps. Do not type check hashes by hand.\n4. Workflows\n - .github/workflows/supply-chain.yml: :78 '1.54.0'; :79 comment (v1.54.0 checksums URL, new fetch date); :80 54a87372498168b2d033e876fd41fa4e8035b872699e525a57046e1f2f09c860; :130 \"syft_version\": \"1.54.0\".\n - .github/workflows/catalog-freshness.yml:119 -> \"syft|anchore/syft|1.54.0\". tests/test_catalog_freshness_pins.py:63-68 ties it to supply-chain.yml:78.\n - .github/workflows/publish-catalog.yml: :99, :102, :105, :107 -> 1.54.0; :111 -> the new sha; :110 date comment.\n5. catalogs/foundation/automation.json:165-167 (version, archive_sha256, checksums URL). manifests/landscape.json:358-361 (v1.54.0, 2026-10-01T20:54:29Z, cc326e45..., release URL).\n6. New qualification receipt (kind native_cli_e2e, component_ids [\"syft\"])\n - Index it in manifests/evidence.json receipts[] and its file in files[].\n - Record:\n - tag, commit cc326e45, published_at, prerelease false, immutable true\n - archive sha 54a87372..., checksums sha e423344e..., binary sha d46a9a61a6ae3d367f0a03748c5e9c59253e586c4388ab26ddcacebc2efa0d92\n - the coordinator's version JSON (go1.26.8, schemaVersion 16.1.11, buildDate 2026-10-01T20:48:12Z)\n - the smoke command and results\n - the user's 2026-10-03 cooldown waiver\n - Set signature_verified false. The bundle (API digest sha256:6a0dbf94cb89e2fb157f022bed752b3ceb5827cb557a4a4cfb6af67f98b99811) was not verified because cosign is not installed. So this receipt does not meet the overturn condition at catalogs/landscape/us-equities.json:4689.\n - Limitations to record:\n - No SDK source fingerprint was taken. The identical 36 tuples are the only evidence that the /.local/share/codex-ecosystem/sdk-py313 prefix is unchanged since 09-19.\n - The spdx-json output was not tested.\n - The host binary was not changed.\n\nB. DO NOT EDIT\n- Two landscape winner pins: catalogs/landscape/foundation.json /layers/11/winners/1 pin \"1.52.0\" and catalogs/landscape/us-equities.json /layers/11/winners/1 pin \"v1.52.0\".\n - scripts/landscape.py:1001-1003 requires them to equal the dated catalogs/sota-convergence/manifest-20260922.json (the trading_taxonomy source at catalogs/landscape/manifest.json:17), which records 1.52.0.\n - Editing them fails validate.yml:111. These are tier-(a) sites in the supplied pin-site list.\n - scripts/build_ecosystem.py --check still passes and lists the drift under architecture_pin_drift (build_ecosystem.py:1300-1303). It has no committed output to regenerate.\n- Generated files: regenerate them, never hand-edit. Values that come from dated manifests may stay at 1.52.0.\n - catalogs/landscape/component-evidence-matrix.json (scripts/component_matrix.py --write)\n - catalogs/landscape/new-host-grand-list.json and docs/new-host-grand-list.md (scripts/new_host_grand_list.py --write)\n - docs/new-wsl-handbook.json and .md (scripts/build_new_wsl_handbook.py)\n- Dated records stay as they are:\n - blueprints/us-equities/supply-chain/receipt.json (its signature_verified true belongs to 1.52.0)\n - docs/decisions/2026-10-01-trading-layer-verdicts.md:73\n - catalogs/foundation/new-wsl-architecture-20261001.json\n - catalogs/sota-convergence/*, blueprints/gap-wave2-20260923/**, evidence/**\n- adoption/new-wsl-profile.json is a dated, unprovisioned 10-01 profile using the .deb route, owned by the new-WSL lane. If that lane moves it, the .deb sha256 is 7dafb2356fe1c380e383c5383bb6c8506587a4d840539ae1c18387e796ec37c9 (checksums line 5, equal to the API digest; the .deb was not downloaded). The new-WSL install plan already names syft@1.54.0, so this move removes a disagreement rather than creating one.\n\nC. README: blueprints/us-equities/supply-chain/README.md\n- Replacing 1.52.0 with 1.54.0 everywhere would falsify the dated record.\n- Keep lines 1-46 (the 09-19 acceptance) and 48-62 (the 09-23 cosign result) explicitly scoped to 1.52.0.\n- Move the replay recipe (lines 71-95) and sources (lines 144-145) to v1.54.0 only together with a new dated 1.54.0 qualification paragraph. That paragraph should say:\n - the signature was not verified;\n - upstream now ships only a Sigstore bundle, so the --certificate/--signature form in verify_signatures.sh cannot verify 1.54.0;\n - the bundle form `cosign verify-blob --bundle syft_1.54.0_checksums.txt.sigstore.json --certificate-identity --certificate-oidc-issuer https://token.actions.githubusercontent.com syft_1.54.0_checksums.txt` is untested. Commit ef356ecce (#5362) changed signing, so 1.52.0's release.yaml@refs/heads/main identity is unconfirmed for 1.54.0.\n- Prose sites from the pin-site list (docs/stack.md:53, docs/landscape.md:47, docs/github-automation.md, catalogs/sota-convergence/README.md:48,72, catalogs/foundation/automation.json:226): update only text that states the current pin.\n\nD. VERIFICATION GAPS (none changes the decision)\n- The spdx-json output was never tested.\n - supply-chain.yml:105-114 (SPDX fed to grype 0.119.0) will run on the PR through its path trigger (lines 10-12).\n - publish-catalog.yml:120-139 (SPDX plus actions/attest) runs only on dispatch or tag.\n - Upstream #5349 adds a root package name when the source has none. Both CI scans pass no --source-name, so their output changes; nothing reads that name.\n- Not run here: python3 scripts/validate.py, scripts/landscape.py --root ., scripts/component_matrix.py --check, scripts/new_host_grand_list.py --check, scripts/build_ecosystem.py --check, and python3 -m unittest (including test_stack_lifecycle and test_catalog_freshness_pins).\n- I did not run the syft binary myself.\n- The host binary /.local/share/codex-ecosystem/bin/syft stays at 1.52.0. The README recipe requires the link to be absent, so a host upgrade is a separate step.\n\nE. PROCESS\n- manifests/stack.json and manifests/evidence.json are shared hot files, so:\n - label the PR lane:shared;\n - get the trading lane's acknowledgement;\n - send a merge-train notice before merging;\n - re-register every edited tracked file in evidence.json files[].\n- The PR body needs a non-empty `## SOTA sources` section (the anchore/syft v1.54.0 release, tag commit and checksums file) and must cite the user's 2026-10-03 cooldown waiver.\n\nTools used: ctx_execute for read-only hashing, gh api GET calls and jq/python derivations over the smoke SBOMs and catalogs; Read/Grep for known files." + } + } + }, + "holds_not_in_scope": { + "grafana": "This is a hold because the checks were never run. Nothing found is wrong with v13.2.3 itself. None of the four move conditions has evidence, and nothing on this host or in this repository fills the gap.\n(1) Clean stable release: draft, prerelease and published_at were never read from GitHub. The packet's \"prerelease\": false is a placeholder copied from local records, so treat it as unknown.\n(2) Integrity: no archive was downloaded or hashed. The only 13.2.3 SHA256 (6107ad27016296aac38e0d7ffa8753ab540b5541ad27e94790f771289d733235) appears in three files, each copied from the grafana.com page an", + "agentsview": "Hold. Three of the four move criteria pass on my own re-check (2026-10-03). The fourth fails, and the repository's own qualification hold still applies.\n\nPASSED:\n- Clean stable release. The GitHub API for v0.44.0 reports prerelease=false, draft=false, published 2026-09-21T13:56:12Z. It is the newest release (v0.44.0, v0.43.0, v0.42.0, v0.41.1), and the tag ref is annotated tag 24ac704b.\n- Integrity. The archive sha256 is 037ea7a4\u20265818e3. It equals SHA256SUMS line 32 and the API asset digest, and `sha256sum --check --ignore-missing SHA256SUMS` printed OK with exit 0. The SHA256SUMS digest 83e25", + "agent-browser": "Hold, because none of the four gates for a move has been verified. This is a verification gap, not a judgment that v0.38.2 is bad.\n\n(1) Clean stable release: not established. The source.prerelease=false in the facts is a placeholder, not a value read upstream. The tag commit and published_at are not resolved. The release body, the v0.38.1...v0.38.2 compare, the CHANGELOG and advisories were not read. The user's 2026-10-03 cooldown directive defines \"clean\" as a tagged non-prerelease with published artifacts and no known regression or advisory, and says host qualification still applies.\n\n(2) In", + "headroom": "HOLD at 0.37.0. Two independent blockers.\n\n1) The task's move criteria are not met. The wheel's integrity was not checked (artifact.integrity_checked=false). No 0.39.1 wheel URL or sha256 is recorded anywhere: Grep for `headroom_ai-0.39.1|headroom-ai==0.39.1` over /code/.worktrees/native-agent-stack/0c/base returned no files. No candidate binary was installed, so there is no `headroom --version` output, and no smoke run (install, version and smoke exits are all the -1 not-run sentinel). Stable status is consistent but comes only from a week-old local record: tag v0.39.1, prerelease ", + "dagu": "Hold at 2.16.6. Three of the four move conditions are not met, and I re-checked each one locally:\n\n1. **Integrity is not verified.** No dagu_2.18.1 tarball or checksums.txt was downloaded (integrity_checked=false).\n2. **No binary reports the candidate version.** No candidate binary exists. Glob finds no files under dagu/ (the earlier worker's `ls` exited 2), and `dagu version` never ran.\n3. **Breaking changes against documented use are not assessed.** Nobody has read the release notes for v2.17.0 through v2.18.1. /ho", + "beads": "GATED by the 7-day cooldown. The user asked to be told about gates, so surface this one. v1.3.1 passes every mechanical check but does not meet the recorded test for \"clean\" in the user's waiver: \"no known regression or advisory against it\" (memory cooldown-waivable-clean-releases.md:13). So the normal cooldown for a release that is not a security fix applies (docs/decisions/2026-09-25-workstation-sota-refresh.md:237-238). It ends at 2026-10-07T23:37:36Z, which is published_at 2026-09-30T23:37:36Z plus 7 days.\n\nChecks that passed, re-run read-only on 2026-10-03:\n- **Release status:** prereleas", + "rtk": "GATED, not a release defect. A move needs all four conditions: a clean stable release, verified integrity, a binary that reports 0.51.0, and no unmatched breaking change. None of these was qualified.\n\n(1) No candidate artifact exists. A Glob of rtk/** returned no files. So there is no asset to check against checksums.txt or the API digest, and no binary to run `--version` or the smoke test on. These are verification gaps (steps not run).\n\n(2) The prerelease flag is unverified. `prerelease: false` in the facts is a sc" + } +} \ No newline at end of file diff --git a/evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md b/evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md new file mode 100644 index 000000000..1732681aa --- /dev/null +++ b/evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md @@ -0,0 +1,138 @@ +# R642b thread replies — PR #642 + +Reviewed the five supplied threads against head `2d6f49233fa15e4993819c718d131bc6c10e5125` before changing files. The replies below describe the prepared working-tree repair. The coordinator still owns commit and push; HEAD and the ordinary Git index remain unchanged. + +## observability/README.md:30 + +Fixed the live Collector row by separating deployed **0.161.0**, which owns the live traffic/restart/retained-storage evidence, from selected **0.162.0**. The selected row links its W1 scratch receipt and states that runtime acceptance remains pending. No service switch was performed. The decision records the corrected evidence boundary. + +## adoption/bootstrap.md:584 + +Added the supported existing-host transition: retarget `extraKnownMarketplaces.claude-hud.source.ref` to `v0.10.0`, let the next native session synchronize the changed source, run `claude plugin marketplace update claude-hud`, then `claude plugin update claude-hud@claude-hud --scope user`, reload, and verify the installed commit against `75683c6de1ac07f6bbef00d739001679dba0740c`. + +Sources are the official [update instructions](https://code.claude.com/docs/en/plugins/install#update-plugins-now), [marketplace update reference](https://code.claude.com/docs/en/plugins/cli-reference#plugin-marketplace-update), [source synchronization reference](https://code.claude.com/docs/en/plugins/loading#plugins-and-marketplaces-that-arent-on-disk-at-session-start), and installed Claude Code 2.1.288 help/tagged changelog. Marketplace refresh follows the configured tag, so the ref change must precede the updates. Native version/help ran only with temporary `HOME`, `CLAUDE_CONFIG_DIR` and cwd; their actual output is retained in `native-checks.json#/r642b_claude_hud_upgrade`. The bootstrap and decision explicitly say **documented, host verification pending**. A safe offline GitHub-tag transition was not verified, and the host's real configuration/plugins were not changed. + +## evidence/artifacts/currency-wave-w1-20261003/native-checks.json:44 + +Re-ran all four exact integration commands from their W1 scratch installs after completing every mcporter pin-site reversion and the eight-component PR metadata correction. Each command's shell recorded start/end with `date -u +%Y-%m-%dT%H:%M:%SZ`. Fresh commands, original stdout/stderr, hashes and times are retained under `commands/*-r642b-timed`, and both affected receipts point to these entries. The four original null-time entries remain labelled `earlier_untimed_attempt`; interim timed attempts also remain preserved. The decision cites the final timed runs below, not the original untimed attempts. + +| Final run on 2026-10-03 | Start UTC | End UTC | Exit | Returned signal | +| --- | --- | --- | --- | --- | +| Inspector tools/list | 08:23:59 | 08:24:00 | 0 | Six tool names: set_tool_tier, announce_model, jcodemunch_guide, order, menu, route | +| Inspector tools/call | 08:24:00 | 08:24:01 | 0 | order/get_session_stats; isError false; visible_tools 6 | +| Inspector unknown-tool control | 08:24:01 | 08:24:02 | 5 | Expected tool_not_found | +| mcporter 0.14.2 canary | 08:24:02 | 08:24:03 | 0 | visible_tools 6; compatibility-attempt evidence for the hold only | + +## manifests/stack.json:658 + +R642 had added current-version pointers to the dated OpenResearch/Worktrunk document, but their recipe-map entries still selected its historical installation section. The canonical `adoption/manifest.json` mappings for OpenResearch, Worktrunk and Syft now select `recipes/README.md`, carrying current pins **0.2.15**, **0.80.0** and **1.54.0**, primary sources, bounded evidence and previous-version rollback references. Each audit row's `native_integration.recipe_document` mirrors that same path. The new foundation Syft archive recipe uses its W1 native archive/checksum/extraction commands. The trading owner's dated 1.52.0 recipe remains untouched and is no longer the canonical current mapping. + +## adoption/pins-linux-x86_64.json:136 + +Held mcporter at accepted Linux **0.14.1**, restoring its stack row, audit row, Linux artifact/hash/install row and current installation/CI references from `git diff origin/main`. macOS retains its independently accepted **0.13.13** pin; its Linux comparison and lag-test receipt return to 0.14.1. Additional current sites repaired include `scripts/native_token_ci.py`, `tools/token-report/README.md`, and `tests/test_adoption_bootstrap_macos.py`. Generated reports reflect the hold. The snapshot selects 0.14.1, records its freshly verified exact source commit, accurately reports latest v0.14.2, and preserves the W1 attempt as a dated observation. + +The 0.14.2 receipt is now `compatibility_attempt`, linked from no current pin or audit acceptance row. It retains the dependency finding and the ad-hoc canary solely as evidence for the hold. A fresh offline/read-only `npm ls --global --prefix /mcporter/prefix --all --json` corroborated the finding: exit **1**, `ELSPROBLEMS`, invalid bundled core **2.2.0** beside resolved server **2.3.0**. Its native problems field, stderr, times and original stdout hash are retained in that receipt. Reopen only after a consistent resolved tree and qualified persistent daemon/serve role, including use, restart and recovery. The [PR title and description](https://github.com/seathatflowsinourveins/native-agent-stack/pull/642) now count **eight moves** and list mcporter as held; metadata was re-read to verify the correction. + +## Acceptance + +The actual returned command output and failed conditions are retained in `evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json`. All changed evidence was re-registered with `host_receipts.register_file`; `manifests/evidence.json` was the final repository file written. The component matrix and grand list were regenerated through their native write commands; the ecosystem build remained check-only. + +| Command | Exit | Decisive returned result | +| --- | --- | --- | +| `python3 scripts/validate.py` | 0 | passed; 69 components, 196 receipts, 9,423 hashed files | +| `python3 scripts/validate_convergence.py --all-recorded --root . --json` | 0 | valid true | +| `python3 scripts/landscape.py --root .` | 0 | status passed; 32 layers, 69 explained components | +| Required nine-module unittest command below | 0 | Ran 325 tests; OK (skipped=3) | +| `python3 scripts/validate_catalogs.py` | 0 | Catalog structure and evidence classes validated | +| `python3 scripts/validate_foundation.py --root . --json` | 0 | ok true; errors [] | +| `python3 scripts/component_matrix.py --check` | 0 | 32 rows; checked | +| `python3 scripts/new_host_grand_list.py --check` | 0 | passed; 32 layers, 66 winners | +| `python3 scripts/build_ecosystem.py --check` | 0 | deterministic build passed; existing dated pin drift stays explicit | +| Three pre-push registry tests below | 0 | Ran 3 tests; OK | +| `gitleaks protect --staged --redact` with temporary native Git index and pinned 8.30.1 executable | 0 | Final scan: ~208,358 bytes; no leaks found | +| `git diff --check` | 0 | No whitespace errors | + +Required suite, unchanged: + +```sh +python3 -B -m unittest tests.test_stack_lifecycle tests.test_render_config tests.test_adoption_contract tests.test_grand_dashboard tests.test_landscape_sweep_harness tests.test_observability_tool_names tests.test_observability_run_correlation tests.test_sdk_usage_scope tests.test_blind_checkout +``` + +It ran through native `uv run --no-project --python 3.13 --with PyYAML==6.0.3` under installed Bubblewrap 0.9.0: read-only host root, writable owned worktree/task cache, read-only worktree `.git`, and a private `/tmp`. The existing temporary-root Git markers caused the first 11 errors; choosing another writable root retained that condition. The initial private-tmpfs wrapper made the worktree read-only and correctly refused 35 render-fixture writes. Those failed runs are retained. The final supported wrapper passed the full suite without editing tests or removing other-worker markers. The three optional skips concern an installed Context Mode security build selector, real Bash 3.2 and ShellCheck. + +Pre-push command: + +```sh +python3 -B -m unittest tests.test_osv_lockfile_coverage.LockfileInventoryTests.test_every_tracked_lockfile_and_manifest_is_listed tests.test_blind_checkout.RepositoryClassificationTests.test_every_blueprint_value_under_a_label_key_is_classified tests.test_workflow_security_coverage.NewWorkflowSecurityCoverageTests.test_all_published_workflows_are_listed_and_covered +``` + +The staged scan used `GIT_INDEX_FILE`, `GIT_OBJECT_DIRECTORY` and read-only alternate repository objects in task scratch. Native `read-tree HEAD`, `git add -A`, scanning, and `git reset -- .` touched only that temporary index/object directory. The ordinary index hash was checked unchanged after cleanup. No commit or push was performed. All configuration-owner new-WSL files and `blueprints/us-equities/` retain their bytes. + +## R642b per-component changed-file map + +Paths are repository-relative. The dated decision/evidence registration and check artifact cover the repair as a whole. + +| Component/scope | Files changed by R642b | +| --- | --- | +| Collector | observability/README.md | +| Claude HUD | adoption/bootstrap.md; evidence/artifacts/currency-wave-w1-20261003/native-checks.json | +| mcp-inspector | evidence/receipts/mcp-inspector-290-qualification-20261003.json; evidence/artifacts/currency-wave-w1-20261003/native-checks.json | +| OpenResearch, Worktrunk, Syft | adoption/manifest.json; blueprints/token-native-focus/saturation-audit.json; recipes/README.md | +| mcporter hold | manifests/stack.json; catalogs/landscape/upstream-snapshot.json; blueprints/token-native-focus/saturation-audit.json; adoption/pins-linux-x86_64.json; adoption/pins-macos-arm64.json; adoption/bootstrap.md; adoption/platforms/linux-wsl2.md; docs/token-efficiency-stack.json; recipes/README.md; scripts/native_token_ci.py; tests/test_adoption_bootstrap_macos.py; tools/token-report/README.md; evidence/receipts/mcporter-0142-qualification-20261003.json; evidence/artifacts/currency-wave-w1-20261003/native-checks.json | +| Generated reports | catalogs/landscape/new-host-grand-list.json; docs/new-host-grand-list.md | +| Shared decision/acceptance/registration | docs/decisions/2026-10-03-currency-wave-w1.md; evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json; manifests/evidence.json | +| jcodemunch-mcp, playwright-cli | No additional component changes in R642b; their W1 moves are preserved | + +## Final worktree status + +```text + M adoption/bootstrap.md + M adoption/manifest.json + M adoption/pins-linux-x86_64.json + M adoption/pins-macos-arm64.json + M adoption/platforms/linux-wsl2.md + M blueprints/token-native-focus/saturation-audit.json + M catalogs/landscape/new-host-grand-list.json + M catalogs/landscape/upstream-snapshot.json + M docs/decisions/2026-10-03-currency-wave-w1.md + M docs/new-host-grand-list.md + M docs/token-efficiency-stack.json + M evidence/artifacts/currency-wave-w1-20261003/native-checks.json + M evidence/receipts/mcp-inspector-290-qualification-20261003.json + M evidence/receipts/mcporter-0142-qualification-20261003.json + M manifests/evidence.json + M manifests/stack.json + M observability/README.md + M recipes/README.md + M scripts/native_token_ci.py + M tests/test_adoption_bootstrap_macos.py + M tools/token-report/README.md +?? evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json +``` + +```text + adoption/bootstrap.md | 26 +- + adoption/manifest.json | 6 +- + adoption/pins-linux-x86_64.json | 8 +- + adoption/pins-macos-arm64.json | 2 +- + adoption/platforms/linux-wsl2.md | 2 +- + .../token-native-focus/saturation-audit.json | 29 +-- + catalogs/landscape/new-host-grand-list.json | 14 +- + catalogs/landscape/upstream-snapshot.json | 105 +++++++- + docs/decisions/2026-10-03-currency-wave-w1.md | 140 +++++++++-- + docs/new-host-grand-list.md | 2 +- + docs/token-efficiency-stack.json | 4 +- + .../currency-wave-w1-20261003/native-checks.json | 268 ++++++++++++++++++++- + .../mcp-inspector-290-qualification-20261003.json | 7 +- + .../mcporter-0142-qualification-20261003.json | 35 ++- + manifests/evidence.json | 79 +++--- + manifests/stack.json | 12 +- + observability/README.md | 3 +- + recipes/README.md | 32 ++- + scripts/native_token_ci.py | 2 +- + tests/test_adoption_bootstrap_macos.py | 2 +- + tools/token-report/README.md | 4 +- + 21 files changed, 657 insertions(+), 125 deletions(-) +``` + +The diff stat excludes the new, untracked `review-bot-repair-checks.json`; the staged secret scan included it. All modifications are unstaged after temporary-index cleanup. diff --git a/evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md b/evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md new file mode 100644 index 000000000..28bdce94a --- /dev/null +++ b/evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md @@ -0,0 +1,315 @@ +# R642 per-finding replies and acceptance + +One bounded repair round against `ea10c096e8fbc59cf528f9fb600d8b0b261c288b` on `foundation/currency-w1-20261003`. No commit or push. All off-limit configuration-owner and `blueprints/us-equities/` files remain untouched. + +This serves W1 foundation currency for tooling used in complex engineering and north-star US-equities research/historical simulation. The existing repository unittest harness, pinned upstream Collector/HUD sources and documented uv/PyYAML recipe supply the checks. Local fixtures, structural validation, historical W1 output and hosted qualification remain distinct. + +Public repair record: `evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json`. Amended decision: `docs/decisions/2026-10-03-currency-wave-w1.md`. Changed files were registered through `scripts/host_receipts.py:register_file`, with `manifests/evidence.json` written last. Both generated report write commands returned 0; their bytes remained unchanged. + +## 1. should-fix: tests/test_observability_tool_names.py:29; tests/test_observability_run_correlation.py:47; tests/test_observability_writer_identity.py:36 + +Reply: Fixed. All three current Collector selectors read the opentelemetry-collector-contrib version from manifests/stack.json; SDK usage inherits the run-correlation selector. OTELCOL_TEST_BIN selects the already qualified scratch 0.162.0 executable without changing a host installation. Skip messages and current README instructions follow the selected pin. The four relevant modules ran 35 tests with zero skips on Python 3.13.15/PyYAML 6.0.3. The remaining old test path is the explicitly dated fake host-apply fixture, which does not select the current native pipeline. + +## 2. blocking: evidence/receipts/syft-1540-qualification-20261003.json:33; evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:32; evidence/receipts/mcporter-0142-qualification-20261003.json:33 + +Reply: No pin or digest changed for this finding, as R642 directs. The reported DNS failure was a review-environment limitation, not a mismatch. Publisher checksum URLs remain in the Syft and Collector receipts; mcporter explicitly names its primary npm version metadata URL. All nine qualification receipts name a primary integrity URL. HUD retains the honest exception: no publisher archive checksum exists, so its source-tree Git-blob integrity URL is named. These annotations do not claim a new digest or signature run. + +## 3. minor: observability/paper-trading-live/collector-paper-trading.yaml:1; docs/lanes.md:25; docs/decisions/2026-10-03-currency-wave-w1.md:154-157 + +Reply: Restored the trading-owned observability/paper-trading-live/collector-paper-trading.yaml comment to 0.161.0. An independent git show comparison confirmed the whole file is byte-identical to W1 base dcae68bd08a191f37ba564eceda9fc4a9d6d4a6e. The decision hands any current-version update to the trading owner. + +## 4. minor: evidence/receipts/mcporter-0142-qualification-20261003.json:36; evidence/receipts/openresearch-0215-qualification-20261003.json:40; evidence/receipts/claude-hud-0100-qualification-20261003.json:41,47; scripts/validate.py:29; docs/decisions/2026-10-03-currency-wave-w1.md:163-167 + +Reply: Fixed from original W1-moves.json, whose SHA256 matches the receipts' input-packet hash. mcporter retains distinct /.npmrc and /.npmrc-global; OpenResearch retains .config, .local/share, .local/state and .cache; HUD retains separate HOME and .claude config paths. All nine install/version/smoke command fields for these three components match the original packet after declared portable substitutions. Hashes were re-registered, and the private-path validator passes. + +## 5. minor: evidence/receipts/mcp-inspector-290-qualification-20261003.json:49; evidence/receipts/mcporter-0142-qualification-20261003.json:48; evidence/receipts/openresearch-0215-qualification-20261003.json:45; evidence/receipts/worktrunk-0800-qualification-20261003.json:45; evidence/receipts/syft-1540-qualification-20261003.json:46 + +Reply: Replaced all W1 receipt manifests/stack.json line citations with a component id plus the component-relative JSON pointer /commands, including an additional HUD citation. Inspector's former 2.8.0 literal command explicitly identifies the W1 base commit, avoiding a false claim about the current 2.9.0 row. All changed receipt hashes were re-registered. + +## 6. minor: adoption/templates/claude.settings.template.json:327; tests/test_render_config.py:83-124; docs/decisions/2026-10-03-currency-wave-w1.md:74-76 + +Reply: Fixed. The template filters cache directories for dist/index.js before sorting versions. A complete 0.9.0 remains selected beside an incomplete 0.10.0 directory; once 0.10.0 has its entry, it wins. This follows jarrodwatts/claude-hud@75683c6de1ac07f6bbef00d739001679dba0740c, scripts/statusline.mjs:30-39, read from the primary upstream API. The mixed-install subtest failed before the template repair and passed after it; both outputs are retained. + +## 7. minor: tests/test_observability_tool_names.py:29,229; tests/test_observability_writer_identity.py:36,324; tests/test_observability_run_correlation.py:47,159; tests/test_sdk_usage_scope.py:28; observability/collector/README.md:117 + +Reply: Fixed together with finding 1. Current README validation names 0.162.0 and explains the manifest-derived selector and scratch override. Native logs, correlation, SDK and writer-identity checks ran on the qualified 0.162.0 executable with zero skips. Earlier 0.161.0 receipts and dated source reviews remain unchanged. + +## 8. minor: docs/foundation-stack.md:18 (table row :15) + +Reply: Updated chronology: the foundation table was checked on September 26 and updated for jCodeMunch on October 3; September 20 acceptance predates five current pins. The text names jCodeMunch 1.108.319 -> 1.108.327 and links its October 3 version/session-stats qualification receipt. + +## 9. minor: docs/decisions/2026-10-03-currency-wave-w1.md:169,171-172; evidence/artifacts/currency-wave-w1-20261003/native-checks.json:135-171 + +Reply: Removed the unsupported separate 25-test claim and blanket historical claim that every original build-contract command passed. The decision states what native-checks.json retains: the four-module run reported 253 tests and OK (skipped=33). The failed supplemental run's classification no longer asserts an unretained build-contract result. R642 retains actual commands, exit codes and outputs in review-repair-checks.json; final rerun outputs also appear below. + +## 10. minor: adoption/manifest.json:161,184,189; recipes/native-upgrades-20260921.md:13-14; recipes/README.md:101,115; blueprints/us-equities/supply-chain/README.md:3,41-44,71-91 + +Reply: Added an October 3 note to canonical recipes/native-upgrades-20260921.md for OpenResearch 0.2.15 and Worktrunk 0.80.0, with source commits, current installation/pin links, scope limits and W1 receipt links. Both commits were corroborated by primary upstream tag-commit API reads. September 21 acceptance/rollback material remains dated. The decision hands Syft 1.54.0 recipe/hash updates to the trading owner; no blueprints/us-equities/ file was edited. + +## 11. minor: adoption/new-wsl-profile.json:633-678,989-1046,3636-3681 + +Reply: Recorded the configuration-owner handoff. adoption/new-wsl-profile.json carries Inspector 2.9.0, Worktrunk 0.80.0 and Collector 0.162.0, but still carries mcporter 0.14.1, playwright-cli 0.1.21 and Syft 1.52.0. This file and every other configuration-owner path remain untouched. + +## 12. minor: .github/workflows/native-token-e2e.yml:12-18,57-60; scripts/native_token_ci.py:1205-1263 + +Reply: Recorded as a hosted limitation. W1 exercised jCodeMunch 1.108.327 through get_session_stats; index/search/source retrieval against the frozen oracle was not repeated. The coordinator must retain native-token-e2e and validate results for the eventual committed repair head. R642 does not dispatch CI, commit, push or infer hosted acceptance from local checks. + +## 13. minor: .github/workflows/supply-chain.yml:15-20,76-89 + +Reply: Recorded as a hosted limitation. Syft 1.54.0's first hosted sbom-vuln run against the reproduced nautilus_trader environment is distinct from W1's equity-worker-SDK inventory comparison. The committed-repair-head result remains a coordinator handoff. No additional workflow or trading code changes were made. + +## 14. minor: scripts/validate.py; scripts/build_ecosystem.py; scripts/component_matrix.py; scripts/new_host_grand_list.py; scripts/saturation_ledger.py + +Reply: All R642-required local validation commands and three registry tests passed; exact commands, exit codes and outputs appear below. The required eight-module suite ran 284 tests with three unrelated optional harness skips; the native Collector subset ran 35 tests with zero skips. Staged Gitleaks returned 0, scanned about 51.82 KB and found no leaks. Required-check observation at source head ea10c096 showed six pass buckets, validate fail and validate-macos pending; this is not a hosted acceptance claim for the repair. Full-suite discovery and saturation-ledger execution are outside R642's requested command list and were not substituted for it. + +## 15. minor: docs/lanes.md:22-29 + +Reply: Read-only PR metadata at source head ea10c096 confirms lane:shared and a nonempty exact ## SOTA sources section. No candidate acknowledgement appeared in returned PR comments; reviews were not fetched, so this is not an absence claim about acknowledgement reviews. The decision hands any required acknowledgement and final committed-head CI/metadata to the coordinator. The trading comment has been restored to base. No PR labels, body, comments or reviews were written. + +## 16. minor: .github/workflows/publish-catalog.yml:3-6,96-115 + +Reply: Recorded as a limitation and next execution: publish-catalog runs only on dispatch or a v* tag, so PR CI does not exercise its updated Syft 1.54.0 installation. Retain the next dispatch/tag result as that path's first execution. No workflow dispatch or code change was added for this finding. + +## Final required commands + +These final structural and registry checks ran after the last repository edit and registration. Full returned output is retained below. Commands ran through `rtk proxy`; portable path substitutions apply where shown. + +### python3 scripts/validate.py + +Exit code: `0`. + +```text +{"components": 69, "hashed_files": 9422, "profiles": 4, "receipts": 196, "status": "passed"} +Integrity and scope checks only; no live provider or GPU execution. +``` + +### python3 scripts/validate_convergence.py --all-recorded --root . --json + +Exit code: `0`. + +```text +{"records": [{"errors": [], "observations": 3, "path": "blueprints/blind-catalog-convergence/experiment.json", "valid": true}, {"errors": [], "observations": 3, "path": "blueprints/blind-catalog-convergence/memory-experiment.json", "valid": true}, {"errors": [], "observations": 4, "path": "blueprints/catalog-runtime-review/experiment.json", "valid": true}, {"errors": [], "observations": 15, "path": "blueprints/convergence-practice/application-delivery/experiment-macos-20260924.json", "valid": true}, {"errors": [], "observations": 3, "path": "blueprints/convergence-practice/application-delivery/experiment.json", "valid": true}, {"errors": [], "observations": 1, "path": "blueprints/convergence-practice/ci-security/experiment.json", "valid": true}, {"errors": [], "observations": 1, "path": "blueprints/convergence-practice/document-ingestion/experiment.json", "valid": true}, {"errors": [], "observations": 0, "path": "blueprints/convergence-practice/gpt6-family-tiering-20260926/experiment.json", "valid": true}, {"errors": [], "observations": 1, "path": "blueprints/convergence-practice/gpu-inference/experiment.json", "valid": true}, {"errors": [], "observations": 3, "path": "blueprints/convergence-practice/job-recovery/experiment-macos.json", "valid": true}, {"errors": [], "observations": 1, "path": "blueprints/convergence-practice/job-recovery/experiment-wsl.json", "valid": true}, {"errors": [], "observations": 7, "path": "blueprints/convergence-practice/local-inference-latest-20260926/experiment.json", "valid": true}, {"errors": [], "observations": 2, "path": "blueprints/convergence-practice/mac-memory-patch/experiment.json", "valid": true}, {"errors": [], "observations": 1, "path": "blueprints/convergence-practice/native-recovery/claude/experiment.json", "valid": true}, {"errors": [], "observations": 1, "path": "blueprints/convergence-practice/native-recovery/experiment.json", "valid": true}, {"errors": [], "observations": 2, "path": "blueprints/convergence-practice/native-worker/experiment.json", "valid": true}, {"errors": [], "observations": 20, "path": "blueprints/convergence-practice/omniroute-routing-20260928/experiment.json", "valid": true}, {"errors": [], "observations": 1, "path": "blueprints/convergence-practice/wsl-memory-maintenance/experiment.json", "valid": true}, {"errors": [], "observations": 2, "path": "blueprints/convergence-practice/wsl-native-tools/experiment-wsl.json", "valid": true}, {"errors": [], "observations": 0, "path": "blueprints/convergence-practice/wsl-new-distro-image-20261001/experiment.json", "valid": true}, {"errors": [], "observations": 1, "path": "blueprints/convergence-practice/wsl-retrieval/experiment.json", "valid": true}, {"errors": [], "observations": 3, "path": "blueprints/convergence-practice/wsl-transport-recovery/experiment.json", "valid": true}, {"errors": [], "observations": 8, "path": "blueprints/us-equities/sim-capacity/experiment.json", "valid": true}, {"errors": [], "observations": 6, "path": "evidence/artifacts/local-model-workloads-20260924/experiment.json", "valid": true}, {"errors": [], "observations": 24, "path": "evidence/artifacts/memory-stack-20260925/experiment.json", "valid": true}, {"errors": [], "observations": 3, "path": "evidence/artifacts/native-workflow-writing-recovery-20260921/experiment.json", "valid": true}], "valid": true} +``` + +### python3 scripts/landscape.py --root . + +Exit code: `0`. + +```text +{"counts": {"applied_skills": 3, "comparison_candidates": 365, "comparison_repositories": 161, "current_public_stars": 343, "dispositions": {"conditional": 164, "measured_tradeoff": 9, "out_of_scope": 9, "overlap": 14, "selected": 136, "unqualified": 33}, "domain_layers": 4, "explained_components": 69, "foundation_decisions": 54, "foundation_layers": 20, "foundation_statuses": {"accepted_within_scope": 44, "partial_acceptance": 2, "source_review": 8}, "historical_candidate_cards": 154, "layers": 32, "quality_review_repositories": 16, "research_queue_layers": 32, "research_repositories": 875, "selected_components": 69}, "scope": "Coverage and reference integrity; no new runtime or ranking acceptance.", "status": "passed"} +``` + +### python3 scripts/validate_catalogs.py + +Exit code: `0`. + +```text +{"beyond_star_catalog_repositories": 102, "models": 20, "public_stars": 357, "repository_entries": 154, "starred_catalog_repositories": 46, "unique_catalog_repositories": 148} +Catalog structure and evidence classes validated; source claims and native executions were not rerun. +``` + +### python3 scripts/validate_foundation.py --root . --json + +Exit code: `0`. + +```text +{ + "ok": true, + "counts": { + "layers": 20, + "decisions": 54, + "foundation_components": 61, + "domain_components": 7, + "evidence_receipts": 84, + "candidates": 3 + }, + "errors": [] +} +``` + +### python3 scripts/component_matrix.py --check + +Exit code: `0`. + +```text +{"rows": 32, "status": "checked"} +``` + +### python3 scripts/new_host_grand_list.py --check + +Exit code: `0`. + +```text +{"status": "passed", "layers": 32, "winners": 66} +``` + +### python3 scripts/build_ecosystem.py --check + +Exit code: `0`. + +```text +{"architecture_pin_drift": [{"component_id": "codex", "edition_pin": "0.159.2", "row": "foundation/native-clients", "stack_pin": "0.159.3"}, {"component_id": "worktrunk", "edition_pin": "0.79.0", "row": "foundation/workers", "stack_pin": "0.80.0"}, {"component_id": "worktrunk", "edition_pin": "0.79.0", "row": "foundation/isolation", "stack_pin": "0.80.0"}, {"component_id": "jcodemunch-mcp", "edition_pin": "1.108.319", "row": "foundation/code-navigation", "stack_pin": "1.108.327"}, {"component_id": "openresearch", "edition_pin": "0.2.7", "row": "foundation/web-research", "stack_pin": "0.2.15"}, {"component_id": "syft", "edition_pin": "1.52.0", "row": "foundation/ci-supply-chain", "stack_pin": "1.54.0"}, {"component_id": "nextjs", "edition_pin": "16.3.6", "row": "foundation/hosting-services", "stack_pin": "16.3.8"}, {"component_id": "opentelemetry-collector-contrib", "edition_pin": "0.161.0", "row": "foundation/observation-inference", "stack_pin": "0.162.0"}, {"component_id": "codex", "edition_pin": "0.159.2", "row": "foundation/agent-sdks", "stack_pin": "0.159.3"}, {"component_id": "mcporter", "edition_pin": "0.14.1", "row": "foundation/mcp-surfaces", "stack_pin": "0.14.2"}, {"component_id": "mcp-inspector", "edition_pin": "2.8.0", "row": "foundation/mcp-surfaces", "stack_pin": "2.9.0"}, {"component_id": "worktrunk", "edition_pin": "0.79.0", "row": "foundation/git-github-automation", "stack_pin": "0.80.0"}, {"component_id": "codex", "edition_pin": "0.159.2", "row": "us-equities/data-quality-orchestration", "stack_pin": "0.159.3"}, {"component_id": "opentelemetry-collector-contrib", "edition_pin": "0.161.0", "row": "us-equities/data-quality-orchestration", "stack_pin": "0.162.0"}, {"component_id": "codex", "edition_pin": "0.159.2", "row": "us-equities/evaluation-experiments", "stack_pin": "0.159.3"}, {"component_id": "opentelemetry-collector-contrib", "edition_pin": "0.161.0", "row": "us-equities/evaluation-experiments", "stack_pin": "0.162.0"}, {"component_id": "codex", "edition_pin": "0.159.2", "row": "us-equities/agents-models-workers", "stack_pin": "0.159.3"}, {"component_id": "codex", "edition_pin": "0.159.2", "row": "us-equities/observability-hosting", "stack_pin": "0.159.3"}, {"component_id": "opentelemetry-collector-contrib", "edition_pin": "0.161.0", "row": "us-equities/observability-hosting", "stack_pin": "0.162.0"}, {"component_id": "syft", "edition_pin": "1.52.0", "row": "us-equities/security-supply-chain", "stack_pin": "1.54.0"}, {"component_id": "codex", "edition_pin": "0.159.2", "row": "cross/cross:gpt6-harnesses", "stack_pin": "0.159.3"}], "bytes": 15133644, "input_sha256": "22b02e05e1efe507a6c050199cb568f206430028c6f9987639e7600836ecebca", "output_sha256": "640c8a315ad27579118c597fcd14cf89787e019f6d79fa257cdf9e8f24e8fd3f", "status": "passed"} +``` + +### python3 -B -m unittest tests.test_osv_lockfile_coverage.LockfileInventoryTests.test_every_tracked_lockfile_and_manifest_is_listed tests.test_blind_checkout.RepositoryClassificationTests.test_every_blueprint_value_under_a_label_key_is_classified tests.test_workflow_security_coverage.NewWorkflowSecurityCoverageTests.test_all_published_workflows_are_listed_and_covered + +Exit code: `0`. + +```text +... +---------------------------------------------------------------------- +Ran 3 tests in 0.373s + +OK +``` + +### Required unittest suite + +Command: `uv run --no-project --python 3.13 --with PyYAML==6.0.3 python3 -B -m unittest tests.test_stack_lifecycle tests.test_render_config tests.test_adoption_contract tests.test_grand_dashboard tests.test_landscape_sweep_harness tests.test_observability_tool_names tests.test_observability_run_correlation tests.test_sdk_usage_scope`. + +Environment: `OTELCOL_TEST_BIN=/opentelemetry-collector-contrib/prefix/otelcol-contrib`, `UV_CACHE_DIR=/uv-cache`, `UV_PYTHON_DOWNLOADS=never`. This native wrapper adds documented optional PyYAML on original Python 3.13.15. Initial interpreter-only and intervening 3.14.7 results remain in the public record. + +Exit code: `0`. Returned output: + +```text +.........................................................................................................................................s.................................................................................................ss..............................................Installed dashboard and two units; service activation remains explicit. +started start-race +not started launch-refused: the job runner could not start +{"dashboard_result": [], "stage": "start_and_resume"} +{"dashboard_result": [], "stage": "same_id_replay_and_new_id_republication"} +{"dashboard_result": [], "stage": "unavailable_and_legacy_without_additive_baseline"} +. +---------------------------------------------------------------------- +Ran 284 tests in 104.216s + +OK (skipped=3) +``` + +Three skips: optional context-mode security JS path; missing ShellCheck; unavailable real Bash 3.2. Native Collector checks execute. + +### Current native Collector subset + +Command: `uv run --no-project --python 3.13 --with PyYAML==6.0.3 python3 -B -m unittest tests.test_observability_tool_names tests.test_observability_run_correlation tests.test_sdk_usage_scope tests.test_observability_writer_identity`, with the same scratch environment. + +Exit code: `0`. Returned output: + +```text +Installed 1 package in 16ms +..................{"dashboard_result": [], "stage": "start_and_resume"} +{"dashboard_result": [], "stage": "same_id_replay_and_new_id_republication"} +{"dashboard_result": [], "stage": "unavailable_and_legacy_without_additive_baseline"} +................. +---------------------------------------------------------------------- +Ran 35 tests in 65.620s + +OK +``` + +### Staged Gitleaks scan and cleanup + +The ordinary index lies outside writable sandbox roots. [Git 2.43.0 native environment variables](https://github.com/git/git/blob/v2.43.0/Documentation/git.txt) support an alternate index and writable object directory, using existing repository objects as read-only alternates. Environment: + +```text +GIT_INDEX_FILE=/git-index +GIT_OBJECT_DIRECTORY=/git-objects +GIT_ALTERNATE_OBJECT_DIRECTORIES=/objects +``` + +`git read-tree HEAD` returned 0; `git add -A` returned 0 and staged all 20 changed/new files. The PATH Gitleaks wrapper could not create its host runtime lock (preflight exit 1, scan not started). The bounded staged scan used the installed pinned upstream `gitleaks-8.30.1/gitleaks protect --staged --redact`. No wrapper or host configuration changed. This proves the native staged scan, not guarded host containment. + +Scan exit code: `0`. Returned output: + +```text + + ○ + │╲ + │ ○ + ○ ░ + ░ gitleaks + +3:25AM INF 0 commits scanned. +3:25AM INF scanned ~51821 bytes (51.82 KB) in 172ms +3:25AM INF no leaks found +``` + +Zero commits is expected for a staged diff; nonzero bytes show this was not an empty scan. Afterward `git reset -- .` returned 0. `git diff --cached --name-only` under the scratch environment returned no entries. The ordinary index remained unchanged. HEAD is unchanged and repair edits remain uncommitted. + +## Files changed per component + +This is the R642 diff against the contract head. All components share the amended decision and repair-check artifact; shared registration changes follow the table. + +| Component | Component-specific R642 files | +| --- | --- | +| jcodemunch-mcp | `docs/foundation-stack.md` | +| playwright-cli | No component-specific edit; decision records configuration-owner handoff. | +| openresearch | `evidence/receipts/openresearch-0215-qualification-20261003.json`; `recipes/native-upgrades-20260921.md` | +| mcp-inspector | `evidence/receipts/mcp-inspector-290-qualification-20261003.json` | +| claude-hud | `adoption/templates/claude.settings.template.json`; `tests/test_render_config.py`; `evidence/receipts/claude-hud-0100-qualification-20261003.json` | +| opentelemetry-collector-contrib | `tests/test_observability_tool_names.py`; `tests/test_observability_run_correlation.py`; `tests/test_observability_writer_identity.py`; `tests/test_sdk_usage_scope.py`; `observability/collector/README.md`; `observability/paper-trading-live/collector-paper-trading.yaml` (base comment restored) | +| worktrunk | `evidence/receipts/worktrunk-0800-qualification-20261003.json`; `recipes/native-upgrades-20260921.md` | +| mcporter | `evidence/receipts/mcporter-0142-qualification-20261003.json` | +| syft | `evidence/receipts/syft-1540-qualification-20261003.json`; decision owner/hosted handoffs. | + +Shared files: `docs/decisions/2026-10-03-currency-wave-w1.md`, `evidence/artifacts/currency-wave-w1-20261003/native-checks.json`, `evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json` (new), `manifests/evidence.json`. + +## Final worktree observation + +`git status --short` (exit 0): + +```text + M adoption/templates/claude.settings.template.json + M docs/decisions/2026-10-03-currency-wave-w1.md + M docs/foundation-stack.md + M evidence/artifacts/currency-wave-w1-20261003/native-checks.json + M evidence/receipts/claude-hud-0100-qualification-20261003.json + M evidence/receipts/mcp-inspector-290-qualification-20261003.json + M evidence/receipts/mcporter-0142-qualification-20261003.json + M evidence/receipts/openresearch-0215-qualification-20261003.json + M evidence/receipts/syft-1540-qualification-20261003.json + M evidence/receipts/worktrunk-0800-qualification-20261003.json + M manifests/evidence.json + M observability/collector/README.md + M observability/paper-trading-live/collector-paper-trading.yaml + M recipes/native-upgrades-20260921.md + M tests/test_observability_run_correlation.py + M tests/test_observability_tool_names.py + M tests/test_observability_writer_identity.py + M tests/test_render_config.py + M tests/test_sdk_usage_scope.py +?? evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json +``` + +`git diff --stat` (exit 0; excludes new untracked repair-check artifact): + +```text + adoption/templates/claude.settings.template.json | 2 +- + docs/decisions/2026-10-03-currency-wave-w1.md | 113 ++++++++++++++++++--- + docs/foundation-stack.md | 2 +- + .../currency-wave-w1-20261003/native-checks.json | 2 +- + .../claude-hud-0100-qualification-20261003.json | 11 +- + .../mcp-inspector-290-qualification-20261003.json | 2 +- + .../mcporter-0142-qualification-20261003.json | 11 +- + .../openresearch-0215-qualification-20261003.json | 7 +- + .../receipts/syft-1540-qualification-20261003.json | 2 +- + .../worktrunk-0800-qualification-20261003.json | 2 +- + manifests/evidence.json | 75 +++++++------- + observability/collector/README.md | 13 ++- + .../collector-paper-trading.yaml | 2 +- + recipes/native-upgrades-20260921.md | 14 +++ + tests/test_observability_run_correlation.py | 9 +- + tests/test_observability_tool_names.py | 12 ++- + tests/test_observability_writer_identity.py | 9 +- + tests/test_render_config.py | 9 +- + tests/test_sdk_usage_scope.py | 2 +- + 19 files changed, 221 insertions(+), 78 deletions(-) +``` + +The staged snapshot including the new artifact had 20 files, 488 insertions and 78 deletions. `git diff --check` returned 0. + +## Completeness critic and next owners + +All 16 supplied findings have explicit replies. Selector expansion covered the repository root and distinguished current paths from dated receipts and the copied host-apply fixture. Original receipt commands, recipe entry points, citations, integrity locators and owner boundaries were cross-checked. Every changed tracked file and the new artifact is registered. + +Next lifecycle sweep: current-version retrieval oracle, hosted Syft runtime inventory, first publish-catalog execution and independent host/platform acceptance. Configuration owner: new-WSL divergence. Trading owner: canonical Syft recipe and Collector comment. Coordinator: committed-head hosted checks and any required acknowledgement. PR metadata was observed read-only; no external message, CI dispatch or publication occurred. + +At unchanged source head, six required buckets passed; validate failed and validate-macos was pending. The PR had lane:shared and a nonempty SOTA sources section. This snapshot is a limitation, not repair-head acceptance. diff --git a/evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json b/evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json new file mode 100644 index 000000000..f37ab8378 --- /dev/null +++ b/evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json @@ -0,0 +1,134 @@ +[ + { + "type": "started", + "key": "v2:0358f8c532ee2911b47a488dd92920aa37ed293695293a38c5343358fc89b223", + "agentId": "a806cdddb865c0daa", + "label": "opus:#642", + "phase": "Review" + }, + { + "type": "started", + "key": "v2:f6f76f49df913e46083569b05d844c88778f474414654c4cbff586daaa6088e9", + "agentId": "a81564cfd343cdd3a", + "label": "sol:#642", + "phase": "Review" + }, + { + "type": "result", + "key": "v2:f6f76f49df913e46083569b05d844c88778f474414654c4cbff586daaa6088e9", + "agentId": "a81564cfd343cdd3a", + "result": { + "pr": 642, + "verdict": "repair", + "findings": [ + { + "severity": "should-fix", + "where": "tests/test_observability_tool_names.py:29; tests/test_observability_run_correlation.py:47; tests/test_observability_writer_identity.py:36", + "problem": "These executable test selectors still hard-code otelcol-0.161.0/otelcol-contrib while observability/collector/README.md:12 selects 0.162.0. Their skipUnless guards skip the native checks when only the new version is installed; when both versions exist, they exercise the old binary. tests/test_sdk_usage_scope.py:27 inherits the same stale selector. These are current execution paths missed by the pin move.", + "fix": "Make the current-pin checks select 0.162.0, preferably using the canonical stack version or an explicit candidate-binary override. Update the corresponding skip messages and validation instructions. Preserve dated 0.161.0 evidence and provide a separate explicit selector if historical replay remains supported." + }, + { + "severity": "blocking", + "where": "evidence/receipts/syft-1540-qualification-20261003.json:33; evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:32; evidence/receipts/mcporter-0142-qualification-20261003.json:33", + "problem": "The required independent primary-digest verification remains incomplete. gh API reads failed, and in-memory fetches of Syft 1.54.0 checksums.txt, Collector 0.162.0's .sha256 sidecar, and mcporter 0.14.2 npm metadata all returned 'Temporary failure in name resolution'. This is a review validation blocker; no digest mismatch is established. At HEAD ea10c096e8fbc59cf528f9fb600d8b0b261c288b, all nine stack/snapshot/audit/receipt joins, receipt claim-to-recorded-output checks, and registered changed-file hashes were consistent. The Syft workflow edits added no actions or permissions.", + "fix": "Complete the public upstream checks from a network-enabled read-only review environment. Compare the exact Syft checksum line and Collector sidecar value with the committed SHA256 values; fetch an npm tarball and verify its published integrity and committed local SHA256. Finish the remaining upstream digest/source checks before approval." + } + ] + } + }, + { + "type": "result", + "key": "v2:0358f8c532ee2911b47a488dd92920aa37ed293695293a38c5343358fc89b223", + "agentId": "a806cdddb865c0daa", + "result": { + "pr": 642, + "verdict": "approve", + "findings": [ + { + "severity": "minor", + "where": "/code/.worktrees/native-agent-stack/0c/w1pins/observability/paper-trading-live/collector-paper-trading.yaml:1; /code/.worktrees/native-agent-stack/0c/w1pins/docs/lanes.md:25; /code/.worktrees/native-agent-stack/0c/w1pins/docs/decisions/2026-10-03-currency-wave-w1.md:154-157", + "problem": "The PR edits line 1 of a file under observability/paper-trading-live/ (comment changed from otelcol-contrib 0.161.0 to 0.162.0). docs/lanes.md:25 assigns that path to the Trading lane, and AGENTS.md requires handing an owned area to its owner rather than editing it. The decision's statement about which files keep their bytes names only blueprints/us-equities/, so it does not disclose this trading-path edit.", + "fix": "Revert the one-line comment and hand it to the trading lane. Alternatively, name this file in the decision record and in the lane:shared acknowledgement request for this head, so the trading ack explicitly covers it." + }, + { + "severity": "minor", + "where": "/code/.worktrees/native-agent-stack/0c/w1pins/evidence/receipts/mcporter-0142-qualification-20261003.json:36; /code/.worktrees/native-agent-stack/0c/w1pins/evidence/receipts/openresearch-0215-qualification-20261003.json:40; /code/.worktrees/native-agent-stack/0c/w1pins/evidence/receipts/claude-hud-0100-qualification-20261003.json:41,47; /code/.worktrees/native-agent-stack/0c/w1pins/scripts/validate.py:29; /code/.worktrees/native-agent-stack/0c/w1pins/docs/decisions/2026-10-03-currency-wave-w1.md:163-167", + "problem": "Path sanitization replaced each '/home/' with '', including scratch paths such as $S/home/..., most likely to satisfy the 'personal home path' regex at validate.py:29. Distinct paths have collapsed into one placeholder, so the recorded commands cannot be reproduced and now misstate what ran. In the mcporter install, '--userconfig $S --globalconfig $S' reads as one shared npm config file, yet the decision (163-167) says npm rejects a double-loaded config path and cites 'the distinct npm config paths in the W1 installation records'. The same collision appears in openresearch ('XDG_CONFIG_HOME=$D ... XDG_CACHE_HOME=$D') and HUD ('CLAUDE_CONFIG_DIR=$S/smoke'). The receipt claims are unaffected.", + "fix": "Re-sanitize these commands from the original W1 packet using distinct placeholders the scan accepts, e.g. '$S//.npmrc' and '$S//.npmrc-global', or the regex's /home/example/ exemption. Then re-register the three receipt sha256/bytes in manifests/evidence.json files[] and rerun scripts/validate.py." + }, + { + "severity": "minor", + "where": "/code/.worktrees/native-agent-stack/0c/w1pins/evidence/receipts/mcp-inspector-290-qualification-20261003.json:49; /code/.worktrees/native-agent-stack/0c/w1pins/evidence/receipts/mcporter-0142-qualification-20261003.json:48; /code/.worktrees/native-agent-stack/0c/w1pins/evidence/receipts/openresearch-0215-qualification-20261003.json:45; /code/.worktrees/native-agent-stack/0c/w1pins/evidence/receipts/worktrunk-0800-qualification-20261003.json:45; /code/.worktrees/native-agent-stack/0c/w1pins/evidence/receipts/syft-1540-qualification-20261003.json:46", + "problem": "Five receipts cite manifests/stack.json line numbers for the rows' documented commands: :609 (inspector), :634 (mcporter), :659-660 (orx), :1067-1069 (wt list) and :1406 (syft scan). Those numbers are correct only at base dcae68bd. At PR head ea10c096 the same lines are '\"commands\": [' (609), mcporter's role (634), openresearch license/profile (659-660), the worktrunk row header (1067-1069) and '},' (1406). The receipts do not record the base commit these citations refer to. Other line citations in these receipts are still correct at head: recipes/README.md:87/99/100, evidence.json:3164 and pins-linux:137-142.", + "fix": "Record the base commit for these citations in each receipt's data (e.g. data.citation_base_commit = dcae68bd08a191f37ba564eceda9fc4a9d6d4a6e), or cite by component id and field instead of line. Then re-register the five receipt hashes in manifests/evidence.json." + }, + { + "severity": "minor", + "where": "/code/.worktrees/native-agent-stack/0c/w1pins/adoption/templates/claude.settings.template.json:327; /code/.worktrees/native-agent-stack/0c/w1pins/tests/test_render_config.py:83-124; /code/.worktrees/native-agent-stack/0c/w1pins/docs/decisions/2026-10-03-currency-wave-w1.md:74-76", + "problem": "The new guard picks the highest-semver claude-hud cache directory first, then exits 0 if that directory lacks dist/index.js. The cited upstream launcher (jarrodwatts/claude-hud@75683c6 scripts/statusline.mjs:30-39, re-read in this review) instead selects the newest version whose entry exists. So when a complete older version sits beside an incomplete newer directory (e.g. an interrupted update), the template renders nothing while upstream renders the older version. The regression test covers only absent, missing-entry and single-installed cases, and the decision says the template 'adopts' upstream's check. The guard does correctly close the old fallback that ran the project's own dist/index.js.", + "fix": "Filter candidate directories on '[ -f \"

dist/index.js\" ]' before the sort/tail, keeping the fail-closed 'exit 0' when no candidate remains, and add a subtest with 0.10.0 missing its entry beside a complete 0.9.x. Alternatively, reword decision lines 74-76 to describe a narrower fail-closed guard." + }, + { + "severity": "minor", + "where": "/code/.worktrees/native-agent-stack/0c/w1pins/tests/test_observability_tool_names.py:29,229; /code/.worktrees/native-agent-stack/0c/w1pins/tests/test_observability_writer_identity.py:36,324; /code/.worktrees/native-agent-stack/0c/w1pins/tests/test_observability_run_correlation.py:47,159; /code/.worktrees/native-agent-stack/0c/w1pins/tests/test_sdk_usage_scope.py:28; /code/.worktrees/native-agent-stack/0c/w1pins/observability/collector/README.md:117", + "problem": "observability/collector/README.md:3-12 now pins and installs otelcol-contrib 0.162.0, and README:6 scopes the earlier runtime tests to 0.161.0. However, the native Collector tests still hard-code tools/otelcol-0.161.0/otelcol-contrib, with comments such as '# README pins 0.161.0' that are false at head, and README:117 still calls 0.161.0 'the documented Collector'. On a host that installs the new pin these native integration tests skip, which README:125-126 says is not a pass. As a result, the committed collector.yaml has no native pipeline run against 0.162.0 beyond 'validate'.", + "fix": "Either move the test constants and README:117 to 0.162.0 and rerun the native checks with zero skips, or correct the comments and README:117 to say these runtime checks are deliberately bound to the retained 0.161.0 binary." + }, + { + "severity": "minor", + "where": "/code/.worktrees/native-agent-stack/0c/w1pins/docs/foundation-stack.md:18 (table row :15)", + "problem": "The table now names jCodeMunch v1.108.327, a 2026-10-03 pin. The next paragraph still says the pins were 're-checked 2026-09-26' and that the 2026-09-20 acceptance receipt 'predates four of them', listing ai-memory, vLLM, RTK and SocratiCode. That receipt now also predates the jCodeMunch pin.", + "fix": "Update the date and count, and add jCodeMunch 1.108.319 -> 1.108.327 with a pointer to evidence/receipts/jcodemunch-1108327-qualification-20261003.json." + }, + { + "severity": "minor", + "where": "/code/.worktrees/native-agent-stack/0c/w1pins/docs/decisions/2026-10-03-currency-wave-w1.md:169,171-172; /code/.worktrees/native-agent-stack/0c/w1pins/evidence/artifacts/currency-wave-w1-20261003/native-checks.json:135-171", + "problem": "Two claims in the decision have no retained output in the PR. 'Both affected native npm fixture classes then passed (25 tests)' has no matching run in native-checks.json, which keeps only the two failed 229-test runs, the npm pack probes and the 253-test aggregate. 'The required build contract checks passed with their original command lines' has no command, exit code or output retained anywhere.", + "fix": "Add the 25-test run and the build-contract check runs (command, exit code, decisive output) to native-checks.json and re-register its hash. Otherwise remove the unsupported specifics from the decision." + }, + { + "severity": "minor", + "where": "/code/.worktrees/native-agent-stack/0c/w1pins/adoption/manifest.json:161,184,189; /code/.worktrees/native-agent-stack/0c/w1pins/recipes/native-upgrades-20260921.md:13-14; /code/.worktrees/native-agent-stack/0c/w1pins/recipes/README.md:101,115; /code/.worktrees/native-agent-stack/0c/w1pins/blueprints/us-equities/supply-chain/README.md:3,41-44,71-91", + "problem": "The canonical recipe documents for three moved components still name only the old pins. The recipe_map, mirrored in each audit row's native_integration.recipe_document, points openresearch and worktrunk to recipes/native-upgrades-20260921.md, which lists only 0.2.7/24e404ec and 0.79.0/5ba6f148; the recipes/README.md rows link it as 'qualified archive and rollback'. Syft's recipe_document is the trading-owned blueprints/us-equities/supply-chain/README.md, which still installs syft 1.52.0 and checks the 1.52.0 archive hash caeedb81... The decision keeps that file's bytes but records no handoff for the 1.54.0 update.", + "fix": "Add a dated 0.2.15/0.80.0 pointer to the native-upgrades recipe, or repoint recipe_map to recipes/README.md. Record a trading-lane handoff for the syft 1.54.0 recipe update in the decision's next-unit list." + }, + { + "severity": "minor", + "where": "/code/.worktrees/native-agent-stack/0c/w1pins/adoption/new-wsl-profile.json:633-678,989-1046,3636-3681", + "problem": "The new-WSL install profile already carries three W1 versions: inspector 2.9.0 (:688-733), worktrunk 0.80.0 (:798-849) and otelcol 0.162.0 (:2862-2907). It still pins mcporter 0.14.1 (sha256 8e489864...), playwright-cli 0.1.21 and syft 1.52.0. The decision's excluded-owner list does not name this file, so a reader cannot tell whether the divergence is intended.", + "fix": "Name the file and its owner in the decision's excluded-owner list, or hand the three moves to that owner." + }, + { + "severity": "minor", + "where": "/code/.worktrees/native-agent-stack/0c/w1pins/.github/workflows/native-token-e2e.yml:12-18,57-60; /code/.worktrees/native-agent-stack/0c/w1pins/scripts/native_token_ci.py:1205-1263", + "problem": "Verification gap: W1 exercised jcodemunch-mcp 1.108.327 only through get_session_stats, and its receipt states that index_folder, search_symbols and get_symbol_source were not repeated. Upstream changed a lot between v1.108.319 and v1.108.327: 147 commits, including a 6454-line extractor rewrite and changes to search_symbols and get_symbol_source. The selected role, exact symbol retrieval against a frozen source oracle, is exercised only by native-token-e2e. This PR triggers that workflow (it touches stack.json and native_token_ci.py), and the run also installs mcporter 0.14.2. No result was supplied for this SHA.", + "fix": "Coordinator: supply the native-token-e2e run result for ea10c096e8fbc59cf528f9fb600d8b0b261c288b. Do not merge until that run and validate are green on this SHA; this is the one check that can falsify the jcodemunch and mcporter moves." + }, + { + "severity": "minor", + "where": "/code/.worktrees/native-agent-stack/0c/w1pins/.github/workflows/supply-chain.yml:15-20,76-89", + "problem": "Verification gap: the PR-triggered sbom-vuln job will be the first hosted run of syft 1.54.0 against the reproduced nautilus_trader venv under grype --fail-on high. The receipt's inventory comparison covered only the equity-worker SDK.", + "fix": "Supply the supply-chain workflow result for ea10c096e8fbc59cf528f9fb600d8b0b261c288b." + }, + { + "severity": "minor", + "where": "/code/.worktrees/native-agent-stack/0c/w1pins/scripts/validate.py; /code/.worktrees/native-agent-stack/0c/w1pins/scripts/build_ecosystem.py; /code/.worktrees/native-agent-stack/0c/w1pins/scripts/component_matrix.py; /code/.worktrees/native-agent-stack/0c/w1pins/scripts/new_host_grand_list.py; /code/.worktrees/native-agent-stack/0c/w1pins/scripts/saturation_ledger.py", + "problem": "Verification gap: no output was supplied for validate.py, build_ecosystem.py --check, component_matrix.py --check, new_host_grand_list.py --check, saturation_ledger.py --check --base origin/main or a full python3 -m unittest. Nor were the 8 required CI buckets, validate-macos or secret scans for this SHA. This review checked the following read-only; each passed, but none replaces the acceptance commands.\n- Re-computed the test_stack_lifecycle assertions and the landscape.py:1373-1381 snapshot-equality assertions for all nine components.\n- Hashed all 40 changed files and confirmed each files[] sha256/bytes entry.\n- Confirmed the nine receipts[] entries match their payloads.\n- Re-matched all nine artifact digests against upstream primaries: syft checksums.txt line 8 = 54a87372...; the otelcol .sha256 sidecar = fcc06374...; npm dist.integrity/shasum plus recomputed sha256 for playwright-cli, inspector and mcporter; the PyPI wheel sha256 for jcodemunch; the orx and worktrunk sidecars; and the HUD tarball rehash.\n- Peeled all nine tags to the recorded commits.\n- Confirmed the syft workflow diffs change only version, URL, checksum, comment and summary strings, with no new action or permission.", + "fix": "Supply the command outputs and exit codes, and `gh pr checks 642 --required --json name,bucket` for this SHA." + }, + { + "severity": "minor", + "where": "/code/.worktrees/native-agent-stack/0c/w1pins/docs/lanes.md:22-29", + "problem": "Verification gap: the PR changes the shared hot files manifests/stack.json and manifests/evidence.json plus one trading path. It therefore needs the lane:shared label, a trading-lane acknowledgement on head ea10c096, and a non-empty '## SOTA sources' section in the PR body. None of that PR metadata was available to this review.", + "fix": "Supply the PR labels, the body and the trading-lane ack comment for this head." + }, + { + "severity": "minor", + "where": "/code/.worktrees/native-agent-stack/0c/w1pins/.github/workflows/publish-catalog.yml:3-6,96-115", + "problem": "Verification gap: publish-catalog.yml runs only on workflow_dispatch or a v* tag, so PR CI does not exercise its syft 1.54.0 download, check and install path. The in-workflow pin 54a87372... equals line 8 of upstream syft_1.54.0_checksums.txt, re-fetched in this review, so the risk is low.", + "fix": "Record the next publish-catalog dispatch or tag run as the first execution of this path." + } + ] + } + } +] \ No newline at end of file From 49ac86383d1f4b72a60f55972cc9a4cd92dd7809 Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 08:44:05 -0400 Subject: [PATCH 08/50] Register the W1 judgment-custody files (hot-file protocol, last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 683720be1..e821980ac 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -15955,8 +15955,8 @@ }, { "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "45a4cc616e230dbcc65e0b308922f22a61179139845049d6fa73376618076913", - "bytes": 28687 + "sha256": "3d2a68ddd68cb13ae3a0363f6e77721a585d76b16a3991b22c921a37f1986882", + "bytes": 29683 }, { "path": "docs/direct-results.md", @@ -17933,6 +17933,26 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", + "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", + "bytes": 108109 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", + "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", + "bytes": 13041 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", + "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", + "bytes": 28233 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", + "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", + "bytes": 18135 + }, { "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", From 0889086e0adb0f447c357fe657feabd7c17d8da1 Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 08:48:44 -0400 Subject: [PATCH 09/50] Hot-file protocol: restore main's copies of the shared hot files before this PR's last commit Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 351 +++++++--------------------------------- manifests/stack.json | 92 +++++------ 2 files changed, 97 insertions(+), 346 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 6ae29938a..346133a24 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -3900,155 +3900,6 @@ "The earlier final-native-scan-record.json remains historical output for its bound earlier workflow/config. completion-native-record.json records the strengthened partition, shortened 2026-10-17 expiry, fresh active/expired controls and 161-test run; neither is an unchanged upstream test suite. The first completion validation failed on a stale hash row for an already-empty output and is retained, with the corrected diagnosis in publication-correction.md." ], "path": "evidence/receipts/wsl-retrieval-retirement-20261003.json" - }, - { - "id": "jcodemunch-1108327-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "jcodemunch-mcp" - ], - "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", - "limitations": [ - "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", - "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" - }, - { - "id": "playwright-cli-0122-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "playwright-cli" - ], - "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", - "limitations": [ - "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", - "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", - "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" - }, - { - "id": "openresearch-0215-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "openresearch" - ], - "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", - "limitations": [ - "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", - "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" - }, - { - "id": "mcp-inspector-290-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "mcp-inspector" - ], - "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", - "limitations": [ - "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", - "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", - "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" - }, - { - "id": "claude-hud-0100-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-hud" - ], - "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", - "limitations": [ - "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", - "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", - "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" - }, - { - "id": "otelcol-contrib-0162-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "opentelemetry-collector-contrib" - ], - "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", - "limitations": [ - "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", - "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" - }, - { - "id": "worktrunk-0800-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "worktrunk" - ], - "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", - "limitations": [ - "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", - "The host installation and rollback launcher were not switched.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" - }, - { - "id": "mcporter-0142-qualification-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "mcporter" - ], - "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", - "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", - "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", - "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" - }, - { - "id": "syft-1540-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "syft" - ], - "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", - "limitations": [ - "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", - "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", - "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/syft-1540-qualification-20261003.json" } ], "files": [ @@ -4134,7 +3985,7 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "0c4616481072b9c38078e17dac4c87a09508a04d1f2dee771a91fc8c77323f15", + "sha256": "d4ea05b0beefc85d06d4fe25cab6fda8697bf68ccda35df6770816c478099357", "bytes": 24184 }, { @@ -4169,7 +4020,7 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "e6341c41b5bcc49971dc490a42b3c16f396b35d432cee5e443d2f5a20eec6cf4", + "sha256": "6e3212ba3134a62b27bc4d24129a3054a0f94263c0c0f148af94456152fd00c1", "bytes": 19723 }, { @@ -4184,8 +4035,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "4688fbcd032ef2f74e72d61945e1f2ab3f707f53e04a1ce8c296b32f8ef504ec", - "bytes": 7424 + "sha256": "a752c1be5c7e73642085b3fd91f3e97c4b42167dbe5b3452b2bd1191652e9c24", + "bytes": 7411 }, { "path": ".github/workflows/token-report.yml", @@ -4329,8 +4180,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "932806ffa1d2b9b1b6053068a907c1574cc8701365201f055438272261d49486", - "bytes": 65378 + "sha256": "bc342f0e98ae95e3128b58f9e4780d594de38b1753fb9af28799a353a3f7961c", + "bytes": 63199 }, { "path": "adoption/credential-inventory.json", @@ -4429,8 +4280,8 @@ }, { "path": "adoption/manifest.json", - "sha256": "4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714", - "bytes": 20038 + "sha256": "7bb179e8440be17b75484c21495e66385ea8eb959a491d43d2488056ddede09a", + "bytes": 20102 }, { "path": "adoption/new-wsl-profile.json", @@ -4474,8 +4325,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "f39042b4c9999ae2f1fe7a32b85dc5f555bc845a91d96209925daafe1a2a8eda", - "bytes": 31575 + "sha256": "0dd40eea9c39e1e61ca73c9e8f55cfe0e92106d0af5cd1933318f3bf7a3a31cf", + "bytes": 31759 }, { "path": "adoption/pins-macos-arm64.json", @@ -4489,8 +4340,8 @@ }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "15c8fe95c8484d85fd369f10d7d8723b467f8ed33200576abdc45d4715715889", - "bytes": 26335 + "sha256": "149b05c61320363dca3264f88962019fcd51523dbbc78f1be818a6df9fbd3cba", + "bytes": 25956 }, { "path": "adoption/platforms/macos-arm64.md", @@ -4544,8 +4395,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "5903c20f70bdc9c308020f7f7b5a48f0f2a1a1da71c9260df1c5c86eae5cb9f9", - "bytes": 13239 + "sha256": "e8c900df3e4858098e0fd64687b30831fe1f7d402f7c201cdd4a6ff5f5e7bd35", + "bytes": 13034 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -9865,8 +9716,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "7c4937a35a7ee54d2a4f5b74cbb3ba69b1379e48a1fad4a32084200571365986", - "bytes": 490254 + "sha256": "cafdde5e9aabfbe9d61bc138e4201596e2b0436f978b4dd8a8039eaed70dcd32", + "bytes": 483389 }, { "path": "blueprints/trials-20260926/README.md", @@ -15090,7 +14941,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "a28a218e0927f099b698208b4ac4fc8fbafee240447d633a2c247d619bd73137", + "sha256": "ccf259a9b7bca8cf81cfa0ddfbe5f54e7bc95a073defebc74a28877bfee5f084", "bytes": 34986 }, { @@ -15205,8 +15056,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "2d939cb03f303a0ccf87356a72df9ffe18c8e9649fc8c3bec01100db6c4408be", - "bytes": 287577 + "sha256": "3cb76b4e7cd3d1d122f088bcf5598d5aa51d9699497d8caddf8e35d5f55c2778", + "bytes": 287704 }, { "path": "catalogs/landscape/research-state.json", @@ -15215,8 +15066,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "26c021f065f577637368db1b42c7f34cd9ec30ae89ae4179f18337677004b85e", - "bytes": 290085 + "sha256": "2217a36d560e887b651aaf57028580175e1644c45134c6ef3d8208913998b02c", + "bytes": 251264 }, { "path": "catalogs/landscape/us-equities.json", @@ -15675,8 +15526,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "4580fc567fb070eedb63ec252cb76512af14c604ba7ba3e33f430853954658f8", - "bytes": 56365 + "sha256": "6a86756198376a5ad58c8a64c21ba4fe070ef7d780e0f1e4dfc845f8c76c5836", + "bytes": 56050 }, { "path": "docs/comparison-progress-20260922.md", @@ -15953,11 +15804,6 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, - { - "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "3d2a68ddd68cb13ae3a0363f6e77721a585d76b16a3991b22c921a37f1986882", - "bytes": 29683 - }, { "path": "docs/direct-results.md", "sha256": "12a511fee11f22c90b9b622701d5485be9c8247167102b5768d694244f939a5b", @@ -16040,8 +15886,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "f6cce9905dc4e182ab7106be523ba8caf4622d1cf976ae8ae379399996c006ef", - "bytes": 40049 + "sha256": "5a20461ffdd76482f30e8beb0f5ea670ccc53dc656931c5de91ec2dd2c80cea8", + "bytes": 39778 }, { "path": "docs/full-stack-convergence.md", @@ -16080,7 +15926,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "0be30dfc5ac8c20164b43c7789e73535b902f01a07490604505d39cacfd36c68", + "sha256": "6b6f18fc90f4252837cb7af82c8d25e97fdaeecfb8003931650bda272258a77a", "bytes": 97961 }, { @@ -16210,8 +16056,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "02c9ae5e193d3b759d4036b3b10a77019ee6a0d14bcddd28b23c750825fab68f", - "bytes": 18484 + "sha256": "245c7942ca34c078ddb8adc0d8a845efee8f42ea35e0fc4709175a14a9d79abb", + "bytes": 18483 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -16320,8 +16166,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "ee51bbd55ab98e55b72fa91647a6adcee036a8ea6da695144f0a896b32e82736", - "bytes": 587562 + "sha256": "b43af443e3ec7dd81efe16f7adc6ead8fe99a4748bc59a541f8ca8696799b80e", + "bytes": 587560 }, { "path": "docs/token-efficiency-stack.md", @@ -16340,7 +16186,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "2b775aac29cd7967924baeb874bccc35e7804c728792489ea340b24743a51a09", + "sha256": "caf81fa3aa0fa3e662e1807869331dc024ca787233a4844a0eca3e92e4ea46d6", "bytes": 90785 }, { @@ -17953,41 +17799,6 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", - "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", - "bytes": 108109 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", - "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", - "bytes": 13041 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", - "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", - "bytes": 28233 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", - "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", - "bytes": 18135 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", - "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", - "bytes": 74214 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", - "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", - "bytes": 121015 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", - "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", - "bytes": 26125 - }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -48053,11 +47864,6 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, - { - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", - "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", - "bytes": 10611 - }, { "path": "evidence/receipts/claude-max-default-effort-20260929.json", "sha256": "d6b3ee54f8620e28b029fe0a45f4139a57b5ae03a49c3620121ba420e49bac12", @@ -48248,11 +48054,6 @@ "sha256": "0d32534357501c011298420c07161c59940929cabd00a9b71d5d7817126f88c9", "bytes": 17126 }, - { - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", - "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", - "bytes": 8187 - }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -48278,21 +48079,11 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, - { - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", - "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", - "bytes": 10165 - }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, - { - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", - "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", - "bytes": 10463 - }, { "path": "evidence/receipts/memory-landscape-20260921.json", "sha256": "6a31608a721b3561ebf5daf59d0363cda7ef563777f47e3e2f64e16fca24a948", @@ -48543,11 +48334,6 @@ "sha256": "0f6a0c171872cde9689d9d5f2ff60b881ae2328b96769dc78613f625cf9d1017", "bytes": 16128 }, - { - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", - "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", - "bytes": 7517 - }, { "path": "evidence/receipts/osv-oauthlib-pyjwt-reachability-20260929.json", "sha256": "f89e3a45ac10d44d00c268cc617c1fb7b5f77636fb1150af3c9e7bf4b26441ef", @@ -48568,21 +48354,11 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, - { - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", - "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", - "bytes": 6732 - }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, - { - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", - "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", - "bytes": 7731 - }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -48643,11 +48419,6 @@ "sha256": "24be77b12057c9cc7d29d0edbd0ba8af5005ceff82c2f1b1ffe34e5c424d1ab2", "bytes": 4906 }, - { - "path": "evidence/receipts/syft-1540-qualification-20261003.json", - "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", - "bytes": 7946 - }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -48723,11 +48494,6 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, - { - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", - "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", - "bytes": 6655 - }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -49090,18 +48856,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", + "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "51c40b98bd8502bcf664585a271246126d9f750ef369aa57f1b9fc73ddc5a0c1", - "bytes": 103387 + "sha256": "b10693331a67883d86a47ec40b6345f5f48d80aa287a991e20df4b40355ed72a", + "bytes": 100006 }, { "path": "observability/README.md", - "sha256": "721b99df7babd5288f62a260910e0d7d704e103e2fa57a7d8797426971b2a508", - "bytes": 15861 + "sha256": "c4fd4a7d69704bd51edf9e1eff5e14c96a5eb9938fdd55f18aaa99ec47b30d94", + "bytes": 15457 }, { "path": "observability/backends/README.md", @@ -49200,8 +48966,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "3bc79d96a798b25d00b458094a27c5f9c08b195012c6796578f951d59b6d21e1", - "bytes": 42556 + "sha256": "6e476fbf535971627466ec7b39b99b1952d938464ab894c231d59e7c0e2f0f55", + "bytes": 41579 }, { "path": "observability/collector/claude-settings.json.example", @@ -49358,11 +49124,6 @@ "sha256": "ec68f05a9dea2c8d3e37888b2928760bd085ce1567bcdd09145e82a6196fb68b", "bytes": 29140 }, - { - "path": "observability/paper-trading-live/collector-paper-trading.yaml", - "sha256": "638dd84ff0ed6cae40bfe5c53922e9f57f80ac44fc10b99d76e23432eaf2f4bf", - "bytes": 2942 - }, { "path": "observability/receipt.json", "sha256": "22a7c2d84e16af7dcb2e0fe911845754a7585fc2ce06fb13adec3aee693030b4", @@ -49380,8 +49141,8 @@ }, { "path": "recipes/README.md", - "sha256": "816386cde96d3ee55c62942822fab79c3bd0d23e4eaa8fd9bb6989d311b95d1e", - "bytes": 128375 + "sha256": "2961a95fe20b829b92a9a01812bf6aa240955378674d1ee7afc8e4df727cc041", + "bytes": 124550 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -49405,8 +49166,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", - "bytes": 6586 + "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", + "bytes": 5706 }, { "path": "recipes/saturation-sweep.md", @@ -49500,7 +49261,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "03307274bb4891465267cc617aa81e0863ed7fb7ba0c5632c7bbcb3d0513bf44", + "sha256": "df9d794668e8942a053cc3c76f2cb5e063c55671f286abdb14788b3dde04737b", "bytes": 114715 }, { @@ -49840,8 +49601,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", - "bytes": 52214 + "sha256": "ad1cde3c41739de6fc54af2eee6670ff42c7654628731fd150b3f83d5740a1f1", + "bytes": 52212 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -50365,18 +50126,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", - "bytes": 34441 + "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", + "bytes": 34089 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "665887ccc447ea4105fd16459b265662132b72511516f5c9c8f6da075ea79fb2", - "bytes": 24721 + "sha256": "a6c2324600d817f1fdff5975f713fbd65d08735cc0410001211ff7ae98c07526", + "bytes": 24367 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "6e247ddf08daae8a7bd85eba43f28e22158f7d0d26e4236b357392a7d56be9b8", - "bytes": 31223 + "sha256": "ef64ba46907134593f0c05ea9376820f1524ccffc465396746c5a329920a91f4", + "bytes": 30907 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -50475,8 +50236,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "e5a57a8b6331514515f3e81733eca9ca9164eff83f2a3d2fd7731ddbdbf1e15c", - "bytes": 45807 + "sha256": "6f1ecd5731cb676c0b50ee54a15375eeea4858742b460723046211b756ea3448", + "bytes": 43257 }, { "path": "tests/test_research_efficiency.py", @@ -50515,8 +50276,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", - "bytes": 9774 + "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", + "bytes": 9712 }, { "path": "tests/test_secret_path_guard.py", @@ -51220,7 +50981,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "56ffe669a67dae185d7de23e270e53c420f9b346198913e1073fa9341e43a8be", + "sha256": "d1f538abf502fc3575991144ea15f72fc93eae0fd67393fb5edc8be007f28d87", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 02cba4470..9dc22bcff 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -242,8 +242,8 @@ }, { "id": "claude-hud", - "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0", - "version": "0.10.0", + "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0", + "version": "0.8.0", "license": "MIT", "profile": "optional", "role": "Claude statusline rendering", @@ -259,14 +259,13 @@ "token-practice-gap-followup-20260920", "native-claude-hud-interactive-20260920", "current-session-observation-20260920", - "claude-repository-evidence-20260921", - "claude-hud-0100-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0" + "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0" ], - "source_pin": "75683c6de1ac07f6bbef00d739001679dba0740c", - "freshness": "2026-10-03 W1 scratch qualification: The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.8.0 receipts retain their original scope.", + "source_pin": null, + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core.", "command_scope": "Metadata/help/setup reference only; historical functional evidence retained separately. See native recipe for selected live workflow." }, @@ -602,27 +601,26 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.9.0", - "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.8.0", + "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.9.0 --help" + "npx @modelcontextprotocol/inspector@2.8.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926", - "mcp-inspector-290-qualification-20261003" + "mcp-inspector-280-qualification-20260926" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", + "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -653,7 +651,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.15", + "version": "0.2.7", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -668,20 +666,19 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "openresearch-0215-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" ], - "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", - "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." + "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", + "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -693,15 +690,13 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921", - "playwright-cli-0122-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli", - "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" + "https://github.com/microsoft/playwright-cli" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", + "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1065,7 +1060,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.80.0", + "version": "0.79.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1080,21 +1075,20 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "worktrunk-0800-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" ], - "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", + "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.162.0", + "version": "0.161.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1114,15 +1108,13 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "otelcol-contrib-0162-qualification-20261003" + "claude-repository-evidence-20260921" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" + "https://github.com/open-telemetry/opentelemetry-collector-contrib" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "prometheus", @@ -1405,10 +1397,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.54.0", + "version": "1.52.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", + "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1417,14 +1409,13 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921", - "syft-1540-qualification-20261003" + "claude-repository-evidence-20260921" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.54.0" + "https://github.com/anchore/syft/releases/tag/v1.52.0" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." + "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." }, { "id": "alpaca-py", @@ -1687,7 +1678,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.327", + "version": "1.108.319", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1700,7 +1691,7 @@ } } ], - "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1713,14 +1704,13 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "jcodemunch-1108327-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", - "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", + "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", + "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From c7677e1ce7ec334c67386e3d5a47048c25f3c2b1 Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 08:48:44 -0400 Subject: [PATCH 10/50] Shared hot files last: this PR's manifests/stack.json rows and evidence registry (hot-file protocol) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 351 +++++++++++++++++++++++++++++++++------- manifests/stack.json | 92 ++++++----- 2 files changed, 346 insertions(+), 97 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 346133a24..6ae29938a 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -3900,6 +3900,155 @@ "The earlier final-native-scan-record.json remains historical output for its bound earlier workflow/config. completion-native-record.json records the strengthened partition, shortened 2026-10-17 expiry, fresh active/expired controls and 161-test run; neither is an unchanged upstream test suite. The first completion validation failed on a stale hash row for an already-empty output and is retained, with the corrected diagnosis in publication-correction.md." ], "path": "evidence/receipts/wsl-retrieval-retirement-20261003.json" + }, + { + "id": "jcodemunch-1108327-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "jcodemunch-mcp" + ], + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", + "limitations": [ + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" + }, + { + "id": "playwright-cli-0122-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "playwright-cli" + ], + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "limitations": [ + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + }, + { + "id": "openresearch-0215-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "openresearch" + ], + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "limitations": [ + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + }, + { + "id": "mcp-inspector-290-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "mcp-inspector" + ], + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "limitations": [ + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + }, + { + "id": "claude-hud-0100-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-hud" + ], + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "limitations": [ + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + }, + { + "id": "otelcol-contrib-0162-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "opentelemetry-collector-contrib" + ], + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "limitations": [ + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + }, + { + "id": "worktrunk-0800-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "worktrunk" + ], + "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", + "limitations": [ + "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", + "The host installation and rollback launcher were not switched.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" + }, + { + "id": "mcporter-0142-qualification-20261003", + "kind": "compatibility_attempt", + "component_ids": [ + "mcporter" + ], + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", + "limitations": [ + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + }, + { + "id": "syft-1540-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "syft" + ], + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "limitations": [ + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/syft-1540-qualification-20261003.json" } ], "files": [ @@ -3985,7 +4134,7 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "d4ea05b0beefc85d06d4fe25cab6fda8697bf68ccda35df6770816c478099357", + "sha256": "0c4616481072b9c38078e17dac4c87a09508a04d1f2dee771a91fc8c77323f15", "bytes": 24184 }, { @@ -4020,7 +4169,7 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "6e3212ba3134a62b27bc4d24129a3054a0f94263c0c0f148af94456152fd00c1", + "sha256": "e6341c41b5bcc49971dc490a42b3c16f396b35d432cee5e443d2f5a20eec6cf4", "bytes": 19723 }, { @@ -4035,8 +4184,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "a752c1be5c7e73642085b3fd91f3e97c4b42167dbe5b3452b2bd1191652e9c24", - "bytes": 7411 + "sha256": "4688fbcd032ef2f74e72d61945e1f2ab3f707f53e04a1ce8c296b32f8ef504ec", + "bytes": 7424 }, { "path": ".github/workflows/token-report.yml", @@ -4180,8 +4329,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "bc342f0e98ae95e3128b58f9e4780d594de38b1753fb9af28799a353a3f7961c", - "bytes": 63199 + "sha256": "932806ffa1d2b9b1b6053068a907c1574cc8701365201f055438272261d49486", + "bytes": 65378 }, { "path": "adoption/credential-inventory.json", @@ -4280,8 +4429,8 @@ }, { "path": "adoption/manifest.json", - "sha256": "7bb179e8440be17b75484c21495e66385ea8eb959a491d43d2488056ddede09a", - "bytes": 20102 + "sha256": "4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714", + "bytes": 20038 }, { "path": "adoption/new-wsl-profile.json", @@ -4325,8 +4474,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "0dd40eea9c39e1e61ca73c9e8f55cfe0e92106d0af5cd1933318f3bf7a3a31cf", - "bytes": 31759 + "sha256": "f39042b4c9999ae2f1fe7a32b85dc5f555bc845a91d96209925daafe1a2a8eda", + "bytes": 31575 }, { "path": "adoption/pins-macos-arm64.json", @@ -4340,8 +4489,8 @@ }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "149b05c61320363dca3264f88962019fcd51523dbbc78f1be818a6df9fbd3cba", - "bytes": 25956 + "sha256": "15c8fe95c8484d85fd369f10d7d8723b467f8ed33200576abdc45d4715715889", + "bytes": 26335 }, { "path": "adoption/platforms/macos-arm64.md", @@ -4395,8 +4544,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "e8c900df3e4858098e0fd64687b30831fe1f7d402f7c201cdd4a6ff5f5e7bd35", - "bytes": 13034 + "sha256": "5903c20f70bdc9c308020f7f7b5a48f0f2a1a1da71c9260df1c5c86eae5cb9f9", + "bytes": 13239 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -9716,8 +9865,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "cafdde5e9aabfbe9d61bc138e4201596e2b0436f978b4dd8a8039eaed70dcd32", - "bytes": 483389 + "sha256": "7c4937a35a7ee54d2a4f5b74cbb3ba69b1379e48a1fad4a32084200571365986", + "bytes": 490254 }, { "path": "blueprints/trials-20260926/README.md", @@ -14941,7 +15090,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "ccf259a9b7bca8cf81cfa0ddfbe5f54e7bc95a073defebc74a28877bfee5f084", + "sha256": "a28a218e0927f099b698208b4ac4fc8fbafee240447d633a2c247d619bd73137", "bytes": 34986 }, { @@ -15056,8 +15205,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "3cb76b4e7cd3d1d122f088bcf5598d5aa51d9699497d8caddf8e35d5f55c2778", - "bytes": 287704 + "sha256": "2d939cb03f303a0ccf87356a72df9ffe18c8e9649fc8c3bec01100db6c4408be", + "bytes": 287577 }, { "path": "catalogs/landscape/research-state.json", @@ -15066,8 +15215,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "2217a36d560e887b651aaf57028580175e1644c45134c6ef3d8208913998b02c", - "bytes": 251264 + "sha256": "26c021f065f577637368db1b42c7f34cd9ec30ae89ae4179f18337677004b85e", + "bytes": 290085 }, { "path": "catalogs/landscape/us-equities.json", @@ -15526,8 +15675,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "6a86756198376a5ad58c8a64c21ba4fe070ef7d780e0f1e4dfc845f8c76c5836", - "bytes": 56050 + "sha256": "4580fc567fb070eedb63ec252cb76512af14c604ba7ba3e33f430853954658f8", + "bytes": 56365 }, { "path": "docs/comparison-progress-20260922.md", @@ -15804,6 +15953,11 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, + { + "path": "docs/decisions/2026-10-03-currency-wave-w1.md", + "sha256": "3d2a68ddd68cb13ae3a0363f6e77721a585d76b16a3991b22c921a37f1986882", + "bytes": 29683 + }, { "path": "docs/direct-results.md", "sha256": "12a511fee11f22c90b9b622701d5485be9c8247167102b5768d694244f939a5b", @@ -15886,8 +16040,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "5a20461ffdd76482f30e8beb0f5ea670ccc53dc656931c5de91ec2dd2c80cea8", - "bytes": 39778 + "sha256": "f6cce9905dc4e182ab7106be523ba8caf4622d1cf976ae8ae379399996c006ef", + "bytes": 40049 }, { "path": "docs/full-stack-convergence.md", @@ -15926,7 +16080,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "6b6f18fc90f4252837cb7af82c8d25e97fdaeecfb8003931650bda272258a77a", + "sha256": "0be30dfc5ac8c20164b43c7789e73535b902f01a07490604505d39cacfd36c68", "bytes": 97961 }, { @@ -16056,8 +16210,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "245c7942ca34c078ddb8adc0d8a845efee8f42ea35e0fc4709175a14a9d79abb", - "bytes": 18483 + "sha256": "02c9ae5e193d3b759d4036b3b10a77019ee6a0d14bcddd28b23c750825fab68f", + "bytes": 18484 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -16166,8 +16320,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "b43af443e3ec7dd81efe16f7adc6ead8fe99a4748bc59a541f8ca8696799b80e", - "bytes": 587560 + "sha256": "ee51bbd55ab98e55b72fa91647a6adcee036a8ea6da695144f0a896b32e82736", + "bytes": 587562 }, { "path": "docs/token-efficiency-stack.md", @@ -16186,7 +16340,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "caf81fa3aa0fa3e662e1807869331dc024ca787233a4844a0eca3e92e4ea46d6", + "sha256": "2b775aac29cd7967924baeb874bccc35e7804c728792489ea340b24743a51a09", "bytes": 90785 }, { @@ -17799,6 +17953,41 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", + "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", + "bytes": 108109 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", + "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", + "bytes": 13041 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", + "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", + "bytes": 28233 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", + "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", + "bytes": 18135 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", + "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", + "bytes": 74214 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", + "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", + "bytes": 121015 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", + "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", + "bytes": 26125 + }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -47864,6 +48053,11 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, + { + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", + "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", + "bytes": 10611 + }, { "path": "evidence/receipts/claude-max-default-effort-20260929.json", "sha256": "d6b3ee54f8620e28b029fe0a45f4139a57b5ae03a49c3620121ba420e49bac12", @@ -48054,6 +48248,11 @@ "sha256": "0d32534357501c011298420c07161c59940929cabd00a9b71d5d7817126f88c9", "bytes": 17126 }, + { + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", + "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", + "bytes": 8187 + }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -48079,11 +48278,21 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, + { + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", + "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", + "bytes": 10165 + }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, + { + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", + "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", + "bytes": 10463 + }, { "path": "evidence/receipts/memory-landscape-20260921.json", "sha256": "6a31608a721b3561ebf5daf59d0363cda7ef563777f47e3e2f64e16fca24a948", @@ -48334,6 +48543,11 @@ "sha256": "0f6a0c171872cde9689d9d5f2ff60b881ae2328b96769dc78613f625cf9d1017", "bytes": 16128 }, + { + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", + "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", + "bytes": 7517 + }, { "path": "evidence/receipts/osv-oauthlib-pyjwt-reachability-20260929.json", "sha256": "f89e3a45ac10d44d00c268cc617c1fb7b5f77636fb1150af3c9e7bf4b26441ef", @@ -48354,11 +48568,21 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, + { + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", + "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", + "bytes": 6732 + }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, + { + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", + "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", + "bytes": 7731 + }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -48419,6 +48643,11 @@ "sha256": "24be77b12057c9cc7d29d0edbd0ba8af5005ceff82c2f1b1ffe34e5c424d1ab2", "bytes": 4906 }, + { + "path": "evidence/receipts/syft-1540-qualification-20261003.json", + "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", + "bytes": 7946 + }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -48494,6 +48723,11 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, + { + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", + "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", + "bytes": 6655 + }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -48856,18 +49090,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", + "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "b10693331a67883d86a47ec40b6345f5f48d80aa287a991e20df4b40355ed72a", - "bytes": 100006 + "sha256": "51c40b98bd8502bcf664585a271246126d9f750ef369aa57f1b9fc73ddc5a0c1", + "bytes": 103387 }, { "path": "observability/README.md", - "sha256": "c4fd4a7d69704bd51edf9e1eff5e14c96a5eb9938fdd55f18aaa99ec47b30d94", - "bytes": 15457 + "sha256": "721b99df7babd5288f62a260910e0d7d704e103e2fa57a7d8797426971b2a508", + "bytes": 15861 }, { "path": "observability/backends/README.md", @@ -48966,8 +49200,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "6e476fbf535971627466ec7b39b99b1952d938464ab894c231d59e7c0e2f0f55", - "bytes": 41579 + "sha256": "3bc79d96a798b25d00b458094a27c5f9c08b195012c6796578f951d59b6d21e1", + "bytes": 42556 }, { "path": "observability/collector/claude-settings.json.example", @@ -49124,6 +49358,11 @@ "sha256": "ec68f05a9dea2c8d3e37888b2928760bd085ce1567bcdd09145e82a6196fb68b", "bytes": 29140 }, + { + "path": "observability/paper-trading-live/collector-paper-trading.yaml", + "sha256": "638dd84ff0ed6cae40bfe5c53922e9f57f80ac44fc10b99d76e23432eaf2f4bf", + "bytes": 2942 + }, { "path": "observability/receipt.json", "sha256": "22a7c2d84e16af7dcb2e0fe911845754a7585fc2ce06fb13adec3aee693030b4", @@ -49141,8 +49380,8 @@ }, { "path": "recipes/README.md", - "sha256": "2961a95fe20b829b92a9a01812bf6aa240955378674d1ee7afc8e4df727cc041", - "bytes": 124550 + "sha256": "816386cde96d3ee55c62942822fab79c3bd0d23e4eaa8fd9bb6989d311b95d1e", + "bytes": 128375 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -49166,8 +49405,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", - "bytes": 5706 + "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", + "bytes": 6586 }, { "path": "recipes/saturation-sweep.md", @@ -49261,7 +49500,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "df9d794668e8942a053cc3c76f2cb5e063c55671f286abdb14788b3dde04737b", + "sha256": "03307274bb4891465267cc617aa81e0863ed7fb7ba0c5632c7bbcb3d0513bf44", "bytes": 114715 }, { @@ -49601,8 +49840,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "ad1cde3c41739de6fc54af2eee6670ff42c7654628731fd150b3f83d5740a1f1", - "bytes": 52212 + "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", + "bytes": 52214 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -50126,18 +50365,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", - "bytes": 34089 + "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", + "bytes": 34441 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "a6c2324600d817f1fdff5975f713fbd65d08735cc0410001211ff7ae98c07526", - "bytes": 24367 + "sha256": "665887ccc447ea4105fd16459b265662132b72511516f5c9c8f6da075ea79fb2", + "bytes": 24721 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "ef64ba46907134593f0c05ea9376820f1524ccffc465396746c5a329920a91f4", - "bytes": 30907 + "sha256": "6e247ddf08daae8a7bd85eba43f28e22158f7d0d26e4236b357392a7d56be9b8", + "bytes": 31223 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -50236,8 +50475,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "6f1ecd5731cb676c0b50ee54a15375eeea4858742b460723046211b756ea3448", - "bytes": 43257 + "sha256": "e5a57a8b6331514515f3e81733eca9ca9164eff83f2a3d2fd7731ddbdbf1e15c", + "bytes": 45807 }, { "path": "tests/test_research_efficiency.py", @@ -50276,8 +50515,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", - "bytes": 9712 + "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", + "bytes": 9774 }, { "path": "tests/test_secret_path_guard.py", @@ -50981,7 +51220,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "d1f538abf502fc3575991144ea15f72fc93eae0fd67393fb5edc8be007f28d87", + "sha256": "56ffe669a67dae185d7de23e270e53c420f9b346198913e1073fa9341e43a8be", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 9dc22bcff..02cba4470 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -242,8 +242,8 @@ }, { "id": "claude-hud", - "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0", - "version": "0.8.0", + "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0", + "version": "0.10.0", "license": "MIT", "profile": "optional", "role": "Claude statusline rendering", @@ -259,13 +259,14 @@ "token-practice-gap-followup-20260920", "native-claude-hud-interactive-20260920", "current-session-observation-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "claude-hud-0100-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0" + "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0" ], - "source_pin": null, - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "75683c6de1ac07f6bbef00d739001679dba0740c", + "freshness": "2026-10-03 W1 scratch qualification: The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.8.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core.", "command_scope": "Metadata/help/setup reference only; historical functional evidence retained separately. See native recipe for selected live workflow." }, @@ -601,26 +602,27 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.8.0", - "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.9.0", + "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.8.0 --help" + "npx @modelcontextprotocol/inspector@2.9.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926" + "mcp-inspector-280-qualification-20260926", + "mcp-inspector-290-qualification-20261003" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" ], "source_pin": null, - "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -651,7 +653,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.7", + "version": "0.2.15", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -666,19 +668,20 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "openresearch-0215-qualification-20261003" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" ], - "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." + "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", + "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -690,13 +693,15 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "playwright-cli-0122-qualification-20261003" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli" + "https://github.com/microsoft/playwright-cli", + "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" ], "source_pin": null, - "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1060,7 +1065,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.79.0", + "version": "0.80.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1075,20 +1080,21 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "worktrunk-0800-qualification-20261003" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" ], - "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.161.0", + "version": "0.162.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1108,13 +1114,15 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "otelcol-contrib-0162-qualification-20261003" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib" + "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." }, { "id": "prometheus", @@ -1397,10 +1405,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.52.0", + "version": "1.54.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1409,13 +1417,14 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "syft-1540-qualification-20261003" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.52.0" + "https://github.com/anchore/syft/releases/tag/v1.54.0" ], - "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." }, { "id": "alpaca-py", @@ -1678,7 +1687,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.319", + "version": "1.108.327", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1691,7 +1700,7 @@ } } ], - "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1704,13 +1713,14 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "jcodemunch-1108327-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", - "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", + "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" ], - "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 171c359687a3f05a14cc7cae85f6249ea49e9eaf Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 10:04:07 -0400 Subject: [PATCH 11/50] Syft recipe: chain download, checksum, extraction and the first run with && so a failed download or checksum stops before anything is extracted or executed Resolves the Codex root lane's P2 at c7677e1c: the separate commands did not make extraction and execution conditional on a successful checksum when errexit is off. Pinned release, checksum file, versioned prefix and rollback are unchanged. Co-Authored-By: Claude Opus 5.5 --- recipes/README.md | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/recipes/README.md b/recipes/README.md index f6a07a4e4..67f0d7b94 100644 --- a/recipes/README.md +++ b/recipes/README.md @@ -122,15 +122,20 @@ source commit `cc326e45a6213360266dda4b30cc68095946d676`. Download the Linux amd64 archive and its publisher checksums into an explicit scratch directory, check the archive before extracting into a versioned prefix, and invoke that executable directly. These are the native archive and validation -commands retained in the [W1 receipt](../evidence/receipts/syft-1540-qualification-20261003.json): +commands retained in the [W1 receipt](../evidence/receipts/syft-1540-qualification-20261003.json). +The commands are joined with `&&`: each one runs only after the previous one +succeeded. A failed download, a checksum mismatch, or a checksum file that names +no downloaded file (`--ignore-missing` then reports that no file was verified +and exits 1) stops the chain before anything is extracted or executed. The +chain does not depend on the shell's `errexit` setting. ```sh SYFT_W1_DOWNLOAD="$STACK_HOME/downloads/syft-1.54.0" SYFT_W1_PREFIX="$STACK_HOME/tools/syft-1.54.0" -mkdir -p "$SYFT_W1_DOWNLOAD" "$SYFT_W1_PREFIX" -gh release download v1.54.0 --repo anchore/syft --dir "$SYFT_W1_DOWNLOAD" --pattern syft_1.54.0_linux_amd64.tar.gz --pattern syft_1.54.0_checksums.txt -(cd "$SYFT_W1_DOWNLOAD" && sha256sum --check --ignore-missing syft_1.54.0_checksums.txt) -tar --no-same-owner -xzf "$SYFT_W1_DOWNLOAD/syft_1.54.0_linux_amd64.tar.gz" -C "$SYFT_W1_PREFIX" +mkdir -p "$SYFT_W1_DOWNLOAD" "$SYFT_W1_PREFIX" && +gh release download v1.54.0 --repo anchore/syft --dir "$SYFT_W1_DOWNLOAD" --pattern syft_1.54.0_linux_amd64.tar.gz --pattern syft_1.54.0_checksums.txt && +(cd "$SYFT_W1_DOWNLOAD" && sha256sum --check --ignore-missing syft_1.54.0_checksums.txt) && +tar --no-same-owner -xzf "$SYFT_W1_DOWNLOAD/syft_1.54.0_linux_amd64.tar.gz" -C "$SYFT_W1_PREFIX" && "$SYFT_W1_PREFIX/syft" version -o json ``` From 4ea6ef8df492c373d4e8fe96c0da8ab6386c45ef Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 10:04:08 -0400 Subject: [PATCH 12/50] Hot-file protocol: restore main's copies of the shared hot files before this PR's last commit Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 351 +++++++--------------------------------- manifests/stack.json | 92 +++++------ 2 files changed, 97 insertions(+), 346 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 7327667a7..9689e383d 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -3900,155 +3900,6 @@ "The earlier final-native-scan-record.json remains historical output for its bound earlier workflow/config. completion-native-record.json records the strengthened partition, shortened 2026-10-17 expiry, fresh active/expired controls and 161-test run; neither is an unchanged upstream test suite. The first completion validation failed on a stale hash row for an already-empty output and is retained, with the corrected diagnosis in publication-correction.md." ], "path": "evidence/receipts/wsl-retrieval-retirement-20261003.json" - }, - { - "id": "jcodemunch-1108327-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "jcodemunch-mcp" - ], - "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", - "limitations": [ - "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", - "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" - }, - { - "id": "playwright-cli-0122-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "playwright-cli" - ], - "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", - "limitations": [ - "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", - "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", - "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" - }, - { - "id": "openresearch-0215-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "openresearch" - ], - "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", - "limitations": [ - "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", - "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" - }, - { - "id": "mcp-inspector-290-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "mcp-inspector" - ], - "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", - "limitations": [ - "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", - "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", - "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" - }, - { - "id": "claude-hud-0100-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-hud" - ], - "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", - "limitations": [ - "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", - "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", - "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" - }, - { - "id": "otelcol-contrib-0162-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "opentelemetry-collector-contrib" - ], - "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", - "limitations": [ - "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", - "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" - }, - { - "id": "worktrunk-0800-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "worktrunk" - ], - "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", - "limitations": [ - "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", - "The host installation and rollback launcher were not switched.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" - }, - { - "id": "mcporter-0142-qualification-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "mcporter" - ], - "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", - "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", - "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", - "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" - }, - { - "id": "syft-1540-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "syft" - ], - "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", - "limitations": [ - "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", - "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", - "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/syft-1540-qualification-20261003.json" } ], "files": [ @@ -4134,7 +3985,7 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "0c4616481072b9c38078e17dac4c87a09508a04d1f2dee771a91fc8c77323f15", + "sha256": "d4ea05b0beefc85d06d4fe25cab6fda8697bf68ccda35df6770816c478099357", "bytes": 24184 }, { @@ -4169,7 +4020,7 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "e6341c41b5bcc49971dc490a42b3c16f396b35d432cee5e443d2f5a20eec6cf4", + "sha256": "6e3212ba3134a62b27bc4d24129a3054a0f94263c0c0f148af94456152fd00c1", "bytes": 19723 }, { @@ -4184,8 +4035,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "4688fbcd032ef2f74e72d61945e1f2ab3f707f53e04a1ce8c296b32f8ef504ec", - "bytes": 7424 + "sha256": "a752c1be5c7e73642085b3fd91f3e97c4b42167dbe5b3452b2bd1191652e9c24", + "bytes": 7411 }, { "path": ".github/workflows/token-report.yml", @@ -4329,8 +4180,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "932806ffa1d2b9b1b6053068a907c1574cc8701365201f055438272261d49486", - "bytes": 65378 + "sha256": "bc342f0e98ae95e3128b58f9e4780d594de38b1753fb9af28799a353a3f7961c", + "bytes": 63199 }, { "path": "adoption/credential-inventory.json", @@ -4429,8 +4280,8 @@ }, { "path": "adoption/manifest.json", - "sha256": "4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714", - "bytes": 20038 + "sha256": "7bb179e8440be17b75484c21495e66385ea8eb959a491d43d2488056ddede09a", + "bytes": 20102 }, { "path": "adoption/new-wsl-profile.json", @@ -4474,8 +4325,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "f39042b4c9999ae2f1fe7a32b85dc5f555bc845a91d96209925daafe1a2a8eda", - "bytes": 31575 + "sha256": "0dd40eea9c39e1e61ca73c9e8f55cfe0e92106d0af5cd1933318f3bf7a3a31cf", + "bytes": 31759 }, { "path": "adoption/pins-macos-arm64.json", @@ -4489,8 +4340,8 @@ }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "15c8fe95c8484d85fd369f10d7d8723b467f8ed33200576abdc45d4715715889", - "bytes": 26335 + "sha256": "149b05c61320363dca3264f88962019fcd51523dbbc78f1be818a6df9fbd3cba", + "bytes": 25956 }, { "path": "adoption/platforms/macos-arm64.md", @@ -4544,8 +4395,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "5903c20f70bdc9c308020f7f7b5a48f0f2a1a1da71c9260df1c5c86eae5cb9f9", - "bytes": 13239 + "sha256": "e8c900df3e4858098e0fd64687b30831fe1f7d402f7c201cdd4a6ff5f5e7bd35", + "bytes": 13034 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -9865,8 +9716,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "7c4937a35a7ee54d2a4f5b74cbb3ba69b1379e48a1fad4a32084200571365986", - "bytes": 490254 + "sha256": "cafdde5e9aabfbe9d61bc138e4201596e2b0436f978b4dd8a8039eaed70dcd32", + "bytes": 483389 }, { "path": "blueprints/trials-20260926/README.md", @@ -15090,7 +14941,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "a28a218e0927f099b698208b4ac4fc8fbafee240447d633a2c247d619bd73137", + "sha256": "ccf259a9b7bca8cf81cfa0ddfbe5f54e7bc95a073defebc74a28877bfee5f084", "bytes": 34986 }, { @@ -15205,8 +15056,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "2d939cb03f303a0ccf87356a72df9ffe18c8e9649fc8c3bec01100db6c4408be", - "bytes": 287577 + "sha256": "3cb76b4e7cd3d1d122f088bcf5598d5aa51d9699497d8caddf8e35d5f55c2778", + "bytes": 287704 }, { "path": "catalogs/landscape/research-state.json", @@ -15215,8 +15066,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "26c021f065f577637368db1b42c7f34cd9ec30ae89ae4179f18337677004b85e", - "bytes": 290085 + "sha256": "2217a36d560e887b651aaf57028580175e1644c45134c6ef3d8208913998b02c", + "bytes": 251264 }, { "path": "catalogs/landscape/us-equities.json", @@ -15675,8 +15526,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "4580fc567fb070eedb63ec252cb76512af14c604ba7ba3e33f430853954658f8", - "bytes": 56365 + "sha256": "6a86756198376a5ad58c8a64c21ba4fe070ef7d780e0f1e4dfc845f8c76c5836", + "bytes": 56050 }, { "path": "docs/comparison-progress-20260922.md", @@ -15953,11 +15804,6 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, - { - "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "3d2a68ddd68cb13ae3a0363f6e77721a585d76b16a3991b22c921a37f1986882", - "bytes": 29683 - }, { "path": "docs/direct-results.md", "sha256": "12a511fee11f22c90b9b622701d5485be9c8247167102b5768d694244f939a5b", @@ -16040,8 +15886,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "f6cce9905dc4e182ab7106be523ba8caf4622d1cf976ae8ae379399996c006ef", - "bytes": 40049 + "sha256": "5a20461ffdd76482f30e8beb0f5ea670ccc53dc656931c5de91ec2dd2c80cea8", + "bytes": 39778 }, { "path": "docs/full-stack-convergence.md", @@ -16080,7 +15926,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "0be30dfc5ac8c20164b43c7789e73535b902f01a07490604505d39cacfd36c68", + "sha256": "6b6f18fc90f4252837cb7af82c8d25e97fdaeecfb8003931650bda272258a77a", "bytes": 97961 }, { @@ -16210,8 +16056,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "02c9ae5e193d3b759d4036b3b10a77019ee6a0d14bcddd28b23c750825fab68f", - "bytes": 18484 + "sha256": "245c7942ca34c078ddb8adc0d8a845efee8f42ea35e0fc4709175a14a9d79abb", + "bytes": 18483 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -16320,8 +16166,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "ee51bbd55ab98e55b72fa91647a6adcee036a8ea6da695144f0a896b32e82736", - "bytes": 587562 + "sha256": "b43af443e3ec7dd81efe16f7adc6ead8fe99a4748bc59a541f8ca8696799b80e", + "bytes": 587560 }, { "path": "docs/token-efficiency-stack.md", @@ -16340,7 +16186,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "2b775aac29cd7967924baeb874bccc35e7804c728792489ea340b24743a51a09", + "sha256": "caf81fa3aa0fa3e662e1807869331dc024ca787233a4844a0eca3e92e4ea46d6", "bytes": 90785 }, { @@ -17953,41 +17799,6 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", - "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", - "bytes": 108109 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", - "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", - "bytes": 13041 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", - "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", - "bytes": 28233 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", - "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", - "bytes": 18135 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", - "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", - "bytes": 74214 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", - "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", - "bytes": 121015 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", - "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", - "bytes": 26125 - }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -48053,11 +47864,6 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, - { - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", - "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", - "bytes": 10611 - }, { "path": "evidence/receipts/claude-max-default-effort-20260929.json", "sha256": "d6b3ee54f8620e28b029fe0a45f4139a57b5ae03a49c3620121ba420e49bac12", @@ -48248,11 +48054,6 @@ "sha256": "0d32534357501c011298420c07161c59940929cabd00a9b71d5d7817126f88c9", "bytes": 17126 }, - { - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", - "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", - "bytes": 8187 - }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -48278,21 +48079,11 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, - { - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", - "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", - "bytes": 10165 - }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, - { - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", - "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", - "bytes": 10463 - }, { "path": "evidence/receipts/memory-landscape-20260921.json", "sha256": "6a31608a721b3561ebf5daf59d0363cda7ef563777f47e3e2f64e16fca24a948", @@ -48543,11 +48334,6 @@ "sha256": "0f6a0c171872cde9689d9d5f2ff60b881ae2328b96769dc78613f625cf9d1017", "bytes": 16128 }, - { - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", - "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", - "bytes": 7517 - }, { "path": "evidence/receipts/osv-oauthlib-pyjwt-reachability-20260929.json", "sha256": "f89e3a45ac10d44d00c268cc617c1fb7b5f77636fb1150af3c9e7bf4b26441ef", @@ -48568,21 +48354,11 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, - { - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", - "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", - "bytes": 6732 - }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, - { - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", - "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", - "bytes": 7731 - }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -48643,11 +48419,6 @@ "sha256": "24be77b12057c9cc7d29d0edbd0ba8af5005ceff82c2f1b1ffe34e5c424d1ab2", "bytes": 4906 }, - { - "path": "evidence/receipts/syft-1540-qualification-20261003.json", - "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", - "bytes": 7946 - }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -48723,11 +48494,6 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, - { - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", - "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", - "bytes": 6655 - }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -49090,18 +48856,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", + "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "51c40b98bd8502bcf664585a271246126d9f750ef369aa57f1b9fc73ddc5a0c1", - "bytes": 103387 + "sha256": "b10693331a67883d86a47ec40b6345f5f48d80aa287a991e20df4b40355ed72a", + "bytes": 100006 }, { "path": "observability/README.md", - "sha256": "721b99df7babd5288f62a260910e0d7d704e103e2fa57a7d8797426971b2a508", - "bytes": 15861 + "sha256": "c4fd4a7d69704bd51edf9e1eff5e14c96a5eb9938fdd55f18aaa99ec47b30d94", + "bytes": 15457 }, { "path": "observability/backends/README.md", @@ -49200,8 +48966,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "3bc79d96a798b25d00b458094a27c5f9c08b195012c6796578f951d59b6d21e1", - "bytes": 42556 + "sha256": "6e476fbf535971627466ec7b39b99b1952d938464ab894c231d59e7c0e2f0f55", + "bytes": 41579 }, { "path": "observability/collector/claude-settings.json.example", @@ -49358,11 +49124,6 @@ "sha256": "ec68f05a9dea2c8d3e37888b2928760bd085ce1567bcdd09145e82a6196fb68b", "bytes": 29140 }, - { - "path": "observability/paper-trading-live/collector-paper-trading.yaml", - "sha256": "638dd84ff0ed6cae40bfe5c53922e9f57f80ac44fc10b99d76e23432eaf2f4bf", - "bytes": 2942 - }, { "path": "observability/receipt.json", "sha256": "22a7c2d84e16af7dcb2e0fe911845754a7585fc2ce06fb13adec3aee693030b4", @@ -49380,8 +49141,8 @@ }, { "path": "recipes/README.md", - "sha256": "816386cde96d3ee55c62942822fab79c3bd0d23e4eaa8fd9bb6989d311b95d1e", - "bytes": 128375 + "sha256": "2961a95fe20b829b92a9a01812bf6aa240955378674d1ee7afc8e4df727cc041", + "bytes": 124550 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -49405,8 +49166,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", - "bytes": 6586 + "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", + "bytes": 5706 }, { "path": "recipes/saturation-sweep.md", @@ -49500,7 +49261,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "03307274bb4891465267cc617aa81e0863ed7fb7ba0c5632c7bbcb3d0513bf44", + "sha256": "df9d794668e8942a053cc3c76f2cb5e063c55671f286abdb14788b3dde04737b", "bytes": 114715 }, { @@ -49840,8 +49601,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", - "bytes": 52214 + "sha256": "ad1cde3c41739de6fc54af2eee6670ff42c7654628731fd150b3f83d5740a1f1", + "bytes": 52212 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -50365,18 +50126,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", - "bytes": 34441 + "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", + "bytes": 34089 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "665887ccc447ea4105fd16459b265662132b72511516f5c9c8f6da075ea79fb2", - "bytes": 24721 + "sha256": "a6c2324600d817f1fdff5975f713fbd65d08735cc0410001211ff7ae98c07526", + "bytes": 24367 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "6e247ddf08daae8a7bd85eba43f28e22158f7d0d26e4236b357392a7d56be9b8", - "bytes": 31223 + "sha256": "ef64ba46907134593f0c05ea9376820f1524ccffc465396746c5a329920a91f4", + "bytes": 30907 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -50475,8 +50236,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "e5a57a8b6331514515f3e81733eca9ca9164eff83f2a3d2fd7731ddbdbf1e15c", - "bytes": 45807 + "sha256": "6f1ecd5731cb676c0b50ee54a15375eeea4858742b460723046211b756ea3448", + "bytes": 43257 }, { "path": "tests/test_research_efficiency.py", @@ -50515,8 +50276,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", - "bytes": 9774 + "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", + "bytes": 9712 }, { "path": "tests/test_secret_path_guard.py", @@ -51220,7 +50981,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "56ffe669a67dae185d7de23e270e53c420f9b346198913e1073fa9341e43a8be", + "sha256": "d1f538abf502fc3575991144ea15f72fc93eae0fd67393fb5edc8be007f28d87", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 02cba4470..9dc22bcff 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -242,8 +242,8 @@ }, { "id": "claude-hud", - "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0", - "version": "0.10.0", + "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0", + "version": "0.8.0", "license": "MIT", "profile": "optional", "role": "Claude statusline rendering", @@ -259,14 +259,13 @@ "token-practice-gap-followup-20260920", "native-claude-hud-interactive-20260920", "current-session-observation-20260920", - "claude-repository-evidence-20260921", - "claude-hud-0100-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0" + "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0" ], - "source_pin": "75683c6de1ac07f6bbef00d739001679dba0740c", - "freshness": "2026-10-03 W1 scratch qualification: The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.8.0 receipts retain their original scope.", + "source_pin": null, + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core.", "command_scope": "Metadata/help/setup reference only; historical functional evidence retained separately. See native recipe for selected live workflow." }, @@ -602,27 +601,26 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.9.0", - "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.8.0", + "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.9.0 --help" + "npx @modelcontextprotocol/inspector@2.8.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926", - "mcp-inspector-290-qualification-20261003" + "mcp-inspector-280-qualification-20260926" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", + "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -653,7 +651,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.15", + "version": "0.2.7", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -668,20 +666,19 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "openresearch-0215-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" ], - "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", - "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." + "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", + "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -693,15 +690,13 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921", - "playwright-cli-0122-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli", - "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" + "https://github.com/microsoft/playwright-cli" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", + "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1065,7 +1060,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.80.0", + "version": "0.79.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1080,21 +1075,20 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "worktrunk-0800-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" ], - "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", + "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.162.0", + "version": "0.161.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1114,15 +1108,13 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "otelcol-contrib-0162-qualification-20261003" + "claude-repository-evidence-20260921" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" + "https://github.com/open-telemetry/opentelemetry-collector-contrib" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "prometheus", @@ -1405,10 +1397,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.54.0", + "version": "1.52.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", + "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1417,14 +1409,13 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921", - "syft-1540-qualification-20261003" + "claude-repository-evidence-20260921" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.54.0" + "https://github.com/anchore/syft/releases/tag/v1.52.0" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." + "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." }, { "id": "alpaca-py", @@ -1687,7 +1678,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.327", + "version": "1.108.319", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1700,7 +1691,7 @@ } } ], - "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1713,14 +1704,13 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "jcodemunch-1108327-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", - "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", + "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", + "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 587c89d677e47ac0885e564910a6e42ffa1b2f2f Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 10:04:08 -0400 Subject: [PATCH 13/50] Shared hot files last: this PR's manifests/stack.json rows and evidence registry (hot-file protocol) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 351 +++++++++++++++++++++++++++++++++------- manifests/stack.json | 92 ++++++----- 2 files changed, 346 insertions(+), 97 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 9689e383d..916a5d0d9 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -3900,6 +3900,155 @@ "The earlier final-native-scan-record.json remains historical output for its bound earlier workflow/config. completion-native-record.json records the strengthened partition, shortened 2026-10-17 expiry, fresh active/expired controls and 161-test run; neither is an unchanged upstream test suite. The first completion validation failed on a stale hash row for an already-empty output and is retained, with the corrected diagnosis in publication-correction.md." ], "path": "evidence/receipts/wsl-retrieval-retirement-20261003.json" + }, + { + "id": "jcodemunch-1108327-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "jcodemunch-mcp" + ], + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", + "limitations": [ + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" + }, + { + "id": "playwright-cli-0122-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "playwright-cli" + ], + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "limitations": [ + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + }, + { + "id": "openresearch-0215-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "openresearch" + ], + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "limitations": [ + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + }, + { + "id": "mcp-inspector-290-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "mcp-inspector" + ], + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "limitations": [ + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + }, + { + "id": "claude-hud-0100-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-hud" + ], + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "limitations": [ + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + }, + { + "id": "otelcol-contrib-0162-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "opentelemetry-collector-contrib" + ], + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "limitations": [ + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + }, + { + "id": "worktrunk-0800-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "worktrunk" + ], + "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", + "limitations": [ + "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", + "The host installation and rollback launcher were not switched.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" + }, + { + "id": "mcporter-0142-qualification-20261003", + "kind": "compatibility_attempt", + "component_ids": [ + "mcporter" + ], + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", + "limitations": [ + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + }, + { + "id": "syft-1540-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "syft" + ], + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "limitations": [ + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/syft-1540-qualification-20261003.json" } ], "files": [ @@ -3985,7 +4134,7 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "d4ea05b0beefc85d06d4fe25cab6fda8697bf68ccda35df6770816c478099357", + "sha256": "0c4616481072b9c38078e17dac4c87a09508a04d1f2dee771a91fc8c77323f15", "bytes": 24184 }, { @@ -4020,7 +4169,7 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "6e3212ba3134a62b27bc4d24129a3054a0f94263c0c0f148af94456152fd00c1", + "sha256": "e6341c41b5bcc49971dc490a42b3c16f396b35d432cee5e443d2f5a20eec6cf4", "bytes": 19723 }, { @@ -4035,8 +4184,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "a752c1be5c7e73642085b3fd91f3e97c4b42167dbe5b3452b2bd1191652e9c24", - "bytes": 7411 + "sha256": "4688fbcd032ef2f74e72d61945e1f2ab3f707f53e04a1ce8c296b32f8ef504ec", + "bytes": 7424 }, { "path": ".github/workflows/token-report.yml", @@ -4180,8 +4329,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "bc342f0e98ae95e3128b58f9e4780d594de38b1753fb9af28799a353a3f7961c", - "bytes": 63199 + "sha256": "932806ffa1d2b9b1b6053068a907c1574cc8701365201f055438272261d49486", + "bytes": 65378 }, { "path": "adoption/credential-inventory.json", @@ -4280,8 +4429,8 @@ }, { "path": "adoption/manifest.json", - "sha256": "7bb179e8440be17b75484c21495e66385ea8eb959a491d43d2488056ddede09a", - "bytes": 20102 + "sha256": "4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714", + "bytes": 20038 }, { "path": "adoption/new-wsl-profile.json", @@ -4325,8 +4474,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "0dd40eea9c39e1e61ca73c9e8f55cfe0e92106d0af5cd1933318f3bf7a3a31cf", - "bytes": 31759 + "sha256": "f39042b4c9999ae2f1fe7a32b85dc5f555bc845a91d96209925daafe1a2a8eda", + "bytes": 31575 }, { "path": "adoption/pins-macos-arm64.json", @@ -4340,8 +4489,8 @@ }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "149b05c61320363dca3264f88962019fcd51523dbbc78f1be818a6df9fbd3cba", - "bytes": 25956 + "sha256": "15c8fe95c8484d85fd369f10d7d8723b467f8ed33200576abdc45d4715715889", + "bytes": 26335 }, { "path": "adoption/platforms/macos-arm64.md", @@ -4395,8 +4544,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "e8c900df3e4858098e0fd64687b30831fe1f7d402f7c201cdd4a6ff5f5e7bd35", - "bytes": 13034 + "sha256": "5903c20f70bdc9c308020f7f7b5a48f0f2a1a1da71c9260df1c5c86eae5cb9f9", + "bytes": 13239 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -9716,8 +9865,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "cafdde5e9aabfbe9d61bc138e4201596e2b0436f978b4dd8a8039eaed70dcd32", - "bytes": 483389 + "sha256": "7c4937a35a7ee54d2a4f5b74cbb3ba69b1379e48a1fad4a32084200571365986", + "bytes": 490254 }, { "path": "blueprints/trials-20260926/README.md", @@ -14941,7 +15090,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "ccf259a9b7bca8cf81cfa0ddfbe5f54e7bc95a073defebc74a28877bfee5f084", + "sha256": "a28a218e0927f099b698208b4ac4fc8fbafee240447d633a2c247d619bd73137", "bytes": 34986 }, { @@ -15056,8 +15205,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "3cb76b4e7cd3d1d122f088bcf5598d5aa51d9699497d8caddf8e35d5f55c2778", - "bytes": 287704 + "sha256": "2d939cb03f303a0ccf87356a72df9ffe18c8e9649fc8c3bec01100db6c4408be", + "bytes": 287577 }, { "path": "catalogs/landscape/research-state.json", @@ -15066,8 +15215,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "2217a36d560e887b651aaf57028580175e1644c45134c6ef3d8208913998b02c", - "bytes": 251264 + "sha256": "26c021f065f577637368db1b42c7f34cd9ec30ae89ae4179f18337677004b85e", + "bytes": 290085 }, { "path": "catalogs/landscape/us-equities.json", @@ -15526,8 +15675,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "6a86756198376a5ad58c8a64c21ba4fe070ef7d780e0f1e4dfc845f8c76c5836", - "bytes": 56050 + "sha256": "4580fc567fb070eedb63ec252cb76512af14c604ba7ba3e33f430853954658f8", + "bytes": 56365 }, { "path": "docs/comparison-progress-20260922.md", @@ -15804,6 +15953,11 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, + { + "path": "docs/decisions/2026-10-03-currency-wave-w1.md", + "sha256": "3d2a68ddd68cb13ae3a0363f6e77721a585d76b16a3991b22c921a37f1986882", + "bytes": 29683 + }, { "path": "docs/direct-results.md", "sha256": "12a511fee11f22c90b9b622701d5485be9c8247167102b5768d694244f939a5b", @@ -15886,8 +16040,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "5a20461ffdd76482f30e8beb0f5ea670ccc53dc656931c5de91ec2dd2c80cea8", - "bytes": 39778 + "sha256": "f6cce9905dc4e182ab7106be523ba8caf4622d1cf976ae8ae379399996c006ef", + "bytes": 40049 }, { "path": "docs/full-stack-convergence.md", @@ -15926,7 +16080,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "6b6f18fc90f4252837cb7af82c8d25e97fdaeecfb8003931650bda272258a77a", + "sha256": "0be30dfc5ac8c20164b43c7789e73535b902f01a07490604505d39cacfd36c68", "bytes": 97961 }, { @@ -16056,8 +16210,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "245c7942ca34c078ddb8adc0d8a845efee8f42ea35e0fc4709175a14a9d79abb", - "bytes": 18483 + "sha256": "02c9ae5e193d3b759d4036b3b10a77019ee6a0d14bcddd28b23c750825fab68f", + "bytes": 18484 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -16166,8 +16320,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "b43af443e3ec7dd81efe16f7adc6ead8fe99a4748bc59a541f8ca8696799b80e", - "bytes": 587560 + "sha256": "ee51bbd55ab98e55b72fa91647a6adcee036a8ea6da695144f0a896b32e82736", + "bytes": 587562 }, { "path": "docs/token-efficiency-stack.md", @@ -16186,7 +16340,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "caf81fa3aa0fa3e662e1807869331dc024ca787233a4844a0eca3e92e4ea46d6", + "sha256": "2b775aac29cd7967924baeb874bccc35e7804c728792489ea340b24743a51a09", "bytes": 90785 }, { @@ -17799,6 +17953,41 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", + "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", + "bytes": 108109 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", + "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", + "bytes": 13041 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", + "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", + "bytes": 28233 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", + "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", + "bytes": 18135 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", + "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", + "bytes": 74214 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", + "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", + "bytes": 121015 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", + "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", + "bytes": 26125 + }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -47864,6 +48053,11 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, + { + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", + "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", + "bytes": 10611 + }, { "path": "evidence/receipts/claude-max-default-effort-20260929.json", "sha256": "d6b3ee54f8620e28b029fe0a45f4139a57b5ae03a49c3620121ba420e49bac12", @@ -48054,6 +48248,11 @@ "sha256": "0d32534357501c011298420c07161c59940929cabd00a9b71d5d7817126f88c9", "bytes": 17126 }, + { + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", + "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", + "bytes": 8187 + }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -48079,11 +48278,21 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, + { + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", + "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", + "bytes": 10165 + }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, + { + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", + "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", + "bytes": 10463 + }, { "path": "evidence/receipts/memory-landscape-20260921.json", "sha256": "6a31608a721b3561ebf5daf59d0363cda7ef563777f47e3e2f64e16fca24a948", @@ -48334,6 +48543,11 @@ "sha256": "0f6a0c171872cde9689d9d5f2ff60b881ae2328b96769dc78613f625cf9d1017", "bytes": 16128 }, + { + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", + "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", + "bytes": 7517 + }, { "path": "evidence/receipts/osv-oauthlib-pyjwt-reachability-20260929.json", "sha256": "f89e3a45ac10d44d00c268cc617c1fb7b5f77636fb1150af3c9e7bf4b26441ef", @@ -48354,11 +48568,21 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, + { + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", + "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", + "bytes": 6732 + }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, + { + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", + "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", + "bytes": 7731 + }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -48419,6 +48643,11 @@ "sha256": "24be77b12057c9cc7d29d0edbd0ba8af5005ceff82c2f1b1ffe34e5c424d1ab2", "bytes": 4906 }, + { + "path": "evidence/receipts/syft-1540-qualification-20261003.json", + "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", + "bytes": 7946 + }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -48494,6 +48723,11 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, + { + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", + "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", + "bytes": 6655 + }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -48856,18 +49090,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", + "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "b10693331a67883d86a47ec40b6345f5f48d80aa287a991e20df4b40355ed72a", - "bytes": 100006 + "sha256": "51c40b98bd8502bcf664585a271246126d9f750ef369aa57f1b9fc73ddc5a0c1", + "bytes": 103387 }, { "path": "observability/README.md", - "sha256": "c4fd4a7d69704bd51edf9e1eff5e14c96a5eb9938fdd55f18aaa99ec47b30d94", - "bytes": 15457 + "sha256": "721b99df7babd5288f62a260910e0d7d704e103e2fa57a7d8797426971b2a508", + "bytes": 15861 }, { "path": "observability/backends/README.md", @@ -48966,8 +49200,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "6e476fbf535971627466ec7b39b99b1952d938464ab894c231d59e7c0e2f0f55", - "bytes": 41579 + "sha256": "3bc79d96a798b25d00b458094a27c5f9c08b195012c6796578f951d59b6d21e1", + "bytes": 42556 }, { "path": "observability/collector/claude-settings.json.example", @@ -49124,6 +49358,11 @@ "sha256": "ec68f05a9dea2c8d3e37888b2928760bd085ce1567bcdd09145e82a6196fb68b", "bytes": 29140 }, + { + "path": "observability/paper-trading-live/collector-paper-trading.yaml", + "sha256": "638dd84ff0ed6cae40bfe5c53922e9f57f80ac44fc10b99d76e23432eaf2f4bf", + "bytes": 2942 + }, { "path": "observability/receipt.json", "sha256": "22a7c2d84e16af7dcb2e0fe911845754a7585fc2ce06fb13adec3aee693030b4", @@ -49141,8 +49380,8 @@ }, { "path": "recipes/README.md", - "sha256": "2961a95fe20b829b92a9a01812bf6aa240955378674d1ee7afc8e4df727cc041", - "bytes": 124550 + "sha256": "530745d12979d0942111e54d5f41eda375dae8a5540ba92b6c90a20b8a1205d0", + "bytes": 128754 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -49166,8 +49405,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", - "bytes": 5706 + "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", + "bytes": 6586 }, { "path": "recipes/saturation-sweep.md", @@ -49261,7 +49500,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "df9d794668e8942a053cc3c76f2cb5e063c55671f286abdb14788b3dde04737b", + "sha256": "03307274bb4891465267cc617aa81e0863ed7fb7ba0c5632c7bbcb3d0513bf44", "bytes": 114715 }, { @@ -49601,8 +49840,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "ad1cde3c41739de6fc54af2eee6670ff42c7654628731fd150b3f83d5740a1f1", - "bytes": 52212 + "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", + "bytes": 52214 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -50126,18 +50365,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", - "bytes": 34089 + "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", + "bytes": 34441 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "a6c2324600d817f1fdff5975f713fbd65d08735cc0410001211ff7ae98c07526", - "bytes": 24367 + "sha256": "665887ccc447ea4105fd16459b265662132b72511516f5c9c8f6da075ea79fb2", + "bytes": 24721 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "ef64ba46907134593f0c05ea9376820f1524ccffc465396746c5a329920a91f4", - "bytes": 30907 + "sha256": "6e247ddf08daae8a7bd85eba43f28e22158f7d0d26e4236b357392a7d56be9b8", + "bytes": 31223 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -50236,8 +50475,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "6f1ecd5731cb676c0b50ee54a15375eeea4858742b460723046211b756ea3448", - "bytes": 43257 + "sha256": "e5a57a8b6331514515f3e81733eca9ca9164eff83f2a3d2fd7731ddbdbf1e15c", + "bytes": 45807 }, { "path": "tests/test_research_efficiency.py", @@ -50276,8 +50515,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", - "bytes": 9712 + "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", + "bytes": 9774 }, { "path": "tests/test_secret_path_guard.py", @@ -50981,7 +51220,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "d1f538abf502fc3575991144ea15f72fc93eae0fd67393fb5edc8be007f28d87", + "sha256": "56ffe669a67dae185d7de23e270e53c420f9b346198913e1073fa9341e43a8be", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 9dc22bcff..02cba4470 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -242,8 +242,8 @@ }, { "id": "claude-hud", - "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0", - "version": "0.8.0", + "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0", + "version": "0.10.0", "license": "MIT", "profile": "optional", "role": "Claude statusline rendering", @@ -259,13 +259,14 @@ "token-practice-gap-followup-20260920", "native-claude-hud-interactive-20260920", "current-session-observation-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "claude-hud-0100-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0" + "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0" ], - "source_pin": null, - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "75683c6de1ac07f6bbef00d739001679dba0740c", + "freshness": "2026-10-03 W1 scratch qualification: The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.8.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core.", "command_scope": "Metadata/help/setup reference only; historical functional evidence retained separately. See native recipe for selected live workflow." }, @@ -601,26 +602,27 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.8.0", - "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.9.0", + "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.8.0 --help" + "npx @modelcontextprotocol/inspector@2.9.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926" + "mcp-inspector-280-qualification-20260926", + "mcp-inspector-290-qualification-20261003" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" ], "source_pin": null, - "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -651,7 +653,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.7", + "version": "0.2.15", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -666,19 +668,20 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "openresearch-0215-qualification-20261003" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" ], - "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." + "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", + "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -690,13 +693,15 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "playwright-cli-0122-qualification-20261003" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli" + "https://github.com/microsoft/playwright-cli", + "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" ], "source_pin": null, - "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1060,7 +1065,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.79.0", + "version": "0.80.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1075,20 +1080,21 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "worktrunk-0800-qualification-20261003" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" ], - "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.161.0", + "version": "0.162.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1108,13 +1114,15 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "otelcol-contrib-0162-qualification-20261003" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib" + "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." }, { "id": "prometheus", @@ -1397,10 +1405,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.52.0", + "version": "1.54.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1409,13 +1417,14 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "syft-1540-qualification-20261003" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.52.0" + "https://github.com/anchore/syft/releases/tag/v1.54.0" ], - "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." }, { "id": "alpaca-py", @@ -1678,7 +1687,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.319", + "version": "1.108.327", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1691,7 +1700,7 @@ } } ], - "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1704,13 +1713,14 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "jcodemunch-1108327-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", - "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", + "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" ], - "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From db4281062cde3192bc5df84c20e97e73d3269d0a Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 10:36:26 -0400 Subject: [PATCH 14/50] Regenerate the new-WSL handbook for this PR's adoption/manifest.json change and refresh its receipt's two output hashes build_new_wsl_handbook.py --write changes only the adoption/manifest.json input-hash line in docs/new-wsl-handbook.md and .json. The receipt's two outputs[] hash fields were edited by hand to the regenerated files' sha256 (no tool writes them). Done under the configuration owner's standing ACK of 2026-10-03. Co-Authored-By: Claude Opus 5.5 --- docs/new-wsl-handbook.json | 2 +- docs/new-wsl-handbook.md | 2 +- evidence/artifacts/new-wsl-handbook-20261001/receipt.json | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/new-wsl-handbook.json b/docs/new-wsl-handbook.json index 937c3e447..6b9109d6a 100644 --- a/docs/new-wsl-handbook.json +++ b/docs/new-wsl-handbook.json @@ -6586,7 +6586,7 @@ "sources": [ { "path": "adoption/manifest.json", - "sha256": "7bb179e8440be17b75484c21495e66385ea8eb959a491d43d2488056ddede09a" + "sha256": "4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714" }, { "path": "adoption/new-wsl-profile.json", diff --git a/docs/new-wsl-handbook.md b/docs/new-wsl-handbook.md index 80836a092..94db6e7dd 100644 --- a/docs/new-wsl-handbook.md +++ b/docs/new-wsl-handbook.md @@ -2096,7 +2096,7 @@ Reference edition: [catalogs/foundation/new-wsl-architecture-20261001.json](../c | Repository source | SHA-256 | | --- | --- | -| [adoption/manifest.json](../adoption/manifest.json) | `7bb179e8440be17b75484c21495e66385ea8eb959a491d43d2488056ddede09a` | +| [adoption/manifest.json](../adoption/manifest.json) | `4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714` | | [adoption/new-wsl-profile.json](../adoption/new-wsl-profile.json) | `1e08ba8e879b0c52fd5c53341ea60bb27ca70ebc64cb9af655d9ba5ae0a21cb0` | | [adoption/platforms/linux-wsl2-new-distro.md](../adoption/platforms/linux-wsl2-new-distro.md) | `bddd59c0cd2b7c6a5c2fb5357dd7a74c5a396a73cd3989b06914203343c97f80` | | [catalogs/foundation/new-wsl-architecture-20261001.json](../catalogs/foundation/new-wsl-architecture-20261001.json) | `84c65a395145efe884a70b561205a3359b2b21022bd6fd4107d35d18016efdf6` | diff --git a/evidence/artifacts/new-wsl-handbook-20261001/receipt.json b/evidence/artifacts/new-wsl-handbook-20261001/receipt.json index a5690ca7a..e3bce9b4e 100644 --- a/evidence/artifacts/new-wsl-handbook-20261001/receipt.json +++ b/evidence/artifacts/new-wsl-handbook-20261001/receipt.json @@ -6,8 +6,8 @@ "generator_sha256": "da63be4afa284c0d7e9fd8be8225d1c1cab7e8d3bedf7b82d2e5ba0ff3d3316d", "profile_sha256": "1e08ba8e879b0c52fd5c53341ea60bb27ca70ebc64cb9af655d9ba5ae0a21cb0", "outputs": { - "docs/new-wsl-handbook.json": "9b6f0cbf8f1bbfbfa170b8b3ed5ee78bf63a6e0d40e20b522f3d4c24060a8391", - "docs/new-wsl-handbook.md": "cf5e84fed408698c1a6350e62966c0571986edc5178fec7c42b68f1e085c546b" + "docs/new-wsl-handbook.json": "d7ef8f011c163521e75bd96483162f63e76fb21a34e16629b9eddcc2ff72b339", + "docs/new-wsl-handbook.md": "621f18cb617995806da1daffc70303b5f1e3100b324a2136ee99538b6eba4a92" }, "inventory": {"layers": 37, "profile_entries": 69, "projected_tools": 73, "canonical_package_ids": 20}, "validation": [ From ba95a0a2de1d521f7aa63e54cbaa0854365bc043 Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 10:36:27 -0400 Subject: [PATCH 15/50] Hot-file protocol: restore main's copies of the shared hot files before this PR's last commit Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 351 +++++++--------------------------------- manifests/stack.json | 92 +++++------ 2 files changed, 97 insertions(+), 346 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 916a5d0d9..9689e383d 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -3900,155 +3900,6 @@ "The earlier final-native-scan-record.json remains historical output for its bound earlier workflow/config. completion-native-record.json records the strengthened partition, shortened 2026-10-17 expiry, fresh active/expired controls and 161-test run; neither is an unchanged upstream test suite. The first completion validation failed on a stale hash row for an already-empty output and is retained, with the corrected diagnosis in publication-correction.md." ], "path": "evidence/receipts/wsl-retrieval-retirement-20261003.json" - }, - { - "id": "jcodemunch-1108327-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "jcodemunch-mcp" - ], - "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", - "limitations": [ - "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", - "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" - }, - { - "id": "playwright-cli-0122-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "playwright-cli" - ], - "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", - "limitations": [ - "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", - "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", - "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" - }, - { - "id": "openresearch-0215-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "openresearch" - ], - "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", - "limitations": [ - "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", - "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" - }, - { - "id": "mcp-inspector-290-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "mcp-inspector" - ], - "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", - "limitations": [ - "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", - "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", - "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" - }, - { - "id": "claude-hud-0100-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-hud" - ], - "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", - "limitations": [ - "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", - "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", - "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" - }, - { - "id": "otelcol-contrib-0162-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "opentelemetry-collector-contrib" - ], - "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", - "limitations": [ - "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", - "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" - }, - { - "id": "worktrunk-0800-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "worktrunk" - ], - "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", - "limitations": [ - "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", - "The host installation and rollback launcher were not switched.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" - }, - { - "id": "mcporter-0142-qualification-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "mcporter" - ], - "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", - "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", - "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", - "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" - }, - { - "id": "syft-1540-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "syft" - ], - "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", - "limitations": [ - "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", - "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", - "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/syft-1540-qualification-20261003.json" } ], "files": [ @@ -4134,7 +3985,7 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "0c4616481072b9c38078e17dac4c87a09508a04d1f2dee771a91fc8c77323f15", + "sha256": "d4ea05b0beefc85d06d4fe25cab6fda8697bf68ccda35df6770816c478099357", "bytes": 24184 }, { @@ -4169,7 +4020,7 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "e6341c41b5bcc49971dc490a42b3c16f396b35d432cee5e443d2f5a20eec6cf4", + "sha256": "6e3212ba3134a62b27bc4d24129a3054a0f94263c0c0f148af94456152fd00c1", "bytes": 19723 }, { @@ -4184,8 +4035,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "4688fbcd032ef2f74e72d61945e1f2ab3f707f53e04a1ce8c296b32f8ef504ec", - "bytes": 7424 + "sha256": "a752c1be5c7e73642085b3fd91f3e97c4b42167dbe5b3452b2bd1191652e9c24", + "bytes": 7411 }, { "path": ".github/workflows/token-report.yml", @@ -4329,8 +4180,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "932806ffa1d2b9b1b6053068a907c1574cc8701365201f055438272261d49486", - "bytes": 65378 + "sha256": "bc342f0e98ae95e3128b58f9e4780d594de38b1753fb9af28799a353a3f7961c", + "bytes": 63199 }, { "path": "adoption/credential-inventory.json", @@ -4429,8 +4280,8 @@ }, { "path": "adoption/manifest.json", - "sha256": "4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714", - "bytes": 20038 + "sha256": "7bb179e8440be17b75484c21495e66385ea8eb959a491d43d2488056ddede09a", + "bytes": 20102 }, { "path": "adoption/new-wsl-profile.json", @@ -4474,8 +4325,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "f39042b4c9999ae2f1fe7a32b85dc5f555bc845a91d96209925daafe1a2a8eda", - "bytes": 31575 + "sha256": "0dd40eea9c39e1e61ca73c9e8f55cfe0e92106d0af5cd1933318f3bf7a3a31cf", + "bytes": 31759 }, { "path": "adoption/pins-macos-arm64.json", @@ -4489,8 +4340,8 @@ }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "15c8fe95c8484d85fd369f10d7d8723b467f8ed33200576abdc45d4715715889", - "bytes": 26335 + "sha256": "149b05c61320363dca3264f88962019fcd51523dbbc78f1be818a6df9fbd3cba", + "bytes": 25956 }, { "path": "adoption/platforms/macos-arm64.md", @@ -4544,8 +4395,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "5903c20f70bdc9c308020f7f7b5a48f0f2a1a1da71c9260df1c5c86eae5cb9f9", - "bytes": 13239 + "sha256": "e8c900df3e4858098e0fd64687b30831fe1f7d402f7c201cdd4a6ff5f5e7bd35", + "bytes": 13034 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -9865,8 +9716,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "7c4937a35a7ee54d2a4f5b74cbb3ba69b1379e48a1fad4a32084200571365986", - "bytes": 490254 + "sha256": "cafdde5e9aabfbe9d61bc138e4201596e2b0436f978b4dd8a8039eaed70dcd32", + "bytes": 483389 }, { "path": "blueprints/trials-20260926/README.md", @@ -15090,7 +14941,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "a28a218e0927f099b698208b4ac4fc8fbafee240447d633a2c247d619bd73137", + "sha256": "ccf259a9b7bca8cf81cfa0ddfbe5f54e7bc95a073defebc74a28877bfee5f084", "bytes": 34986 }, { @@ -15205,8 +15056,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "2d939cb03f303a0ccf87356a72df9ffe18c8e9649fc8c3bec01100db6c4408be", - "bytes": 287577 + "sha256": "3cb76b4e7cd3d1d122f088bcf5598d5aa51d9699497d8caddf8e35d5f55c2778", + "bytes": 287704 }, { "path": "catalogs/landscape/research-state.json", @@ -15215,8 +15066,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "26c021f065f577637368db1b42c7f34cd9ec30ae89ae4179f18337677004b85e", - "bytes": 290085 + "sha256": "2217a36d560e887b651aaf57028580175e1644c45134c6ef3d8208913998b02c", + "bytes": 251264 }, { "path": "catalogs/landscape/us-equities.json", @@ -15675,8 +15526,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "4580fc567fb070eedb63ec252cb76512af14c604ba7ba3e33f430853954658f8", - "bytes": 56365 + "sha256": "6a86756198376a5ad58c8a64c21ba4fe070ef7d780e0f1e4dfc845f8c76c5836", + "bytes": 56050 }, { "path": "docs/comparison-progress-20260922.md", @@ -15953,11 +15804,6 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, - { - "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "3d2a68ddd68cb13ae3a0363f6e77721a585d76b16a3991b22c921a37f1986882", - "bytes": 29683 - }, { "path": "docs/direct-results.md", "sha256": "12a511fee11f22c90b9b622701d5485be9c8247167102b5768d694244f939a5b", @@ -16040,8 +15886,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "f6cce9905dc4e182ab7106be523ba8caf4622d1cf976ae8ae379399996c006ef", - "bytes": 40049 + "sha256": "5a20461ffdd76482f30e8beb0f5ea670ccc53dc656931c5de91ec2dd2c80cea8", + "bytes": 39778 }, { "path": "docs/full-stack-convergence.md", @@ -16080,7 +15926,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "0be30dfc5ac8c20164b43c7789e73535b902f01a07490604505d39cacfd36c68", + "sha256": "6b6f18fc90f4252837cb7af82c8d25e97fdaeecfb8003931650bda272258a77a", "bytes": 97961 }, { @@ -16210,8 +16056,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "02c9ae5e193d3b759d4036b3b10a77019ee6a0d14bcddd28b23c750825fab68f", - "bytes": 18484 + "sha256": "245c7942ca34c078ddb8adc0d8a845efee8f42ea35e0fc4709175a14a9d79abb", + "bytes": 18483 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -16320,8 +16166,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "ee51bbd55ab98e55b72fa91647a6adcee036a8ea6da695144f0a896b32e82736", - "bytes": 587562 + "sha256": "b43af443e3ec7dd81efe16f7adc6ead8fe99a4748bc59a541f8ca8696799b80e", + "bytes": 587560 }, { "path": "docs/token-efficiency-stack.md", @@ -16340,7 +16186,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "2b775aac29cd7967924baeb874bccc35e7804c728792489ea340b24743a51a09", + "sha256": "caf81fa3aa0fa3e662e1807869331dc024ca787233a4844a0eca3e92e4ea46d6", "bytes": 90785 }, { @@ -17953,41 +17799,6 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", - "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", - "bytes": 108109 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", - "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", - "bytes": 13041 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", - "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", - "bytes": 28233 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", - "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", - "bytes": 18135 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", - "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", - "bytes": 74214 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", - "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", - "bytes": 121015 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", - "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", - "bytes": 26125 - }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -48053,11 +47864,6 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, - { - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", - "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", - "bytes": 10611 - }, { "path": "evidence/receipts/claude-max-default-effort-20260929.json", "sha256": "d6b3ee54f8620e28b029fe0a45f4139a57b5ae03a49c3620121ba420e49bac12", @@ -48248,11 +48054,6 @@ "sha256": "0d32534357501c011298420c07161c59940929cabd00a9b71d5d7817126f88c9", "bytes": 17126 }, - { - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", - "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", - "bytes": 8187 - }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -48278,21 +48079,11 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, - { - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", - "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", - "bytes": 10165 - }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, - { - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", - "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", - "bytes": 10463 - }, { "path": "evidence/receipts/memory-landscape-20260921.json", "sha256": "6a31608a721b3561ebf5daf59d0363cda7ef563777f47e3e2f64e16fca24a948", @@ -48543,11 +48334,6 @@ "sha256": "0f6a0c171872cde9689d9d5f2ff60b881ae2328b96769dc78613f625cf9d1017", "bytes": 16128 }, - { - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", - "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", - "bytes": 7517 - }, { "path": "evidence/receipts/osv-oauthlib-pyjwt-reachability-20260929.json", "sha256": "f89e3a45ac10d44d00c268cc617c1fb7b5f77636fb1150af3c9e7bf4b26441ef", @@ -48568,21 +48354,11 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, - { - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", - "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", - "bytes": 6732 - }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, - { - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", - "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", - "bytes": 7731 - }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -48643,11 +48419,6 @@ "sha256": "24be77b12057c9cc7d29d0edbd0ba8af5005ceff82c2f1b1ffe34e5c424d1ab2", "bytes": 4906 }, - { - "path": "evidence/receipts/syft-1540-qualification-20261003.json", - "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", - "bytes": 7946 - }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -48723,11 +48494,6 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, - { - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", - "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", - "bytes": 6655 - }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -49090,18 +48856,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", + "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "51c40b98bd8502bcf664585a271246126d9f750ef369aa57f1b9fc73ddc5a0c1", - "bytes": 103387 + "sha256": "b10693331a67883d86a47ec40b6345f5f48d80aa287a991e20df4b40355ed72a", + "bytes": 100006 }, { "path": "observability/README.md", - "sha256": "721b99df7babd5288f62a260910e0d7d704e103e2fa57a7d8797426971b2a508", - "bytes": 15861 + "sha256": "c4fd4a7d69704bd51edf9e1eff5e14c96a5eb9938fdd55f18aaa99ec47b30d94", + "bytes": 15457 }, { "path": "observability/backends/README.md", @@ -49200,8 +48966,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "3bc79d96a798b25d00b458094a27c5f9c08b195012c6796578f951d59b6d21e1", - "bytes": 42556 + "sha256": "6e476fbf535971627466ec7b39b99b1952d938464ab894c231d59e7c0e2f0f55", + "bytes": 41579 }, { "path": "observability/collector/claude-settings.json.example", @@ -49358,11 +49124,6 @@ "sha256": "ec68f05a9dea2c8d3e37888b2928760bd085ce1567bcdd09145e82a6196fb68b", "bytes": 29140 }, - { - "path": "observability/paper-trading-live/collector-paper-trading.yaml", - "sha256": "638dd84ff0ed6cae40bfe5c53922e9f57f80ac44fc10b99d76e23432eaf2f4bf", - "bytes": 2942 - }, { "path": "observability/receipt.json", "sha256": "22a7c2d84e16af7dcb2e0fe911845754a7585fc2ce06fb13adec3aee693030b4", @@ -49380,8 +49141,8 @@ }, { "path": "recipes/README.md", - "sha256": "530745d12979d0942111e54d5f41eda375dae8a5540ba92b6c90a20b8a1205d0", - "bytes": 128754 + "sha256": "2961a95fe20b829b92a9a01812bf6aa240955378674d1ee7afc8e4df727cc041", + "bytes": 124550 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -49405,8 +49166,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", - "bytes": 6586 + "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", + "bytes": 5706 }, { "path": "recipes/saturation-sweep.md", @@ -49500,7 +49261,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "03307274bb4891465267cc617aa81e0863ed7fb7ba0c5632c7bbcb3d0513bf44", + "sha256": "df9d794668e8942a053cc3c76f2cb5e063c55671f286abdb14788b3dde04737b", "bytes": 114715 }, { @@ -49840,8 +49601,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", - "bytes": 52214 + "sha256": "ad1cde3c41739de6fc54af2eee6670ff42c7654628731fd150b3f83d5740a1f1", + "bytes": 52212 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -50365,18 +50126,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", - "bytes": 34441 + "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", + "bytes": 34089 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "665887ccc447ea4105fd16459b265662132b72511516f5c9c8f6da075ea79fb2", - "bytes": 24721 + "sha256": "a6c2324600d817f1fdff5975f713fbd65d08735cc0410001211ff7ae98c07526", + "bytes": 24367 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "6e247ddf08daae8a7bd85eba43f28e22158f7d0d26e4236b357392a7d56be9b8", - "bytes": 31223 + "sha256": "ef64ba46907134593f0c05ea9376820f1524ccffc465396746c5a329920a91f4", + "bytes": 30907 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -50475,8 +50236,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "e5a57a8b6331514515f3e81733eca9ca9164eff83f2a3d2fd7731ddbdbf1e15c", - "bytes": 45807 + "sha256": "6f1ecd5731cb676c0b50ee54a15375eeea4858742b460723046211b756ea3448", + "bytes": 43257 }, { "path": "tests/test_research_efficiency.py", @@ -50515,8 +50276,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", - "bytes": 9774 + "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", + "bytes": 9712 }, { "path": "tests/test_secret_path_guard.py", @@ -51220,7 +50981,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "56ffe669a67dae185d7de23e270e53c420f9b346198913e1073fa9341e43a8be", + "sha256": "d1f538abf502fc3575991144ea15f72fc93eae0fd67393fb5edc8be007f28d87", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 02cba4470..9dc22bcff 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -242,8 +242,8 @@ }, { "id": "claude-hud", - "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0", - "version": "0.10.0", + "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0", + "version": "0.8.0", "license": "MIT", "profile": "optional", "role": "Claude statusline rendering", @@ -259,14 +259,13 @@ "token-practice-gap-followup-20260920", "native-claude-hud-interactive-20260920", "current-session-observation-20260920", - "claude-repository-evidence-20260921", - "claude-hud-0100-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0" + "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0" ], - "source_pin": "75683c6de1ac07f6bbef00d739001679dba0740c", - "freshness": "2026-10-03 W1 scratch qualification: The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.8.0 receipts retain their original scope.", + "source_pin": null, + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core.", "command_scope": "Metadata/help/setup reference only; historical functional evidence retained separately. See native recipe for selected live workflow." }, @@ -602,27 +601,26 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.9.0", - "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.8.0", + "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.9.0 --help" + "npx @modelcontextprotocol/inspector@2.8.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926", - "mcp-inspector-290-qualification-20261003" + "mcp-inspector-280-qualification-20260926" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", + "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -653,7 +651,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.15", + "version": "0.2.7", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -668,20 +666,19 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "openresearch-0215-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" ], - "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", - "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." + "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", + "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -693,15 +690,13 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921", - "playwright-cli-0122-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli", - "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" + "https://github.com/microsoft/playwright-cli" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", + "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1065,7 +1060,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.80.0", + "version": "0.79.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1080,21 +1075,20 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "worktrunk-0800-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" ], - "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", + "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.162.0", + "version": "0.161.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1114,15 +1108,13 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "otelcol-contrib-0162-qualification-20261003" + "claude-repository-evidence-20260921" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" + "https://github.com/open-telemetry/opentelemetry-collector-contrib" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "prometheus", @@ -1405,10 +1397,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.54.0", + "version": "1.52.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", + "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1417,14 +1409,13 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921", - "syft-1540-qualification-20261003" + "claude-repository-evidence-20260921" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.54.0" + "https://github.com/anchore/syft/releases/tag/v1.52.0" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." + "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." }, { "id": "alpaca-py", @@ -1687,7 +1678,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.327", + "version": "1.108.319", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1700,7 +1691,7 @@ } } ], - "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1713,14 +1704,13 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "jcodemunch-1108327-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", - "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", + "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", + "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 4367dd46addc8fa424a754ee84b0167cfa8365b1 Mon Sep 17 00:00:00 2001 From: Scout Date: Sat, 3 Oct 2026 10:36:28 -0400 Subject: [PATCH 16/50] Shared hot files last: this PR's manifests/stack.json rows and evidence registry (hot-file protocol) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 357 +++++++++++++++++++++++++++++++++------- manifests/stack.json | 92 ++++++----- 2 files changed, 349 insertions(+), 100 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 9689e383d..aa3a184fc 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -3900,6 +3900,155 @@ "The earlier final-native-scan-record.json remains historical output for its bound earlier workflow/config. completion-native-record.json records the strengthened partition, shortened 2026-10-17 expiry, fresh active/expired controls and 161-test run; neither is an unchanged upstream test suite. The first completion validation failed on a stale hash row for an already-empty output and is retained, with the corrected diagnosis in publication-correction.md." ], "path": "evidence/receipts/wsl-retrieval-retirement-20261003.json" + }, + { + "id": "jcodemunch-1108327-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "jcodemunch-mcp" + ], + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", + "limitations": [ + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" + }, + { + "id": "playwright-cli-0122-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "playwright-cli" + ], + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "limitations": [ + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + }, + { + "id": "openresearch-0215-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "openresearch" + ], + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "limitations": [ + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + }, + { + "id": "mcp-inspector-290-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "mcp-inspector" + ], + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "limitations": [ + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + }, + { + "id": "claude-hud-0100-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-hud" + ], + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "limitations": [ + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + }, + { + "id": "otelcol-contrib-0162-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "opentelemetry-collector-contrib" + ], + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "limitations": [ + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + }, + { + "id": "worktrunk-0800-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "worktrunk" + ], + "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", + "limitations": [ + "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", + "The host installation and rollback launcher were not switched.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" + }, + { + "id": "mcporter-0142-qualification-20261003", + "kind": "compatibility_attempt", + "component_ids": [ + "mcporter" + ], + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", + "limitations": [ + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + }, + { + "id": "syft-1540-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "syft" + ], + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "limitations": [ + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/syft-1540-qualification-20261003.json" } ], "files": [ @@ -3985,7 +4134,7 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "d4ea05b0beefc85d06d4fe25cab6fda8697bf68ccda35df6770816c478099357", + "sha256": "0c4616481072b9c38078e17dac4c87a09508a04d1f2dee771a91fc8c77323f15", "bytes": 24184 }, { @@ -4020,7 +4169,7 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "6e3212ba3134a62b27bc4d24129a3054a0f94263c0c0f148af94456152fd00c1", + "sha256": "e6341c41b5bcc49971dc490a42b3c16f396b35d432cee5e443d2f5a20eec6cf4", "bytes": 19723 }, { @@ -4035,8 +4184,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "a752c1be5c7e73642085b3fd91f3e97c4b42167dbe5b3452b2bd1191652e9c24", - "bytes": 7411 + "sha256": "4688fbcd032ef2f74e72d61945e1f2ab3f707f53e04a1ce8c296b32f8ef504ec", + "bytes": 7424 }, { "path": ".github/workflows/token-report.yml", @@ -4180,8 +4329,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "bc342f0e98ae95e3128b58f9e4780d594de38b1753fb9af28799a353a3f7961c", - "bytes": 63199 + "sha256": "932806ffa1d2b9b1b6053068a907c1574cc8701365201f055438272261d49486", + "bytes": 65378 }, { "path": "adoption/credential-inventory.json", @@ -4280,8 +4429,8 @@ }, { "path": "adoption/manifest.json", - "sha256": "7bb179e8440be17b75484c21495e66385ea8eb959a491d43d2488056ddede09a", - "bytes": 20102 + "sha256": "4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714", + "bytes": 20038 }, { "path": "adoption/new-wsl-profile.json", @@ -4325,8 +4474,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "0dd40eea9c39e1e61ca73c9e8f55cfe0e92106d0af5cd1933318f3bf7a3a31cf", - "bytes": 31759 + "sha256": "f39042b4c9999ae2f1fe7a32b85dc5f555bc845a91d96209925daafe1a2a8eda", + "bytes": 31575 }, { "path": "adoption/pins-macos-arm64.json", @@ -4340,8 +4489,8 @@ }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "149b05c61320363dca3264f88962019fcd51523dbbc78f1be818a6df9fbd3cba", - "bytes": 25956 + "sha256": "15c8fe95c8484d85fd369f10d7d8723b467f8ed33200576abdc45d4715715889", + "bytes": 26335 }, { "path": "adoption/platforms/macos-arm64.md", @@ -4395,8 +4544,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "e8c900df3e4858098e0fd64687b30831fe1f7d402f7c201cdd4a6ff5f5e7bd35", - "bytes": 13034 + "sha256": "5903c20f70bdc9c308020f7f7b5a48f0f2a1a1da71c9260df1c5c86eae5cb9f9", + "bytes": 13239 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -9716,8 +9865,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "cafdde5e9aabfbe9d61bc138e4201596e2b0436f978b4dd8a8039eaed70dcd32", - "bytes": 483389 + "sha256": "7c4937a35a7ee54d2a4f5b74cbb3ba69b1379e48a1fad4a32084200571365986", + "bytes": 490254 }, { "path": "blueprints/trials-20260926/README.md", @@ -14941,7 +15090,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "ccf259a9b7bca8cf81cfa0ddfbe5f54e7bc95a073defebc74a28877bfee5f084", + "sha256": "a28a218e0927f099b698208b4ac4fc8fbafee240447d633a2c247d619bd73137", "bytes": 34986 }, { @@ -15056,8 +15205,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "3cb76b4e7cd3d1d122f088bcf5598d5aa51d9699497d8caddf8e35d5f55c2778", - "bytes": 287704 + "sha256": "2d939cb03f303a0ccf87356a72df9ffe18c8e9649fc8c3bec01100db6c4408be", + "bytes": 287577 }, { "path": "catalogs/landscape/research-state.json", @@ -15066,8 +15215,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "2217a36d560e887b651aaf57028580175e1644c45134c6ef3d8208913998b02c", - "bytes": 251264 + "sha256": "26c021f065f577637368db1b42c7f34cd9ec30ae89ae4179f18337677004b85e", + "bytes": 290085 }, { "path": "catalogs/landscape/us-equities.json", @@ -15526,8 +15675,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "6a86756198376a5ad58c8a64c21ba4fe070ef7d780e0f1e4dfc845f8c76c5836", - "bytes": 56050 + "sha256": "4580fc567fb070eedb63ec252cb76512af14c604ba7ba3e33f430853954658f8", + "bytes": 56365 }, { "path": "docs/comparison-progress-20260922.md", @@ -15804,6 +15953,11 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, + { + "path": "docs/decisions/2026-10-03-currency-wave-w1.md", + "sha256": "3d2a68ddd68cb13ae3a0363f6e77721a585d76b16a3991b22c921a37f1986882", + "bytes": 29683 + }, { "path": "docs/direct-results.md", "sha256": "12a511fee11f22c90b9b622701d5485be9c8247167102b5768d694244f939a5b", @@ -15886,8 +16040,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "5a20461ffdd76482f30e8beb0f5ea670ccc53dc656931c5de91ec2dd2c80cea8", - "bytes": 39778 + "sha256": "f6cce9905dc4e182ab7106be523ba8caf4622d1cf976ae8ae379399996c006ef", + "bytes": 40049 }, { "path": "docs/full-stack-convergence.md", @@ -15926,7 +16080,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "6b6f18fc90f4252837cb7af82c8d25e97fdaeecfb8003931650bda272258a77a", + "sha256": "0be30dfc5ac8c20164b43c7789e73535b902f01a07490604505d39cacfd36c68", "bytes": 97961 }, { @@ -16056,8 +16210,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "245c7942ca34c078ddb8adc0d8a845efee8f42ea35e0fc4709175a14a9d79abb", - "bytes": 18483 + "sha256": "02c9ae5e193d3b759d4036b3b10a77019ee6a0d14bcddd28b23c750825fab68f", + "bytes": 18484 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -16066,12 +16220,12 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "9b6f0cbf8f1bbfbfa170b8b3ed5ee78bf63a6e0d40e20b522f3d4c24060a8391", + "sha256": "d7ef8f011c163521e75bd96483162f63e76fb21a34e16629b9eddcc2ff72b339", "bytes": 535421 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "cf5e84fed408698c1a6350e62966c0571986edc5178fec7c42b68f1e085c546b", + "sha256": "621f18cb617995806da1daffc70303b5f1e3100b324a2136ee99538b6eba4a92", "bytes": 319527 }, { @@ -16166,8 +16320,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "b43af443e3ec7dd81efe16f7adc6ead8fe99a4748bc59a541f8ca8696799b80e", - "bytes": 587560 + "sha256": "ee51bbd55ab98e55b72fa91647a6adcee036a8ea6da695144f0a896b32e82736", + "bytes": 587562 }, { "path": "docs/token-efficiency-stack.md", @@ -16186,7 +16340,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "caf81fa3aa0fa3e662e1807869331dc024ca787233a4844a0eca3e92e4ea46d6", + "sha256": "2b775aac29cd7967924baeb874bccc35e7804c728792489ea340b24743a51a09", "bytes": 90785 }, { @@ -17799,6 +17953,41 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", + "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", + "bytes": 108109 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", + "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", + "bytes": 13041 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", + "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", + "bytes": 28233 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", + "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", + "bytes": 18135 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", + "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", + "bytes": 74214 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", + "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", + "bytes": 121015 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", + "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", + "bytes": 26125 + }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -37266,7 +37455,7 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "82aea4297fb7cdc31dea6e3a2a6ed66a5c8d5ea2909872533b6d7ece091888d8", + "sha256": "a593136405c8e16ac74548ccf7414e495707fe4f50a7a32d16a28c987026ff79", "bytes": 4174 }, { @@ -47864,6 +48053,11 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, + { + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", + "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", + "bytes": 10611 + }, { "path": "evidence/receipts/claude-max-default-effort-20260929.json", "sha256": "d6b3ee54f8620e28b029fe0a45f4139a57b5ae03a49c3620121ba420e49bac12", @@ -48054,6 +48248,11 @@ "sha256": "0d32534357501c011298420c07161c59940929cabd00a9b71d5d7817126f88c9", "bytes": 17126 }, + { + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", + "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", + "bytes": 8187 + }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -48079,11 +48278,21 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, + { + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", + "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", + "bytes": 10165 + }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, + { + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", + "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", + "bytes": 10463 + }, { "path": "evidence/receipts/memory-landscape-20260921.json", "sha256": "6a31608a721b3561ebf5daf59d0363cda7ef563777f47e3e2f64e16fca24a948", @@ -48334,6 +48543,11 @@ "sha256": "0f6a0c171872cde9689d9d5f2ff60b881ae2328b96769dc78613f625cf9d1017", "bytes": 16128 }, + { + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", + "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", + "bytes": 7517 + }, { "path": "evidence/receipts/osv-oauthlib-pyjwt-reachability-20260929.json", "sha256": "f89e3a45ac10d44d00c268cc617c1fb7b5f77636fb1150af3c9e7bf4b26441ef", @@ -48354,11 +48568,21 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, + { + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", + "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", + "bytes": 6732 + }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, + { + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", + "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", + "bytes": 7731 + }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -48419,6 +48643,11 @@ "sha256": "24be77b12057c9cc7d29d0edbd0ba8af5005ceff82c2f1b1ffe34e5c424d1ab2", "bytes": 4906 }, + { + "path": "evidence/receipts/syft-1540-qualification-20261003.json", + "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", + "bytes": 7946 + }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -48494,6 +48723,11 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, + { + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", + "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", + "bytes": 6655 + }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -48856,18 +49090,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", + "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "b10693331a67883d86a47ec40b6345f5f48d80aa287a991e20df4b40355ed72a", - "bytes": 100006 + "sha256": "51c40b98bd8502bcf664585a271246126d9f750ef369aa57f1b9fc73ddc5a0c1", + "bytes": 103387 }, { "path": "observability/README.md", - "sha256": "c4fd4a7d69704bd51edf9e1eff5e14c96a5eb9938fdd55f18aaa99ec47b30d94", - "bytes": 15457 + "sha256": "721b99df7babd5288f62a260910e0d7d704e103e2fa57a7d8797426971b2a508", + "bytes": 15861 }, { "path": "observability/backends/README.md", @@ -48966,8 +49200,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "6e476fbf535971627466ec7b39b99b1952d938464ab894c231d59e7c0e2f0f55", - "bytes": 41579 + "sha256": "3bc79d96a798b25d00b458094a27c5f9c08b195012c6796578f951d59b6d21e1", + "bytes": 42556 }, { "path": "observability/collector/claude-settings.json.example", @@ -49124,6 +49358,11 @@ "sha256": "ec68f05a9dea2c8d3e37888b2928760bd085ce1567bcdd09145e82a6196fb68b", "bytes": 29140 }, + { + "path": "observability/paper-trading-live/collector-paper-trading.yaml", + "sha256": "638dd84ff0ed6cae40bfe5c53922e9f57f80ac44fc10b99d76e23432eaf2f4bf", + "bytes": 2942 + }, { "path": "observability/receipt.json", "sha256": "22a7c2d84e16af7dcb2e0fe911845754a7585fc2ce06fb13adec3aee693030b4", @@ -49141,8 +49380,8 @@ }, { "path": "recipes/README.md", - "sha256": "2961a95fe20b829b92a9a01812bf6aa240955378674d1ee7afc8e4df727cc041", - "bytes": 124550 + "sha256": "530745d12979d0942111e54d5f41eda375dae8a5540ba92b6c90a20b8a1205d0", + "bytes": 128754 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -49166,8 +49405,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", - "bytes": 5706 + "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", + "bytes": 6586 }, { "path": "recipes/saturation-sweep.md", @@ -49261,7 +49500,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "df9d794668e8942a053cc3c76f2cb5e063c55671f286abdb14788b3dde04737b", + "sha256": "03307274bb4891465267cc617aa81e0863ed7fb7ba0c5632c7bbcb3d0513bf44", "bytes": 114715 }, { @@ -49601,8 +49840,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "ad1cde3c41739de6fc54af2eee6670ff42c7654628731fd150b3f83d5740a1f1", - "bytes": 52212 + "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", + "bytes": 52214 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -50126,18 +50365,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", - "bytes": 34089 + "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", + "bytes": 34441 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "a6c2324600d817f1fdff5975f713fbd65d08735cc0410001211ff7ae98c07526", - "bytes": 24367 + "sha256": "665887ccc447ea4105fd16459b265662132b72511516f5c9c8f6da075ea79fb2", + "bytes": 24721 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "ef64ba46907134593f0c05ea9376820f1524ccffc465396746c5a329920a91f4", - "bytes": 30907 + "sha256": "6e247ddf08daae8a7bd85eba43f28e22158f7d0d26e4236b357392a7d56be9b8", + "bytes": 31223 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -50236,8 +50475,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "6f1ecd5731cb676c0b50ee54a15375eeea4858742b460723046211b756ea3448", - "bytes": 43257 + "sha256": "e5a57a8b6331514515f3e81733eca9ca9164eff83f2a3d2fd7731ddbdbf1e15c", + "bytes": 45807 }, { "path": "tests/test_research_efficiency.py", @@ -50276,8 +50515,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", - "bytes": 9712 + "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", + "bytes": 9774 }, { "path": "tests/test_secret_path_guard.py", @@ -50981,7 +51220,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "d1f538abf502fc3575991144ea15f72fc93eae0fd67393fb5edc8be007f28d87", + "sha256": "56ffe669a67dae185d7de23e270e53c420f9b346198913e1073fa9341e43a8be", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 9dc22bcff..02cba4470 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -242,8 +242,8 @@ }, { "id": "claude-hud", - "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0", - "version": "0.8.0", + "repository": "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0", + "version": "0.10.0", "license": "MIT", "profile": "optional", "role": "Claude statusline rendering", @@ -259,13 +259,14 @@ "token-practice-gap-followup-20260920", "native-claude-hud-interactive-20260920", "current-session-observation-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "claude-hud-0100-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.8.0" + "https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0" ], - "source_pin": null, - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "75683c6de1ac07f6bbef00d739001679dba0740c", + "freshness": "2026-10-03 W1 scratch qualification: The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.8.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core.", "command_scope": "Metadata/help/setup reference only; historical functional evidence retained separately. See native recipe for selected live workflow." }, @@ -601,26 +602,27 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.8.0", - "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.9.0", + "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.8.0 --help" + "npx @modelcontextprotocol/inspector@2.9.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926" + "mcp-inspector-280-qualification-20260926", + "mcp-inspector-290-qualification-20261003" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" ], "source_pin": null, - "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -651,7 +653,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.7", + "version": "0.2.15", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -666,19 +668,20 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "openresearch-0215-qualification-20261003" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" ], - "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." + "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", + "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -690,13 +693,15 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "playwright-cli-0122-qualification-20261003" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli" + "https://github.com/microsoft/playwright-cli", + "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" ], "source_pin": null, - "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1060,7 +1065,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.79.0", + "version": "0.80.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1075,20 +1080,21 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "worktrunk-0800-qualification-20261003" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" ], - "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.161.0", + "version": "0.162.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1108,13 +1114,15 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "otelcol-contrib-0162-qualification-20261003" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib" + "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." }, { "id": "prometheus", @@ -1397,10 +1405,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.52.0", + "version": "1.54.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1409,13 +1417,14 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "syft-1540-qualification-20261003" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.52.0" + "https://github.com/anchore/syft/releases/tag/v1.54.0" ], - "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." }, { "id": "alpaca-py", @@ -1678,7 +1687,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.319", + "version": "1.108.327", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1691,7 +1700,7 @@ } } ], - "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1704,13 +1713,14 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "jcodemunch-1108327-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", - "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", + "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" ], - "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From b532ca855ee0fc0c2106f2df6a5ede34c29232ba Mon Sep 17 00:00:00 2001 From: Scout Date: Sun, 4 Oct 2026 16:29:51 -0400 Subject: [PATCH 17/50] Hot-file protocol: reset manifests/evidence.json manifests/stack.json to the merge base before the final hot-file commit Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 360 +++++++--------------------------------- manifests/stack.json | 79 ++++----- 2 files changed, 93 insertions(+), 346 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 1f77db513..87f228481 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4148,155 +4148,6 @@ "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." ], "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" - }, - { - "id": "jcodemunch-1108327-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "jcodemunch-mcp" - ], - "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", - "limitations": [ - "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", - "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" - }, - { - "id": "playwright-cli-0122-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "playwright-cli" - ], - "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", - "limitations": [ - "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", - "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", - "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" - }, - { - "id": "openresearch-0215-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "openresearch" - ], - "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", - "limitations": [ - "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", - "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" - }, - { - "id": "mcp-inspector-290-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "mcp-inspector" - ], - "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", - "limitations": [ - "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", - "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", - "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" - }, - { - "id": "claude-hud-0100-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-hud" - ], - "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", - "limitations": [ - "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", - "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", - "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" - }, - { - "id": "otelcol-contrib-0162-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "opentelemetry-collector-contrib" - ], - "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", - "limitations": [ - "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", - "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" - }, - { - "id": "worktrunk-0800-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "worktrunk" - ], - "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", - "limitations": [ - "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", - "The host installation and rollback launcher were not switched.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" - }, - { - "id": "mcporter-0142-qualification-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "mcporter" - ], - "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", - "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", - "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", - "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" - }, - { - "id": "syft-1540-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "syft" - ], - "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", - "limitations": [ - "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", - "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", - "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/syft-1540-qualification-20261003.json" } ], "files": [ @@ -4382,7 +4233,7 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "d73428cfa772bee46d9f18e835cc7b054267ba05c324d749b745cdb7debbf772", + "sha256": "0153fc7595f7dd64d077366b2b0251cbe78f13a47f90798ab6d3d746624c2aec", "bytes": 25235 }, { @@ -4427,7 +4278,7 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "652bf181e1097963b1ce23d81eefb9bc9fb4c0f3051c3c5611c07ede4ab8a291", + "sha256": "5b52e3f50cf6ecb26cfe36f8ca54c577b5ff07ec4027a20102bc731c066cf4e5", "bytes": 20110 }, { @@ -4462,8 +4313,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "8c70b40953230c79e3d3df75fc492d689bf8884cb53acd7b6b6eadb63f2558c9", - "bytes": 7589 + "sha256": "92ab3fa8354aa9fbaad781597354ef5a942c709b5950109bb13c8b77780a40f8", + "bytes": 7576 }, { "path": ".github/workflows/token-report.yml", @@ -4612,8 +4463,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "a1b3175b349864475c34c390683cd7fa2afa92e14b5436304add77b351c36111", - "bytes": 66718 + "sha256": "4ed3605282cd0f6f407b35a0b8a017863db4e8476d1d9503b302ced68abb7292", + "bytes": 64541 }, { "path": "adoption/credential-inventory.json", @@ -4712,8 +4563,8 @@ }, { "path": "adoption/manifest.json", - "sha256": "4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714", - "bytes": 20038 + "sha256": "7bb179e8440be17b75484c21495e66385ea8eb959a491d43d2488056ddede09a", + "bytes": 20102 }, { "path": "adoption/new-wsl-profile.json", @@ -4757,8 +4608,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "7e210c9c56953ff5091c35909a0e3b5c94a4a519932eeda82878afb22b3c2961", - "bytes": 37151 + "sha256": "804eba0e086670c75e6b2f3725734477914318987c99fb90195680188be337c9", + "bytes": 37335 }, { "path": "adoption/pins-macos-arm64.json", @@ -4772,8 +4623,8 @@ }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "51b3c5a8651122f3e24c6df494f7db0105127d9d30615e00af98fd73a356b76c", - "bytes": 26899 + "sha256": "95f59e4cc13c2b03237cb6c973b2f8203275eccd1b0eb023c24a6a307db42504", + "bytes": 26347 }, { "path": "adoption/platforms/macos-arm64.md", @@ -4832,8 +4683,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "f389b2b98e28c856136ca9d2e19cfb1464b45207719e5ae48e5e6b1e7d72e4ed", - "bytes": 13207 + "sha256": "5e27edf9147dfb60cc7311d4fe2e76312a8fd602021c60936023a9ce2273edeb", + "bytes": 13003 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -10273,8 +10124,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "a943eea648fdfa7606cb2058e4280340d680937664a6c955857ecd3cfa3d4d9d", - "bytes": 490293 + "sha256": "9eece716982d44ddc5ff844003680c9b04f45fbe7b21d35f18188ee6a70de15c", + "bytes": 484284 }, { "path": "blueprints/trials-20260926/README.md", @@ -15498,7 +15349,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "a28a218e0927f099b698208b4ac4fc8fbafee240447d633a2c247d619bd73137", + "sha256": "ccf259a9b7bca8cf81cfa0ddfbe5f54e7bc95a073defebc74a28877bfee5f084", "bytes": 34986 }, { @@ -15613,8 +15464,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "4b45aa982068205635f95776bbfc7a4c73d283ea48586e480f3870e613450ecf", - "bytes": 287577 + "sha256": "d1f0f17e142e8bfca223006f72cb16fce65456609248a32b5cf7958ba9f54dd2", + "bytes": 287704 }, { "path": "catalogs/landscape/research-state.json", @@ -15623,8 +15474,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "d8693629f50582cdabe9a8acdc4635339e47164648d2c603c6f79f8b71d6ab87", - "bytes": 280716 + "sha256": "975b5a515271c24b1a158594568a76f1b6d65db6eb920f561db77e056e20b8b1", + "bytes": 253392 }, { "path": "catalogs/landscape/us-equities.json", @@ -16083,8 +15934,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "bf7ec0855824fe11c18826fcc6a0e3e6efde68dbbfd4c69d4d8cf7d2f1f34612", - "bytes": 56726 + "sha256": "6e7ebbe64011f460b59ab310a328211737deec2f83543fb99c41d761958bff06", + "bytes": 56411 }, { "path": "docs/comparison-progress-20260922.md", @@ -16381,11 +16232,6 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, - { - "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "55b8017598f99b4ba705bd31f5223d0e8207d676b05324983193ce3bcd99de0f", - "bytes": 33686 - }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", "sha256": "a4c5ddf98c9fa778d07b60507a183818b1d243dda789bc06ee8bcd612fcbcedb", @@ -16558,8 +16404,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "53273e2c45893786c20d934d3c0b6dfea59c69029f5acbd3b2ee8046c850f3da", - "bytes": 40049 + "sha256": "d86649c5c4f7fe5686d588586588ad20f6b84f95b0b109cca510f82c5d0b40c4", + "bytes": 39778 }, { "path": "docs/full-stack-convergence.md", @@ -16598,7 +16444,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "1fe05b805ab475cb4cb163985574aa5428797298b095b93b1141086a93fee3c2", + "sha256": "506dab27e1618ac53a688b38eb21e3219f56acd65940f1315a77a588bcdae035", "bytes": 98818 }, { @@ -16728,8 +16574,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "c1b9e9cd27feb0ed823a2c0e942a741671e5ad2b84753e5196e09442b0fb1e3c", - "bytes": 18484 + "sha256": "feacb3a295970f1269ea2004127e5dd11a4f43c9e2fb29166e501346205091af", + "bytes": 18483 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -16738,12 +16584,12 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "48c863ef72ba02ce9575ae9a3dda34208979be94638a13625e58e50d311b64c8", + "sha256": "3e699173f1dc25672eb0d95f05e169386a610646db4e3a82e9e67f39814dd41a", "bytes": 561055 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "2bacd791380a39d8c046a0eb2002b24b6c6e10f414c480c19161260917a8c668", + "sha256": "c540e0af3f9fccd04da00e7ddc73693b7184079455e1327ed961d096ae81f34b", "bytes": 323968 }, { @@ -16838,7 +16684,7 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "9c5ae97dd6257f96b1bb66103c711bdb00b56c885efaccad73e6df4a551a0e30", + "sha256": "c701409aa29644941e107e1102c1f0cc765509553f93c93872f27bf661cdde94", "bytes": 591301 }, { @@ -16858,7 +16704,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "2be6f8cc0bfbf11a88cb3036f1c91d0f61a06691f73637645e817c422be39776", + "sha256": "b85424755d2152313a6a7cfcbef8871c98f0f8f756e932287fa1aa1bf7e49a46", "bytes": 92944 }, { @@ -18476,41 +18322,6 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", - "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", - "bytes": 108109 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", - "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", - "bytes": 13041 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", - "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", - "bytes": 28233 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", - "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", - "bytes": 18135 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", - "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", - "bytes": 74214 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", - "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", - "bytes": 121015 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", - "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", - "bytes": 26125 - }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -38698,7 +38509,7 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "5c37e2a4f69d47efa79b1c32b5a30cbff55f62212007eb58c1196b9a21ab94f8", + "sha256": "80f899426a2b9b9d0a758e5e58227cbe09027852d0aa9bd42e8a8769c565d0ad", "bytes": 4174 }, { @@ -50336,11 +50147,6 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, - { - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", - "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", - "bytes": 10611 - }, { "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json", "sha256": "b0c9e1d7c58e339dc2906e6a977ec04e6c1a808e826f9422407449ab34dd4f09", @@ -50551,11 +50357,6 @@ "sha256": "0d32534357501c011298420c07161c59940929cabd00a9b71d5d7817126f88c9", "bytes": 17126 }, - { - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", - "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", - "bytes": 8187 - }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -50581,21 +50382,11 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, - { - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", - "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", - "bytes": 10165 - }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, - { - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", - "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", - "bytes": 10463 - }, { "path": "evidence/receipts/mcporter-0142-qualification-20261004.json", "sha256": "9399c393875decb817d49a1ed59e1629ff445070453c2a2ba819e98d17a24cd1", @@ -50876,11 +50667,6 @@ "sha256": "9ad1db0b9e841cd780d04e544f6e75dde57fd88ebc6fc4f5b0bafd84287f20da", "bytes": 149558 }, - { - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", - "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", - "bytes": 7517 - }, { "path": "evidence/receipts/osv-oauthlib-pyjwt-reachability-20260929.json", "sha256": "f89e3a45ac10d44d00c268cc617c1fb7b5f77636fb1150af3c9e7bf4b26441ef", @@ -50906,21 +50692,11 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, - { - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", - "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", - "bytes": 6732 - }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, - { - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", - "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", - "bytes": 7731 - }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -50991,11 +50767,6 @@ "sha256": "24be77b12057c9cc7d29d0edbd0ba8af5005ceff82c2f1b1ffe34e5c424d1ab2", "bytes": 4906 }, - { - "path": "evidence/receipts/syft-1540-qualification-20261003.json", - "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", - "bytes": 7946 - }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -51071,11 +50842,6 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, - { - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", - "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", - "bytes": 6655 - }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -51613,18 +51379,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", + "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "32e90f075c5b6dd52fe64a79698592e22b4765b19a496486b5237d7f37d3bf6e", - "bytes": 104274 + "sha256": "bcbc611c905081a00ca6762d8fad0e478841b0e101a9adc4ce4d09450710c943", + "bytes": 101523 }, { "path": "observability/README.md", - "sha256": "64e714cc5708df81bf8931ea84b02d3ff4536e136da665fa0c8670d2d56be203", - "bytes": 16029 + "sha256": "7c7795560a7ef6541c91dfb8b0bf4e693f5dcdf9cfc75f262d8e4832057177e3", + "bytes": 15625 }, { "path": "observability/backends/README.md", @@ -51723,8 +51489,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "d0ec9824b54c8d8433b7e0dbb5279c9f4d089112944e1dab77ee76c7a4afa526", - "bytes": 45613 + "sha256": "df33394028df2a687f7e39beefe0aa02978a0d6a0b97fd9d8a14f12e6075d3d6", + "bytes": 44636 }, { "path": "observability/collector/claude-settings.json.example", @@ -51903,8 +51669,8 @@ }, { "path": "recipes/README.md", - "sha256": "d9cc6ab495526b8520e1866c9305fbb2361e24c450116c418079866df765e293", - "bytes": 131699 + "sha256": "5ce6c88fac8855b5c8138f6fa553073580f990ea3dd853a17b760a41e60ca9fa", + "bytes": 128045 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -51928,8 +51694,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", - "bytes": 6586 + "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", + "bytes": 5706 }, { "path": "recipes/saturation-sweep.md", @@ -52023,7 +51789,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "6c903a399bb22e37e65836dc0cdd47ee1b0d947ef1462f387429fd1a6cddd2bf", + "sha256": "a5dce8ae180876bd6f676464fbfbda2bf60e479b1b865ca801c592d96e427e81", "bytes": 115304 }, { @@ -52393,8 +52159,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", - "bytes": 52214 + "sha256": "6621649f533fb9b1d62e902d3953447bd43ec6bb26ee3e1f35e693023200fb06", + "bytes": 52213 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -52446,11 +52212,6 @@ "sha256": "1bd3e90b095c326edf6327202bcbeeab7ed6ccc6c5789dc794062024baf6d64f", "bytes": 18302 }, - { - "path": "tests/test_blind_checkout.py", - "sha256": "d27efdf89e9ff89b0bd50c03a59e4efad5529e617d77ead110621616c20800f8", - "bytes": 67881 - }, { "path": "tests/test_blind_layer_decisions.py", "sha256": "327f104fc335a2b25f2a910e8cae44661fe9439764f4ab778412dbf3beeaea99", @@ -52948,18 +52709,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", - "bytes": 34441 + "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", + "bytes": 34089 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "ed7e6db7559dfb09c79be5d5a6150ec57710278b096293e73373b5681a2d5724", - "bytes": 25971 + "sha256": "01643e542017a248c166302b90f7218e42c83eceb3e4084b1a99a4bb73617a89", + "bytes": 25617 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "96b901ada162f4a9d5c7445a4f5272ca86011d5e9227211405051ad12fe79665", - "bytes": 38105 + "sha256": "2f58b64cbd4f1af2b23ed869147278e2f84ad3357fef11a13c6496154fb1f15b", + "bytes": 37789 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -53063,8 +52824,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "9eae1b97d637079056994268e754f878bbafd4702fe8182cfef21f2f7b9bfcec", - "bytes": 47956 + "sha256": "e8a7d735d73063ef82c4cff28bfa09a737d75a4fb69d84b49aec335ae2ba62b4", + "bytes": 45406 }, { "path": "tests/test_research_efficiency.py", @@ -53103,8 +52864,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", - "bytes": 9774 + "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", + "bytes": 9712 }, { "path": "tests/test_secret_path_guard.py", @@ -53531,11 +53292,6 @@ "sha256": "715c98a3ea23e71768326b19250cac5ce3e3bc1c568f540771ba64e45976a4ee", "bytes": 27482 }, - { - "path": "tools/sota-convergence/export_isolation_check.py", - "sha256": "7c0218c6545ea8d0274c71df8d4789a9f3e983dab45015905ad362dc6f0d3742", - "bytes": 34727 - }, { "path": "tools/sota-convergence/extract_layers.py", "sha256": "4be73f7d3b09fa9ea88ecb238d998e43b648c7c16bb56b8853e8672ca883bb2a", @@ -53853,7 +53609,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "f93756235e3983a86eb632eb92f66417d48ab22a49506fcd5442cca5364d3947", + "sha256": "17e56072c6b5568af421dd67b7dfb4db51906d11511e950448f611d58ba73808", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 0bbd7a8f2..81b8b6872 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -603,27 +603,26 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.9.0", - "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.8.0", + "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.9.0 --help" + "npx @modelcontextprotocol/inspector@2.8.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926", - "mcp-inspector-290-qualification-20261003" + "mcp-inspector-280-qualification-20260926" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", + "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -655,7 +654,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.15", + "version": "0.2.7", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -670,20 +669,19 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "openresearch-0215-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" ], - "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", - "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." + "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", + "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -695,15 +693,13 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921", - "playwright-cli-0122-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli", - "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" + "https://github.com/microsoft/playwright-cli" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", + "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1068,7 +1064,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.80.0", + "version": "0.79.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1083,21 +1079,20 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "worktrunk-0800-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" ], - "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", + "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.162.0", + "version": "0.161.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1117,15 +1112,13 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "otelcol-contrib-0162-qualification-20261003" + "claude-repository-evidence-20260921" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" + "https://github.com/open-telemetry/opentelemetry-collector-contrib" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "prometheus", @@ -1408,10 +1401,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.54.0", + "version": "1.52.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", + "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1420,14 +1413,13 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921", - "syft-1540-qualification-20261003" + "claude-repository-evidence-20260921" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.54.0" + "https://github.com/anchore/syft/releases/tag/v1.52.0" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." + "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." }, { "id": "alpaca-py", @@ -1690,7 +1682,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.327", + "version": "1.108.319", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1703,7 +1695,7 @@ } } ], - "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1716,14 +1708,13 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "jcodemunch-1108327-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", - "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", + "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", + "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 4c468bb38305166129bf15ac03a309efdd047fb9 Mon Sep 17 00:00:00 2001 From: Scout Date: Sun, 4 Oct 2026 16:29:52 -0400 Subject: [PATCH 18/50] Reapply this branch's manifests/evidence.json manifests/stack.json edits on the merge base (hot-file protocol: every hot-file edit in the last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 360 +++++++++++++++++++++++++++++++++------- manifests/stack.json | 79 +++++---- 2 files changed, 346 insertions(+), 93 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 87f228481..1f77db513 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4148,6 +4148,155 @@ "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." ], "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" + }, + { + "id": "jcodemunch-1108327-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "jcodemunch-mcp" + ], + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", + "limitations": [ + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" + }, + { + "id": "playwright-cli-0122-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "playwright-cli" + ], + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "limitations": [ + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + }, + { + "id": "openresearch-0215-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "openresearch" + ], + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "limitations": [ + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + }, + { + "id": "mcp-inspector-290-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "mcp-inspector" + ], + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "limitations": [ + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + }, + { + "id": "claude-hud-0100-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-hud" + ], + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "limitations": [ + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + }, + { + "id": "otelcol-contrib-0162-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "opentelemetry-collector-contrib" + ], + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "limitations": [ + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + }, + { + "id": "worktrunk-0800-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "worktrunk" + ], + "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", + "limitations": [ + "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", + "The host installation and rollback launcher were not switched.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" + }, + { + "id": "mcporter-0142-qualification-20261003", + "kind": "compatibility_attempt", + "component_ids": [ + "mcporter" + ], + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", + "limitations": [ + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + }, + { + "id": "syft-1540-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "syft" + ], + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "limitations": [ + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/syft-1540-qualification-20261003.json" } ], "files": [ @@ -4233,7 +4382,7 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "0153fc7595f7dd64d077366b2b0251cbe78f13a47f90798ab6d3d746624c2aec", + "sha256": "d73428cfa772bee46d9f18e835cc7b054267ba05c324d749b745cdb7debbf772", "bytes": 25235 }, { @@ -4278,7 +4427,7 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "5b52e3f50cf6ecb26cfe36f8ca54c577b5ff07ec4027a20102bc731c066cf4e5", + "sha256": "652bf181e1097963b1ce23d81eefb9bc9fb4c0f3051c3c5611c07ede4ab8a291", "bytes": 20110 }, { @@ -4313,8 +4462,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "92ab3fa8354aa9fbaad781597354ef5a942c709b5950109bb13c8b77780a40f8", - "bytes": 7576 + "sha256": "8c70b40953230c79e3d3df75fc492d689bf8884cb53acd7b6b6eadb63f2558c9", + "bytes": 7589 }, { "path": ".github/workflows/token-report.yml", @@ -4463,8 +4612,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "4ed3605282cd0f6f407b35a0b8a017863db4e8476d1d9503b302ced68abb7292", - "bytes": 64541 + "sha256": "a1b3175b349864475c34c390683cd7fa2afa92e14b5436304add77b351c36111", + "bytes": 66718 }, { "path": "adoption/credential-inventory.json", @@ -4563,8 +4712,8 @@ }, { "path": "adoption/manifest.json", - "sha256": "7bb179e8440be17b75484c21495e66385ea8eb959a491d43d2488056ddede09a", - "bytes": 20102 + "sha256": "4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714", + "bytes": 20038 }, { "path": "adoption/new-wsl-profile.json", @@ -4608,8 +4757,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "804eba0e086670c75e6b2f3725734477914318987c99fb90195680188be337c9", - "bytes": 37335 + "sha256": "7e210c9c56953ff5091c35909a0e3b5c94a4a519932eeda82878afb22b3c2961", + "bytes": 37151 }, { "path": "adoption/pins-macos-arm64.json", @@ -4623,8 +4772,8 @@ }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "95f59e4cc13c2b03237cb6c973b2f8203275eccd1b0eb023c24a6a307db42504", - "bytes": 26347 + "sha256": "51b3c5a8651122f3e24c6df494f7db0105127d9d30615e00af98fd73a356b76c", + "bytes": 26899 }, { "path": "adoption/platforms/macos-arm64.md", @@ -4683,8 +4832,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "5e27edf9147dfb60cc7311d4fe2e76312a8fd602021c60936023a9ce2273edeb", - "bytes": 13003 + "sha256": "f389b2b98e28c856136ca9d2e19cfb1464b45207719e5ae48e5e6b1e7d72e4ed", + "bytes": 13207 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -10124,8 +10273,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "9eece716982d44ddc5ff844003680c9b04f45fbe7b21d35f18188ee6a70de15c", - "bytes": 484284 + "sha256": "a943eea648fdfa7606cb2058e4280340d680937664a6c955857ecd3cfa3d4d9d", + "bytes": 490293 }, { "path": "blueprints/trials-20260926/README.md", @@ -15349,7 +15498,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "ccf259a9b7bca8cf81cfa0ddfbe5f54e7bc95a073defebc74a28877bfee5f084", + "sha256": "a28a218e0927f099b698208b4ac4fc8fbafee240447d633a2c247d619bd73137", "bytes": 34986 }, { @@ -15464,8 +15613,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "d1f0f17e142e8bfca223006f72cb16fce65456609248a32b5cf7958ba9f54dd2", - "bytes": 287704 + "sha256": "4b45aa982068205635f95776bbfc7a4c73d283ea48586e480f3870e613450ecf", + "bytes": 287577 }, { "path": "catalogs/landscape/research-state.json", @@ -15474,8 +15623,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "975b5a515271c24b1a158594568a76f1b6d65db6eb920f561db77e056e20b8b1", - "bytes": 253392 + "sha256": "d8693629f50582cdabe9a8acdc4635339e47164648d2c603c6f79f8b71d6ab87", + "bytes": 280716 }, { "path": "catalogs/landscape/us-equities.json", @@ -15934,8 +16083,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "6e7ebbe64011f460b59ab310a328211737deec2f83543fb99c41d761958bff06", - "bytes": 56411 + "sha256": "bf7ec0855824fe11c18826fcc6a0e3e6efde68dbbfd4c69d4d8cf7d2f1f34612", + "bytes": 56726 }, { "path": "docs/comparison-progress-20260922.md", @@ -16232,6 +16381,11 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, + { + "path": "docs/decisions/2026-10-03-currency-wave-w1.md", + "sha256": "55b8017598f99b4ba705bd31f5223d0e8207d676b05324983193ce3bcd99de0f", + "bytes": 33686 + }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", "sha256": "a4c5ddf98c9fa778d07b60507a183818b1d243dda789bc06ee8bcd612fcbcedb", @@ -16404,8 +16558,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "d86649c5c4f7fe5686d588586588ad20f6b84f95b0b109cca510f82c5d0b40c4", - "bytes": 39778 + "sha256": "53273e2c45893786c20d934d3c0b6dfea59c69029f5acbd3b2ee8046c850f3da", + "bytes": 40049 }, { "path": "docs/full-stack-convergence.md", @@ -16444,7 +16598,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "506dab27e1618ac53a688b38eb21e3219f56acd65940f1315a77a588bcdae035", + "sha256": "1fe05b805ab475cb4cb163985574aa5428797298b095b93b1141086a93fee3c2", "bytes": 98818 }, { @@ -16574,8 +16728,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "feacb3a295970f1269ea2004127e5dd11a4f43c9e2fb29166e501346205091af", - "bytes": 18483 + "sha256": "c1b9e9cd27feb0ed823a2c0e942a741671e5ad2b84753e5196e09442b0fb1e3c", + "bytes": 18484 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -16584,12 +16738,12 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "3e699173f1dc25672eb0d95f05e169386a610646db4e3a82e9e67f39814dd41a", + "sha256": "48c863ef72ba02ce9575ae9a3dda34208979be94638a13625e58e50d311b64c8", "bytes": 561055 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "c540e0af3f9fccd04da00e7ddc73693b7184079455e1327ed961d096ae81f34b", + "sha256": "2bacd791380a39d8c046a0eb2002b24b6c6e10f414c480c19161260917a8c668", "bytes": 323968 }, { @@ -16684,7 +16838,7 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "c701409aa29644941e107e1102c1f0cc765509553f93c93872f27bf661cdde94", + "sha256": "9c5ae97dd6257f96b1bb66103c711bdb00b56c885efaccad73e6df4a551a0e30", "bytes": 591301 }, { @@ -16704,7 +16858,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "b85424755d2152313a6a7cfcbef8871c98f0f8f756e932287fa1aa1bf7e49a46", + "sha256": "2be6f8cc0bfbf11a88cb3036f1c91d0f61a06691f73637645e817c422be39776", "bytes": 92944 }, { @@ -18322,6 +18476,41 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", + "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", + "bytes": 108109 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", + "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", + "bytes": 13041 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", + "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", + "bytes": 28233 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", + "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", + "bytes": 18135 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", + "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", + "bytes": 74214 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", + "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", + "bytes": 121015 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", + "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", + "bytes": 26125 + }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -38509,7 +38698,7 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "80f899426a2b9b9d0a758e5e58227cbe09027852d0aa9bd42e8a8769c565d0ad", + "sha256": "5c37e2a4f69d47efa79b1c32b5a30cbff55f62212007eb58c1196b9a21ab94f8", "bytes": 4174 }, { @@ -50147,6 +50336,11 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, + { + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", + "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", + "bytes": 10611 + }, { "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json", "sha256": "b0c9e1d7c58e339dc2906e6a977ec04e6c1a808e826f9422407449ab34dd4f09", @@ -50357,6 +50551,11 @@ "sha256": "0d32534357501c011298420c07161c59940929cabd00a9b71d5d7817126f88c9", "bytes": 17126 }, + { + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", + "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", + "bytes": 8187 + }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -50382,11 +50581,21 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, + { + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", + "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", + "bytes": 10165 + }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, + { + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", + "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", + "bytes": 10463 + }, { "path": "evidence/receipts/mcporter-0142-qualification-20261004.json", "sha256": "9399c393875decb817d49a1ed59e1629ff445070453c2a2ba819e98d17a24cd1", @@ -50667,6 +50876,11 @@ "sha256": "9ad1db0b9e841cd780d04e544f6e75dde57fd88ebc6fc4f5b0bafd84287f20da", "bytes": 149558 }, + { + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", + "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", + "bytes": 7517 + }, { "path": "evidence/receipts/osv-oauthlib-pyjwt-reachability-20260929.json", "sha256": "f89e3a45ac10d44d00c268cc617c1fb7b5f77636fb1150af3c9e7bf4b26441ef", @@ -50692,11 +50906,21 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, + { + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", + "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", + "bytes": 6732 + }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, + { + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", + "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", + "bytes": 7731 + }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -50767,6 +50991,11 @@ "sha256": "24be77b12057c9cc7d29d0edbd0ba8af5005ceff82c2f1b1ffe34e5c424d1ab2", "bytes": 4906 }, + { + "path": "evidence/receipts/syft-1540-qualification-20261003.json", + "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", + "bytes": 7946 + }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -50842,6 +51071,11 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, + { + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", + "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", + "bytes": 6655 + }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -51379,18 +51613,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", + "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "bcbc611c905081a00ca6762d8fad0e478841b0e101a9adc4ce4d09450710c943", - "bytes": 101523 + "sha256": "32e90f075c5b6dd52fe64a79698592e22b4765b19a496486b5237d7f37d3bf6e", + "bytes": 104274 }, { "path": "observability/README.md", - "sha256": "7c7795560a7ef6541c91dfb8b0bf4e693f5dcdf9cfc75f262d8e4832057177e3", - "bytes": 15625 + "sha256": "64e714cc5708df81bf8931ea84b02d3ff4536e136da665fa0c8670d2d56be203", + "bytes": 16029 }, { "path": "observability/backends/README.md", @@ -51489,8 +51723,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "df33394028df2a687f7e39beefe0aa02978a0d6a0b97fd9d8a14f12e6075d3d6", - "bytes": 44636 + "sha256": "d0ec9824b54c8d8433b7e0dbb5279c9f4d089112944e1dab77ee76c7a4afa526", + "bytes": 45613 }, { "path": "observability/collector/claude-settings.json.example", @@ -51669,8 +51903,8 @@ }, { "path": "recipes/README.md", - "sha256": "5ce6c88fac8855b5c8138f6fa553073580f990ea3dd853a17b760a41e60ca9fa", - "bytes": 128045 + "sha256": "d9cc6ab495526b8520e1866c9305fbb2361e24c450116c418079866df765e293", + "bytes": 131699 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -51694,8 +51928,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", - "bytes": 5706 + "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", + "bytes": 6586 }, { "path": "recipes/saturation-sweep.md", @@ -51789,7 +52023,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "a5dce8ae180876bd6f676464fbfbda2bf60e479b1b865ca801c592d96e427e81", + "sha256": "6c903a399bb22e37e65836dc0cdd47ee1b0d947ef1462f387429fd1a6cddd2bf", "bytes": 115304 }, { @@ -52159,8 +52393,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "6621649f533fb9b1d62e902d3953447bd43ec6bb26ee3e1f35e693023200fb06", - "bytes": 52213 + "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", + "bytes": 52214 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -52212,6 +52446,11 @@ "sha256": "1bd3e90b095c326edf6327202bcbeeab7ed6ccc6c5789dc794062024baf6d64f", "bytes": 18302 }, + { + "path": "tests/test_blind_checkout.py", + "sha256": "d27efdf89e9ff89b0bd50c03a59e4efad5529e617d77ead110621616c20800f8", + "bytes": 67881 + }, { "path": "tests/test_blind_layer_decisions.py", "sha256": "327f104fc335a2b25f2a910e8cae44661fe9439764f4ab778412dbf3beeaea99", @@ -52709,18 +52948,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", - "bytes": 34089 + "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", + "bytes": 34441 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "01643e542017a248c166302b90f7218e42c83eceb3e4084b1a99a4bb73617a89", - "bytes": 25617 + "sha256": "ed7e6db7559dfb09c79be5d5a6150ec57710278b096293e73373b5681a2d5724", + "bytes": 25971 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "2f58b64cbd4f1af2b23ed869147278e2f84ad3357fef11a13c6496154fb1f15b", - "bytes": 37789 + "sha256": "96b901ada162f4a9d5c7445a4f5272ca86011d5e9227211405051ad12fe79665", + "bytes": 38105 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -52824,8 +53063,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "e8a7d735d73063ef82c4cff28bfa09a737d75a4fb69d84b49aec335ae2ba62b4", - "bytes": 45406 + "sha256": "9eae1b97d637079056994268e754f878bbafd4702fe8182cfef21f2f7b9bfcec", + "bytes": 47956 }, { "path": "tests/test_research_efficiency.py", @@ -52864,8 +53103,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", - "bytes": 9712 + "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", + "bytes": 9774 }, { "path": "tests/test_secret_path_guard.py", @@ -53292,6 +53531,11 @@ "sha256": "715c98a3ea23e71768326b19250cac5ce3e3bc1c568f540771ba64e45976a4ee", "bytes": 27482 }, + { + "path": "tools/sota-convergence/export_isolation_check.py", + "sha256": "7c0218c6545ea8d0274c71df8d4789a9f3e983dab45015905ad362dc6f0d3742", + "bytes": 34727 + }, { "path": "tools/sota-convergence/extract_layers.py", "sha256": "4be73f7d3b09fa9ea88ecb238d998e43b648c7c16bb56b8853e8672ca883bb2a", @@ -53609,7 +53853,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "17e56072c6b5568af421dd67b7dfb4db51906d11511e950448f611d58ba73808", + "sha256": "f93756235e3983a86eb632eb92f66417d48ab22a49506fcd5442cca5364d3947", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 81b8b6872..0bbd7a8f2 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -603,26 +603,27 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.8.0", - "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.9.0", + "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.8.0 --help" + "npx @modelcontextprotocol/inspector@2.9.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926" + "mcp-inspector-280-qualification-20260926", + "mcp-inspector-290-qualification-20261003" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" ], "source_pin": null, - "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -654,7 +655,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.7", + "version": "0.2.15", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -669,19 +670,20 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "openresearch-0215-qualification-20261003" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" ], - "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." + "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", + "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -693,13 +695,15 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "playwright-cli-0122-qualification-20261003" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli" + "https://github.com/microsoft/playwright-cli", + "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" ], "source_pin": null, - "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1064,7 +1068,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.79.0", + "version": "0.80.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1079,20 +1083,21 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "worktrunk-0800-qualification-20261003" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" ], - "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.161.0", + "version": "0.162.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1112,13 +1117,15 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "otelcol-contrib-0162-qualification-20261003" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib" + "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." }, { "id": "prometheus", @@ -1401,10 +1408,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.52.0", + "version": "1.54.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1413,13 +1420,14 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "syft-1540-qualification-20261003" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.52.0" + "https://github.com/anchore/syft/releases/tag/v1.54.0" ], - "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." }, { "id": "alpaca-py", @@ -1682,7 +1690,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.319", + "version": "1.108.327", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1695,7 +1703,7 @@ } } ], - "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1708,13 +1716,14 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "jcodemunch-1108327-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", - "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", + "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" ], - "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 9784e200db2b7d265a9cbe988c456785101fda31 Mon Sep 17 00:00:00 2001 From: Scout Date: Sun, 4 Oct 2026 17:33:37 -0400 Subject: [PATCH 19/50] Bootstrap and docs: W1's mcporter hold as dated history; claude-hud row cites main's receipt; kept W1 snapshot rows equal 4367dd46 (Opus read P1, P2s) GPT-6.1 Sol repair round through the packaged SDK worker; acceptance in the round's result. Co-Authored-By: Claude Opus 5.5 --- adoption/bootstrap.md | 10 +++- catalogs/landscape/upstream-snapshot.json | 4 +- docs/community-native-practice.md | 2 +- docs/decisions/2026-10-03-currency-wave-w1.md | 56 ++++++++++++++++++- docs/harness-defaults.md | 2 + manifests/evidence.json | 18 +++--- 6 files changed, 77 insertions(+), 15 deletions(-) diff --git a/adoption/bootstrap.md b/adoption/bootstrap.md index 615f7b388..ca2d17d45 100644 --- a/adoption/bootstrap.md +++ b/adoption/bootstrap.md @@ -173,7 +173,15 @@ GitHub-hosted macOS runner; see retain the host failures and limits. Darwin artifacts are artifact-checked only; the Mac host collects its own execution evidence. - On 2026-10-03, `pins-linux-x86_64.json` changed again after `v2026.09.26.2`: `orx` 0.2.7 to 0.2.15 (URLs, hashes and install notes). A host at that tag retains OpenResearch 0.2.7. mcporter stays at the accepted Linux 0.14.1 pin; its 0.14.2 compatibility attempt is held. The W1 scratch qualification and its functional limits are in [the dated decision](../docs/decisions/2026-10-03-currency-wave-w1.md). The Claude HUD marketplace recipe and template now select v0.10.0 at `75683c6de1ac07f6bbef00d739001679dba0740c`; hosts at the tag keep v0.8.0. + On 2026-10-03, `pins-linux-x86_64.json` changed again after `v2026.09.26.2`: + `orx` 0.2.7 to 0.2.15 (URLs, hashes and install notes). A host at that tag + retains OpenResearch 0.2.7. W1 held the mcporter 0.14.2 candidate on + 2026-10-03 because its resolved tree was inconsistent and its persistent + daemon/`serve` role was unqualified; the selected Linux pin then remained + 0.14.1. Main's 2026-10-04 move in #693 selected Linux mcporter 0.14.2; see + [that receipt's limitations](../evidence/receipts/mcporter-0142-qualification-20261004.json). + The W1 scratch qualification and its functional limits remain dated history + in [the decision](../docs/decisions/2026-10-03-currency-wave-w1.md). `pins-linux-x86_64.json` and `adoption/bootstrap-linux.sh` changed after `v2026.09.25.2`. The Linux pins file gained `repomix`, `toon`, diff --git a/catalogs/landscape/upstream-snapshot.json b/catalogs/landscape/upstream-snapshot.json index c7c922d4c..cfde7e252 100644 --- a/catalogs/landscape/upstream-snapshot.json +++ b/catalogs/landscape/upstream-snapshot.json @@ -36,7 +36,7 @@ "poppler", "tavily-cli" ], - "api_commands": 274, + "api_commands": 277, "api_nonzero_results": 8, "corrected_invalid_archive_digest_ref_attempts": 2, "newer_stable_release_review_queue": [ @@ -53,7 +53,7 @@ } ], "recommendation": "Retain current qualified pins; review the four newer stable releases against actual capability gaps before upgrading. Refresh canonical Headroom identity in future manifest maintenance without treating its transfer as a functional replacement.", - "selected_component_api_commands": 257, + "selected_component_api_commands": 260, "initial_star_delta_commands": 1, "complete_star_snapshot_commands": 7, "added_candidate_source_screen_commands": 9, diff --git a/docs/community-native-practice.md b/docs/community-native-practice.md index 0ef763fb8..3db2551d6 100644 --- a/docs/community-native-practice.md +++ b/docs/community-native-practice.md @@ -153,7 +153,7 @@ The rows below point to those IDs. "agent-lab" marks a change made on agent-lab | [Yeachan-Heo/oh-my-claudecode](https://github.com/Yeachan-Heo/oh-my-claudecode/tree/9fd35ece5d6de65b511bf43b55e42c499e4fc194) | `9fd35ece5d6de65b511bf43b55e42c499e4fc194` | Recorded alternative; not installed. The stale-header gap is refuted: the header existed only in a stale local checkout and was removed at `a458886`. The commit-eligible artifacts are real; the `.gitignore` entries and the staging rule are adopted on the agent-lab branch (A8, A9, pending merge; shared with the addyosmani row). Four contradictions are rejected. It refines the README-depth row for this repository in `catalogs/us-equities/star-audit.json` (pin `5281b19e`). That row is unchanged and does not yet point here; [its owner](decisions/2026-09-24-community-sweep.md#deferred-work-and-owners) adds the pointer. | Any of: a paired run on this project's packets where OMC's hook and agent layer beats native Ultracode on the accepted result or on complete usage; a recorded failure in a covered area that OMC closes and the native setup does not. | | [karanb192/claude-code-hooks](https://github.com/karanb192/claude-code-hooks/tree/888ef0827f121d583fb3a07c6253a297787946dc) | `888ef0827f121d583fb3a07c6253a297787946dc` | adopt-practice for 2 of 4 gaps, reimplemented locally: the SessionEnd-to-SessionStart notice split for [`effort-default-guard.py`](../adoption/hooks/claude/effort-default-guard.py) (A6, applied here); a project Explore override, corrected to Sonnet at effort max (A2, agent-lab). The test-discovery gap is refuted at the latest ref (hermetic-suites job `4051cf2`), and the invisible-Unicode scan is rejected. The guard and gating plugins stay excluded by PS-1, and the token-diet presets are contradicted by DS-4. | Any of: DS-3's trial where an Opus Explore changes the accepted result, or a user decision that Opus Explore is deliberate; a documented change that makes SessionEnd surface `systemMessage`; a tracked test file neither run nor excluded; a worker is observed taking a harmful action. | | [mksglu/context-mode](https://github.com/mksglu/context-mode/tree/5a92b7caaf0086d04b87cc03a82505c891aa8254) | `5a92b7caaf0086d04b87cc03a82505c891aa8254` | Stays the core large-output lane at the installed `6f0cc68`; the 6 later commits change only `stats.json` (`gh api` compare). No new practice: the git-history-before-fix gap is rejected. Pin enforcement is handled under the claude-plugins-official row. | Any of: a recorded regression where a fix undid an earlier fix; the installed `gitCommitSha` moves off `6f0cc68` without a record; a credential is found in the context-mode or ai-memory session stores; a measured comparison shows native features alone match Context Mode. | -| [jarrodwatts/claude-hud](https://github.com/jarrodwatts/claude-hud/tree/939eb66485832dead1b0a28a954f76f7aa2bdb06) | `939eb66485832dead1b0a28a954f76f7aa2bdb06` | Selected statusline pin is v0.10.0 (`75683c6de1ac07f6bbef00d739001679dba0740c`) as of 2026-10-03, pinned by marketplace ref; [W1 qualification and M14 amendment](decisions/2026-10-03-currency-wave-w1.md) cover synthetic rendering and the guarded template, with no host switch. The earlier v0.8.0 review remains historical. `refreshInterval` is [keep-but-compare M14](decisions/2026-09-24-community-sweep.md#keep-but-compare): the docs support it for the idle-coordinator pattern, but the v0.8.0 git diff in each render rewrote `.git/index` under `--no-optional-locks` on git 2.43.0 (reproduced), while an env-injected `diff.autoRefreshIndex=false` did not. Updated 2026-09-28: #402 (`d022295a`, item 5 of the [settings decision](decisions/2026-09-27-claude-harness-settings.md)) adopted `refreshInterval: 5` in the settings template without the paired git setting, which follows in the template and host halves ([deferred](decisions/2026-09-28-community-sweep.md#deferred-handed-off-and-host-scope-items)); M14's idle run stays the check. | Any of: a live idle session shows stale segments (then add `refreshInterval` 5-10 with the env-injected config); a tagged release carrying the hyperlink-wrap fix from #795, or another changed native-field rendering path (re-review #734 and #719); a need to display cache or cost timing (use the native fields). | +| [jarrodwatts/claude-hud](https://github.com/jarrodwatts/claude-hud/tree/939eb66485832dead1b0a28a954f76f7aa2bdb06) | `939eb66485832dead1b0a28a954f76f7aa2bdb06` | Selected statusline pin is v0.10.0 (`75683c6de1ac07f6bbef00d739001679dba0740c`), pinned by marketplace ref through main's #693 on 2026-10-04; [main's qualification receipt](../evidence/receipts/claude-hud-0100-qualification-20261004.json) records its host observations and limitations. [W1's guarded template and M14 amendment](decisions/2026-10-03-currency-wave-w1.md#hud-integration-and-m14-amendment) retain dated synthetic-render and template-fixture evidence; W1's qualification receipt remains history. The earlier v0.8.0 review remains historical. `refreshInterval` is [keep-but-compare M14](decisions/2026-09-24-community-sweep.md#keep-but-compare): the docs support it for the idle-coordinator pattern, but the v0.8.0 git diff in each render rewrote `.git/index` under `--no-optional-locks` on git 2.43.0 (reproduced), while an env-injected `diff.autoRefreshIndex=false` did not. Updated 2026-09-28: #402 (`d022295a`, item 5 of the [settings decision](decisions/2026-09-27-claude-harness-settings.md)) adopted `refreshInterval: 5` in the settings template without the paired git setting, which follows in the template and host halves ([deferred](decisions/2026-09-28-community-sweep.md#deferred-handed-off-and-host-scope-items)); M14's idle run stays the check. | Any of: a live idle session shows stale segments (then add `refreshInterval` 5-10 with the env-injected config); a tagged release carrying the hyperlink-wrap fix from #795, or another changed native-field rendering path (re-review #734 and #719); a need to display cache or cost timing (use the native fields). | ### Follow-up reads diff --git a/docs/decisions/2026-10-03-currency-wave-w1.md b/docs/decisions/2026-10-03-currency-wave-w1.md index 2af66edb1..76a09bab5 100644 --- a/docs/decisions/2026-10-03-currency-wave-w1.md +++ b/docs/decisions/2026-10-03-currency-wave-w1.md @@ -409,6 +409,14 @@ installation recipe follow main's W1's [2026-10-03 HUD receipt](../../evidence/receipts/claude-hud-0100-qualification-20261003.json) remains dated history, outside the component's current `evidence_ids`. +This merge also retains three W1 claude-hud integration edits: the guarded +`statusLine` command in `adoption/templates/claude.settings.template.json`, +the 0.8.0-to-0.10.0 existing-installation upgrade block in +`adoption/bootstrap.md`, and the guarded-template/M14 amendment link in +`docs/community-native-practice.md`. These edits have their W1 fixture and +source-review scopes; main's 2026-10-04 receipt remains the current selection +evidence. The bootstrap upgrade block still names host verification as pending. + RTK follows main at 0.51.0 and mcporter follows main at 0.14.2. W1 retains its seven unique moves and their original 2026-10-03 receipts: jcodemunch-mcp 1.108.327, mcp-inspector 2.9.0, openresearch 0.2.15, @@ -436,8 +444,10 @@ The source comparison uses this worktree's merge-index stages 1, 2 and 3, with PR head `4367dd46addc8fa424a754ee84b0167cfa8365b1` and main `14048b840425c2569e0df60a6596e94e601da15b`. Component rows follow the policy above; other changes retain both branches' nonconflicting edits. Summary -counters use main plus W1's delta from stage 1: `api_commands` is 274 + 0 = -274, and `selected_component_api_commands` is 257 + 0 = 257. +counters use main plus the check-entry delta contributed by the retained W1 +rows: `api_commands` is 274 + 3 = 277, and +`selected_component_api_commands` is 257 + 3 = 260. The 2026-10-04 review +repair below records the correction to the original field-delta calculation. Generated projections use the merged repository's supported generators and documented default inputs. Correction to the receipt-generation assumption: @@ -455,3 +465,45 @@ manifest registrations before registering every file differing from main. No new upstream adoption or landscape judgment is made in this bounded offline merge; the dated mcporter hold and main receipt limitations remain inputs to their owners' next qualification sweep. + + +## Merge review repair, 2026-10-04 + +The review of `4c468bb38305166129bf15ac03a309efdd047fb9` found stale current +mcporter wording in the W1 bootstrap paragraph, outdated HUD selection +attribution in the community row, and missing W1 command-count deltas. The +bootstrap paragraph now states W1's 2026-10-03 hold as history and points to +main's 2026-10-04 mcporter selection and receipt limitations. The community +row credits main's #693 HUD selection and keeps the W1 link for the guarded +template and M14 amendment. Both 2026-10-03 receipts retain their original +bytes and dated scopes. This repair supports the same foundation tooling and +north-star research action named above. + +Correction and verification path: the first merge used changes in the summary +counter fields as the W1 delta, although W1 had not updated those fields. +Read `catalogs/landscape/upstream-snapshot.json` directly with `git show` at +W1 `4367dd46addc8fa424a754ee84b0167cfa8365b1`, main +`14048b840425c2569e0df60a6596e94e601da15b`, and their common base +`59f8a1e36e1f2870d9de18a16c42f1e72cdae1c6`. The mcp-inspector, +opentelemetry-collector-contrib and playwright-cli rows already match W1 +exactly: each has four checks in W1 and three in main and the base. Their +fourth `commits/` checks originated in W1, rather than in the merge. +Main did not change those rows. Retain those exact W1 rows and add their +three checks to main's counters, producing 277 and 260. No new API calls +were made for this repair. + +The retained arrays contain 261 check entries, compared with main's 258. +The base already contained 255 check entries against a selected-component +summary counter of 254. This repair carries that dated one-entry discrepancy +forward while adding the measured W1 delta; it does not relabel the historical +summary as a newly reconciled count of every array entry. + +Completeness critic: inspect all 55 PR paths differing from main for the same +current-tense pin contradiction, while recognizing dated decisions and +qualification artifacts as history. The operational mcporter paragraph and +HUD row were the remaining matching statements. Compare all seven retained +snapshot rows to W1 and main's moved rows to main, regenerate the handbook +from its supported default inputs, verify its receipt hashes, run the named +acceptance checks, and report the names and reasons of any skipped tests. +The general lesson is to compare native check entries before trusting unchanged +summary fields, and to review current guide wording alongside selection rows. diff --git a/docs/harness-defaults.md b/docs/harness-defaults.md index ef33ce0c4..bdc0b4645 100644 --- a/docs/harness-defaults.md +++ b/docs/harness-defaults.md @@ -86,6 +86,8 @@ When a claim or action proves wrong, correct it where it was relayed and record | Date | Anti-pattern | What happened | Rule or check that prevents it | Where enforced | | --- | --- | --- | --- | --- | +| 2026-10-04 | Computing merge command deltas from unchanged summary fields | PR #642 at `4c468bb3` retained three W1 checks beyond main but carried main's 274/257 counters because W1 had not updated its summary fields. Exact reads of the W1, main and common-base snapshot rows exposed the omitted delta; the correction produces 277/260 and preserves the base's separate one-entry discrepancy. | Derive a merge delta from the retained native command entries against the governing branch, and state inherited counter discrepancies explicitly; unchanged summaries do not establish unchanged commands. | This log; [W1 merge review repair](decisions/2026-10-03-currency-wave-w1.md#merge-review-repair-2026-10-04). | +| 2026-10-04 | Resolving selection rows while leaving current guide wording tied to the superseded decision | PR #642 selected main's mcporter 0.14.2 and HUD receipt while the bootstrap still said mcporter stays at 0.14.1 and the community row attributed the HUD selection to W1's October 3 qualification. The PR-wide source review found both guide statements. | Inspect every PR path for current selection and qualification statements after a merge; mark older holds and receipts as dated history and credit the receipt that governs the current selection. | This log; [W1 merge review repair](decisions/2026-10-03-currency-wave-w1.md#merge-review-repair-2026-10-04). | | 2026-10-04 | Replacing a historical launcher candidate while claiming refusal preservation | PR #685 round two replaced the prior GNU env branch and command tail with a uutils reading, and coreutils dispatch skipped the raw keyring start. The supplied R1–R5b oracle found lost main and round-one refusals despite a passing filtered replay. The expanded comparison fails at `ec382e21` and passes after retaining all candidates. | Queue the union of raw, GNU and uutils command tails, scan raw dispatch words before unwrapping, and compare both pinned baselines over the supplied oracle and existing fixture rows. | `tests/test_secret_path_guard.py`, `test_review_685_monotonicity_against_pinned_baselines`, with hash-pinned originals in `tests/fixtures/guard_685/`; returned evidence in [the repair record](decisions/2026-09-24-secret-storage.md#addendum-2026-10-04-pr-685-bounded-repair). | | 2026-10-04 | Sharing launcher option parsing because implementations share a literal string splitter | PR #685 round one treated GNU and uutils env split options alike. Uutils 0.10.0 preprocesses only literal split prefixes, keeps scanning after assignments, and lets clap discard inferred split values; the incorrect allow controls could dump the environment. The corrected review tests produce 95 failing subtests at `a7888d31`. | Check each implementation's preprocessing and final option parser independently; refuse if either reading refuses, and replay against both main and the repair's starting head. | `tests/test_secret_path_guard.py`, `test_review_685_uutils_split_preprocessing`; sources and returned evidence in [the secret-storage repair record](decisions/2026-09-24-secret-storage.md#addendum-2026-10-04-pr-685-bounded-repair). | | 2026-10-04 | Letting a no-command refusal hide a broken launcher test | The PR #685 split-string row without a trailing operand already returned `environment_dump` at `385e3f65`. Adding `EXAMPLE_OTHER` makes that same revision allow the command and the repaired guard refuse it. | Include a harmless trailing operand when testing effective launcher argv so an absent-command fallback cannot supply the expected refusal. | `tests/test_secret_path_guard.py`, `test_review_685_env_split_string_effective_argv`; the retained round-two baseline comparison. | diff --git a/manifests/evidence.json b/manifests/evidence.json index 1f77db513..6aa78217e 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4612,8 +4612,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "a1b3175b349864475c34c390683cd7fa2afa92e14b5436304add77b351c36111", - "bytes": 66718 + "sha256": "e014bf80f20192e3a9446b6444cf1efa39c6bd6b0b2c76c5cdac1f5ea8e2a284", + "bytes": 66876 }, { "path": "adoption/credential-inventory.json", @@ -15623,7 +15623,7 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "d8693629f50582cdabe9a8acdc4635339e47164648d2c603c6f79f8b71d6ab87", + "sha256": "8312bf92a96b1e1899ae6c816b7b45d2d9757b65f8f69899268c492071840a85", "bytes": 280716 }, { @@ -16083,8 +16083,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "bf7ec0855824fe11c18826fcc6a0e3e6efde68dbbfd4c69d4d8cf7d2f1f34612", - "bytes": 56726 + "sha256": "4334eda38f9961f971e4c5394cd6fef418cef236d3ad73c34a0e080b5b71be21", + "bytes": 56958 }, { "path": "docs/comparison-progress-20260922.md", @@ -16383,8 +16383,8 @@ }, { "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "55b8017598f99b4ba705bd31f5223d0e8207d676b05324983193ce3bcd99de0f", - "bytes": 33686 + "sha256": "a34de606804ec323dc10830a08e33c5f4dd72056a4a54ae85ba606f84eb2d907", + "bytes": 36867 }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", @@ -16608,8 +16608,8 @@ }, { "path": "docs/harness-defaults.md", - "sha256": "e404039f0ff6e51a62d88d11e00271b435569969b457e51a3b33762cff357927", - "bytes": 176430 + "sha256": "b1934f3677f293a32d6ec07d52a885e752aa4baeee0d936ac51aa37cdf87417d", + "bytes": 177812 }, { "path": "docs/harness-rules-convergence-20260922.md", From 802cb223557fbd4bf5823b91e8d7c6d5be79bec1 Mon Sep 17 00:00:00 2001 From: Scout Date: Sun, 4 Oct 2026 17:33:37 -0400 Subject: [PATCH 20/50] Hot-file protocol: reset manifests/evidence.json manifests/stack.json to the merge base before the final hot-file commit Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 364 +++++++--------------------------------- manifests/stack.json | 79 ++++----- 2 files changed, 95 insertions(+), 348 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 6aa78217e..87f228481 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4148,155 +4148,6 @@ "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." ], "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" - }, - { - "id": "jcodemunch-1108327-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "jcodemunch-mcp" - ], - "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", - "limitations": [ - "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", - "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" - }, - { - "id": "playwright-cli-0122-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "playwright-cli" - ], - "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", - "limitations": [ - "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", - "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", - "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" - }, - { - "id": "openresearch-0215-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "openresearch" - ], - "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", - "limitations": [ - "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", - "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" - }, - { - "id": "mcp-inspector-290-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "mcp-inspector" - ], - "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", - "limitations": [ - "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", - "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", - "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" - }, - { - "id": "claude-hud-0100-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-hud" - ], - "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", - "limitations": [ - "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", - "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", - "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" - }, - { - "id": "otelcol-contrib-0162-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "opentelemetry-collector-contrib" - ], - "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", - "limitations": [ - "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", - "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" - }, - { - "id": "worktrunk-0800-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "worktrunk" - ], - "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", - "limitations": [ - "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", - "The host installation and rollback launcher were not switched.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" - }, - { - "id": "mcporter-0142-qualification-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "mcporter" - ], - "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", - "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", - "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", - "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" - }, - { - "id": "syft-1540-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "syft" - ], - "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", - "limitations": [ - "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", - "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", - "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/syft-1540-qualification-20261003.json" } ], "files": [ @@ -4382,7 +4233,7 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "d73428cfa772bee46d9f18e835cc7b054267ba05c324d749b745cdb7debbf772", + "sha256": "0153fc7595f7dd64d077366b2b0251cbe78f13a47f90798ab6d3d746624c2aec", "bytes": 25235 }, { @@ -4427,7 +4278,7 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "652bf181e1097963b1ce23d81eefb9bc9fb4c0f3051c3c5611c07ede4ab8a291", + "sha256": "5b52e3f50cf6ecb26cfe36f8ca54c577b5ff07ec4027a20102bc731c066cf4e5", "bytes": 20110 }, { @@ -4462,8 +4313,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "8c70b40953230c79e3d3df75fc492d689bf8884cb53acd7b6b6eadb63f2558c9", - "bytes": 7589 + "sha256": "92ab3fa8354aa9fbaad781597354ef5a942c709b5950109bb13c8b77780a40f8", + "bytes": 7576 }, { "path": ".github/workflows/token-report.yml", @@ -4612,8 +4463,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "e014bf80f20192e3a9446b6444cf1efa39c6bd6b0b2c76c5cdac1f5ea8e2a284", - "bytes": 66876 + "sha256": "4ed3605282cd0f6f407b35a0b8a017863db4e8476d1d9503b302ced68abb7292", + "bytes": 64541 }, { "path": "adoption/credential-inventory.json", @@ -4712,8 +4563,8 @@ }, { "path": "adoption/manifest.json", - "sha256": "4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714", - "bytes": 20038 + "sha256": "7bb179e8440be17b75484c21495e66385ea8eb959a491d43d2488056ddede09a", + "bytes": 20102 }, { "path": "adoption/new-wsl-profile.json", @@ -4757,8 +4608,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "7e210c9c56953ff5091c35909a0e3b5c94a4a519932eeda82878afb22b3c2961", - "bytes": 37151 + "sha256": "804eba0e086670c75e6b2f3725734477914318987c99fb90195680188be337c9", + "bytes": 37335 }, { "path": "adoption/pins-macos-arm64.json", @@ -4772,8 +4623,8 @@ }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "51b3c5a8651122f3e24c6df494f7db0105127d9d30615e00af98fd73a356b76c", - "bytes": 26899 + "sha256": "95f59e4cc13c2b03237cb6c973b2f8203275eccd1b0eb023c24a6a307db42504", + "bytes": 26347 }, { "path": "adoption/platforms/macos-arm64.md", @@ -4832,8 +4683,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "f389b2b98e28c856136ca9d2e19cfb1464b45207719e5ae48e5e6b1e7d72e4ed", - "bytes": 13207 + "sha256": "5e27edf9147dfb60cc7311d4fe2e76312a8fd602021c60936023a9ce2273edeb", + "bytes": 13003 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -10273,8 +10124,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "a943eea648fdfa7606cb2058e4280340d680937664a6c955857ecd3cfa3d4d9d", - "bytes": 490293 + "sha256": "9eece716982d44ddc5ff844003680c9b04f45fbe7b21d35f18188ee6a70de15c", + "bytes": 484284 }, { "path": "blueprints/trials-20260926/README.md", @@ -15498,7 +15349,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "a28a218e0927f099b698208b4ac4fc8fbafee240447d633a2c247d619bd73137", + "sha256": "ccf259a9b7bca8cf81cfa0ddfbe5f54e7bc95a073defebc74a28877bfee5f084", "bytes": 34986 }, { @@ -15613,8 +15464,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "4b45aa982068205635f95776bbfc7a4c73d283ea48586e480f3870e613450ecf", - "bytes": 287577 + "sha256": "d1f0f17e142e8bfca223006f72cb16fce65456609248a32b5cf7958ba9f54dd2", + "bytes": 287704 }, { "path": "catalogs/landscape/research-state.json", @@ -15623,8 +15474,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "8312bf92a96b1e1899ae6c816b7b45d2d9757b65f8f69899268c492071840a85", - "bytes": 280716 + "sha256": "975b5a515271c24b1a158594568a76f1b6d65db6eb920f561db77e056e20b8b1", + "bytes": 253392 }, { "path": "catalogs/landscape/us-equities.json", @@ -16083,8 +15934,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "4334eda38f9961f971e4c5394cd6fef418cef236d3ad73c34a0e080b5b71be21", - "bytes": 56958 + "sha256": "6e7ebbe64011f460b59ab310a328211737deec2f83543fb99c41d761958bff06", + "bytes": 56411 }, { "path": "docs/comparison-progress-20260922.md", @@ -16381,11 +16232,6 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, - { - "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "a34de606804ec323dc10830a08e33c5f4dd72056a4a54ae85ba606f84eb2d907", - "bytes": 36867 - }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", "sha256": "a4c5ddf98c9fa778d07b60507a183818b1d243dda789bc06ee8bcd612fcbcedb", @@ -16558,8 +16404,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "53273e2c45893786c20d934d3c0b6dfea59c69029f5acbd3b2ee8046c850f3da", - "bytes": 40049 + "sha256": "d86649c5c4f7fe5686d588586588ad20f6b84f95b0b109cca510f82c5d0b40c4", + "bytes": 39778 }, { "path": "docs/full-stack-convergence.md", @@ -16598,7 +16444,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "1fe05b805ab475cb4cb163985574aa5428797298b095b93b1141086a93fee3c2", + "sha256": "506dab27e1618ac53a688b38eb21e3219f56acd65940f1315a77a588bcdae035", "bytes": 98818 }, { @@ -16608,8 +16454,8 @@ }, { "path": "docs/harness-defaults.md", - "sha256": "b1934f3677f293a32d6ec07d52a885e752aa4baeee0d936ac51aa37cdf87417d", - "bytes": 177812 + "sha256": "e404039f0ff6e51a62d88d11e00271b435569969b457e51a3b33762cff357927", + "bytes": 176430 }, { "path": "docs/harness-rules-convergence-20260922.md", @@ -16728,8 +16574,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "c1b9e9cd27feb0ed823a2c0e942a741671e5ad2b84753e5196e09442b0fb1e3c", - "bytes": 18484 + "sha256": "feacb3a295970f1269ea2004127e5dd11a4f43c9e2fb29166e501346205091af", + "bytes": 18483 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -16738,12 +16584,12 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "48c863ef72ba02ce9575ae9a3dda34208979be94638a13625e58e50d311b64c8", + "sha256": "3e699173f1dc25672eb0d95f05e169386a610646db4e3a82e9e67f39814dd41a", "bytes": 561055 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "2bacd791380a39d8c046a0eb2002b24b6c6e10f414c480c19161260917a8c668", + "sha256": "c540e0af3f9fccd04da00e7ddc73693b7184079455e1327ed961d096ae81f34b", "bytes": 323968 }, { @@ -16838,7 +16684,7 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "9c5ae97dd6257f96b1bb66103c711bdb00b56c885efaccad73e6df4a551a0e30", + "sha256": "c701409aa29644941e107e1102c1f0cc765509553f93c93872f27bf661cdde94", "bytes": 591301 }, { @@ -16858,7 +16704,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "2be6f8cc0bfbf11a88cb3036f1c91d0f61a06691f73637645e817c422be39776", + "sha256": "b85424755d2152313a6a7cfcbef8871c98f0f8f756e932287fa1aa1bf7e49a46", "bytes": 92944 }, { @@ -18476,41 +18322,6 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", - "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", - "bytes": 108109 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", - "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", - "bytes": 13041 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", - "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", - "bytes": 28233 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", - "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", - "bytes": 18135 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", - "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", - "bytes": 74214 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", - "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", - "bytes": 121015 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", - "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", - "bytes": 26125 - }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -38698,7 +38509,7 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "5c37e2a4f69d47efa79b1c32b5a30cbff55f62212007eb58c1196b9a21ab94f8", + "sha256": "80f899426a2b9b9d0a758e5e58227cbe09027852d0aa9bd42e8a8769c565d0ad", "bytes": 4174 }, { @@ -50336,11 +50147,6 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, - { - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", - "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", - "bytes": 10611 - }, { "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json", "sha256": "b0c9e1d7c58e339dc2906e6a977ec04e6c1a808e826f9422407449ab34dd4f09", @@ -50551,11 +50357,6 @@ "sha256": "0d32534357501c011298420c07161c59940929cabd00a9b71d5d7817126f88c9", "bytes": 17126 }, - { - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", - "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", - "bytes": 8187 - }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -50581,21 +50382,11 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, - { - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", - "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", - "bytes": 10165 - }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, - { - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", - "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", - "bytes": 10463 - }, { "path": "evidence/receipts/mcporter-0142-qualification-20261004.json", "sha256": "9399c393875decb817d49a1ed59e1629ff445070453c2a2ba819e98d17a24cd1", @@ -50876,11 +50667,6 @@ "sha256": "9ad1db0b9e841cd780d04e544f6e75dde57fd88ebc6fc4f5b0bafd84287f20da", "bytes": 149558 }, - { - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", - "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", - "bytes": 7517 - }, { "path": "evidence/receipts/osv-oauthlib-pyjwt-reachability-20260929.json", "sha256": "f89e3a45ac10d44d00c268cc617c1fb7b5f77636fb1150af3c9e7bf4b26441ef", @@ -50906,21 +50692,11 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, - { - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", - "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", - "bytes": 6732 - }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, - { - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", - "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", - "bytes": 7731 - }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -50991,11 +50767,6 @@ "sha256": "24be77b12057c9cc7d29d0edbd0ba8af5005ceff82c2f1b1ffe34e5c424d1ab2", "bytes": 4906 }, - { - "path": "evidence/receipts/syft-1540-qualification-20261003.json", - "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", - "bytes": 7946 - }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -51071,11 +50842,6 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, - { - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", - "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", - "bytes": 6655 - }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -51613,18 +51379,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", + "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "32e90f075c5b6dd52fe64a79698592e22b4765b19a496486b5237d7f37d3bf6e", - "bytes": 104274 + "sha256": "bcbc611c905081a00ca6762d8fad0e478841b0e101a9adc4ce4d09450710c943", + "bytes": 101523 }, { "path": "observability/README.md", - "sha256": "64e714cc5708df81bf8931ea84b02d3ff4536e136da665fa0c8670d2d56be203", - "bytes": 16029 + "sha256": "7c7795560a7ef6541c91dfb8b0bf4e693f5dcdf9cfc75f262d8e4832057177e3", + "bytes": 15625 }, { "path": "observability/backends/README.md", @@ -51723,8 +51489,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "d0ec9824b54c8d8433b7e0dbb5279c9f4d089112944e1dab77ee76c7a4afa526", - "bytes": 45613 + "sha256": "df33394028df2a687f7e39beefe0aa02978a0d6a0b97fd9d8a14f12e6075d3d6", + "bytes": 44636 }, { "path": "observability/collector/claude-settings.json.example", @@ -51903,8 +51669,8 @@ }, { "path": "recipes/README.md", - "sha256": "d9cc6ab495526b8520e1866c9305fbb2361e24c450116c418079866df765e293", - "bytes": 131699 + "sha256": "5ce6c88fac8855b5c8138f6fa553073580f990ea3dd853a17b760a41e60ca9fa", + "bytes": 128045 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -51928,8 +51694,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", - "bytes": 6586 + "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", + "bytes": 5706 }, { "path": "recipes/saturation-sweep.md", @@ -52023,7 +51789,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "6c903a399bb22e37e65836dc0cdd47ee1b0d947ef1462f387429fd1a6cddd2bf", + "sha256": "a5dce8ae180876bd6f676464fbfbda2bf60e479b1b865ca801c592d96e427e81", "bytes": 115304 }, { @@ -52393,8 +52159,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", - "bytes": 52214 + "sha256": "6621649f533fb9b1d62e902d3953447bd43ec6bb26ee3e1f35e693023200fb06", + "bytes": 52213 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -52446,11 +52212,6 @@ "sha256": "1bd3e90b095c326edf6327202bcbeeab7ed6ccc6c5789dc794062024baf6d64f", "bytes": 18302 }, - { - "path": "tests/test_blind_checkout.py", - "sha256": "d27efdf89e9ff89b0bd50c03a59e4efad5529e617d77ead110621616c20800f8", - "bytes": 67881 - }, { "path": "tests/test_blind_layer_decisions.py", "sha256": "327f104fc335a2b25f2a910e8cae44661fe9439764f4ab778412dbf3beeaea99", @@ -52948,18 +52709,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", - "bytes": 34441 + "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", + "bytes": 34089 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "ed7e6db7559dfb09c79be5d5a6150ec57710278b096293e73373b5681a2d5724", - "bytes": 25971 + "sha256": "01643e542017a248c166302b90f7218e42c83eceb3e4084b1a99a4bb73617a89", + "bytes": 25617 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "96b901ada162f4a9d5c7445a4f5272ca86011d5e9227211405051ad12fe79665", - "bytes": 38105 + "sha256": "2f58b64cbd4f1af2b23ed869147278e2f84ad3357fef11a13c6496154fb1f15b", + "bytes": 37789 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -53063,8 +52824,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "9eae1b97d637079056994268e754f878bbafd4702fe8182cfef21f2f7b9bfcec", - "bytes": 47956 + "sha256": "e8a7d735d73063ef82c4cff28bfa09a737d75a4fb69d84b49aec335ae2ba62b4", + "bytes": 45406 }, { "path": "tests/test_research_efficiency.py", @@ -53103,8 +52864,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", - "bytes": 9774 + "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", + "bytes": 9712 }, { "path": "tests/test_secret_path_guard.py", @@ -53531,11 +53292,6 @@ "sha256": "715c98a3ea23e71768326b19250cac5ce3e3bc1c568f540771ba64e45976a4ee", "bytes": 27482 }, - { - "path": "tools/sota-convergence/export_isolation_check.py", - "sha256": "7c0218c6545ea8d0274c71df8d4789a9f3e983dab45015905ad362dc6f0d3742", - "bytes": 34727 - }, { "path": "tools/sota-convergence/extract_layers.py", "sha256": "4be73f7d3b09fa9ea88ecb238d998e43b648c7c16bb56b8853e8672ca883bb2a", @@ -53853,7 +53609,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "f93756235e3983a86eb632eb92f66417d48ab22a49506fcd5442cca5364d3947", + "sha256": "17e56072c6b5568af421dd67b7dfb4db51906d11511e950448f611d58ba73808", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 0bbd7a8f2..81b8b6872 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -603,27 +603,26 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.9.0", - "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.8.0", + "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.9.0 --help" + "npx @modelcontextprotocol/inspector@2.8.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926", - "mcp-inspector-290-qualification-20261003" + "mcp-inspector-280-qualification-20260926" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", + "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -655,7 +654,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.15", + "version": "0.2.7", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -670,20 +669,19 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "openresearch-0215-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" ], - "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", - "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." + "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", + "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -695,15 +693,13 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921", - "playwright-cli-0122-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli", - "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" + "https://github.com/microsoft/playwright-cli" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", + "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1068,7 +1064,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.80.0", + "version": "0.79.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1083,21 +1079,20 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "worktrunk-0800-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" ], - "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", + "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.162.0", + "version": "0.161.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1117,15 +1112,13 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "otelcol-contrib-0162-qualification-20261003" + "claude-repository-evidence-20260921" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" + "https://github.com/open-telemetry/opentelemetry-collector-contrib" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "prometheus", @@ -1408,10 +1401,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.54.0", + "version": "1.52.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", + "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1420,14 +1413,13 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921", - "syft-1540-qualification-20261003" + "claude-repository-evidence-20260921" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.54.0" + "https://github.com/anchore/syft/releases/tag/v1.52.0" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." + "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." }, { "id": "alpaca-py", @@ -1690,7 +1682,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.327", + "version": "1.108.319", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1703,7 +1695,7 @@ } } ], - "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1716,14 +1708,13 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "jcodemunch-1108327-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", - "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", + "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", + "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 7969c61479566bc5ee3a0c4ea7d4549c94e67544 Mon Sep 17 00:00:00 2001 From: Scout Date: Sun, 4 Oct 2026 17:33:38 -0400 Subject: [PATCH 21/50] Reapply this branch's manifests/evidence.json manifests/stack.json edits on the merge base (hot-file protocol: every hot-file edit in the last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 364 +++++++++++++++++++++++++++++++++------- manifests/stack.json | 79 +++++---- 2 files changed, 348 insertions(+), 95 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 87f228481..6aa78217e 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4148,6 +4148,155 @@ "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." ], "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" + }, + { + "id": "jcodemunch-1108327-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "jcodemunch-mcp" + ], + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", + "limitations": [ + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" + }, + { + "id": "playwright-cli-0122-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "playwright-cli" + ], + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "limitations": [ + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + }, + { + "id": "openresearch-0215-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "openresearch" + ], + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "limitations": [ + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + }, + { + "id": "mcp-inspector-290-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "mcp-inspector" + ], + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "limitations": [ + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + }, + { + "id": "claude-hud-0100-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-hud" + ], + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "limitations": [ + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + }, + { + "id": "otelcol-contrib-0162-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "opentelemetry-collector-contrib" + ], + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "limitations": [ + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + }, + { + "id": "worktrunk-0800-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "worktrunk" + ], + "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", + "limitations": [ + "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", + "The host installation and rollback launcher were not switched.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" + }, + { + "id": "mcporter-0142-qualification-20261003", + "kind": "compatibility_attempt", + "component_ids": [ + "mcporter" + ], + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", + "limitations": [ + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + }, + { + "id": "syft-1540-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "syft" + ], + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "limitations": [ + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/syft-1540-qualification-20261003.json" } ], "files": [ @@ -4233,7 +4382,7 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "0153fc7595f7dd64d077366b2b0251cbe78f13a47f90798ab6d3d746624c2aec", + "sha256": "d73428cfa772bee46d9f18e835cc7b054267ba05c324d749b745cdb7debbf772", "bytes": 25235 }, { @@ -4278,7 +4427,7 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "5b52e3f50cf6ecb26cfe36f8ca54c577b5ff07ec4027a20102bc731c066cf4e5", + "sha256": "652bf181e1097963b1ce23d81eefb9bc9fb4c0f3051c3c5611c07ede4ab8a291", "bytes": 20110 }, { @@ -4313,8 +4462,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "92ab3fa8354aa9fbaad781597354ef5a942c709b5950109bb13c8b77780a40f8", - "bytes": 7576 + "sha256": "8c70b40953230c79e3d3df75fc492d689bf8884cb53acd7b6b6eadb63f2558c9", + "bytes": 7589 }, { "path": ".github/workflows/token-report.yml", @@ -4463,8 +4612,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "4ed3605282cd0f6f407b35a0b8a017863db4e8476d1d9503b302ced68abb7292", - "bytes": 64541 + "sha256": "e014bf80f20192e3a9446b6444cf1efa39c6bd6b0b2c76c5cdac1f5ea8e2a284", + "bytes": 66876 }, { "path": "adoption/credential-inventory.json", @@ -4563,8 +4712,8 @@ }, { "path": "adoption/manifest.json", - "sha256": "7bb179e8440be17b75484c21495e66385ea8eb959a491d43d2488056ddede09a", - "bytes": 20102 + "sha256": "4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714", + "bytes": 20038 }, { "path": "adoption/new-wsl-profile.json", @@ -4608,8 +4757,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "804eba0e086670c75e6b2f3725734477914318987c99fb90195680188be337c9", - "bytes": 37335 + "sha256": "7e210c9c56953ff5091c35909a0e3b5c94a4a519932eeda82878afb22b3c2961", + "bytes": 37151 }, { "path": "adoption/pins-macos-arm64.json", @@ -4623,8 +4772,8 @@ }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "95f59e4cc13c2b03237cb6c973b2f8203275eccd1b0eb023c24a6a307db42504", - "bytes": 26347 + "sha256": "51b3c5a8651122f3e24c6df494f7db0105127d9d30615e00af98fd73a356b76c", + "bytes": 26899 }, { "path": "adoption/platforms/macos-arm64.md", @@ -4683,8 +4832,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "5e27edf9147dfb60cc7311d4fe2e76312a8fd602021c60936023a9ce2273edeb", - "bytes": 13003 + "sha256": "f389b2b98e28c856136ca9d2e19cfb1464b45207719e5ae48e5e6b1e7d72e4ed", + "bytes": 13207 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -10124,8 +10273,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "9eece716982d44ddc5ff844003680c9b04f45fbe7b21d35f18188ee6a70de15c", - "bytes": 484284 + "sha256": "a943eea648fdfa7606cb2058e4280340d680937664a6c955857ecd3cfa3d4d9d", + "bytes": 490293 }, { "path": "blueprints/trials-20260926/README.md", @@ -15349,7 +15498,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "ccf259a9b7bca8cf81cfa0ddfbe5f54e7bc95a073defebc74a28877bfee5f084", + "sha256": "a28a218e0927f099b698208b4ac4fc8fbafee240447d633a2c247d619bd73137", "bytes": 34986 }, { @@ -15464,8 +15613,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "d1f0f17e142e8bfca223006f72cb16fce65456609248a32b5cf7958ba9f54dd2", - "bytes": 287704 + "sha256": "4b45aa982068205635f95776bbfc7a4c73d283ea48586e480f3870e613450ecf", + "bytes": 287577 }, { "path": "catalogs/landscape/research-state.json", @@ -15474,8 +15623,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "975b5a515271c24b1a158594568a76f1b6d65db6eb920f561db77e056e20b8b1", - "bytes": 253392 + "sha256": "8312bf92a96b1e1899ae6c816b7b45d2d9757b65f8f69899268c492071840a85", + "bytes": 280716 }, { "path": "catalogs/landscape/us-equities.json", @@ -15934,8 +16083,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "6e7ebbe64011f460b59ab310a328211737deec2f83543fb99c41d761958bff06", - "bytes": 56411 + "sha256": "4334eda38f9961f971e4c5394cd6fef418cef236d3ad73c34a0e080b5b71be21", + "bytes": 56958 }, { "path": "docs/comparison-progress-20260922.md", @@ -16232,6 +16381,11 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, + { + "path": "docs/decisions/2026-10-03-currency-wave-w1.md", + "sha256": "a34de606804ec323dc10830a08e33c5f4dd72056a4a54ae85ba606f84eb2d907", + "bytes": 36867 + }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", "sha256": "a4c5ddf98c9fa778d07b60507a183818b1d243dda789bc06ee8bcd612fcbcedb", @@ -16404,8 +16558,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "d86649c5c4f7fe5686d588586588ad20f6b84f95b0b109cca510f82c5d0b40c4", - "bytes": 39778 + "sha256": "53273e2c45893786c20d934d3c0b6dfea59c69029f5acbd3b2ee8046c850f3da", + "bytes": 40049 }, { "path": "docs/full-stack-convergence.md", @@ -16444,7 +16598,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "506dab27e1618ac53a688b38eb21e3219f56acd65940f1315a77a588bcdae035", + "sha256": "1fe05b805ab475cb4cb163985574aa5428797298b095b93b1141086a93fee3c2", "bytes": 98818 }, { @@ -16454,8 +16608,8 @@ }, { "path": "docs/harness-defaults.md", - "sha256": "e404039f0ff6e51a62d88d11e00271b435569969b457e51a3b33762cff357927", - "bytes": 176430 + "sha256": "b1934f3677f293a32d6ec07d52a885e752aa4baeee0d936ac51aa37cdf87417d", + "bytes": 177812 }, { "path": "docs/harness-rules-convergence-20260922.md", @@ -16574,8 +16728,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "feacb3a295970f1269ea2004127e5dd11a4f43c9e2fb29166e501346205091af", - "bytes": 18483 + "sha256": "c1b9e9cd27feb0ed823a2c0e942a741671e5ad2b84753e5196e09442b0fb1e3c", + "bytes": 18484 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -16584,12 +16738,12 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "3e699173f1dc25672eb0d95f05e169386a610646db4e3a82e9e67f39814dd41a", + "sha256": "48c863ef72ba02ce9575ae9a3dda34208979be94638a13625e58e50d311b64c8", "bytes": 561055 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "c540e0af3f9fccd04da00e7ddc73693b7184079455e1327ed961d096ae81f34b", + "sha256": "2bacd791380a39d8c046a0eb2002b24b6c6e10f414c480c19161260917a8c668", "bytes": 323968 }, { @@ -16684,7 +16838,7 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "c701409aa29644941e107e1102c1f0cc765509553f93c93872f27bf661cdde94", + "sha256": "9c5ae97dd6257f96b1bb66103c711bdb00b56c885efaccad73e6df4a551a0e30", "bytes": 591301 }, { @@ -16704,7 +16858,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "b85424755d2152313a6a7cfcbef8871c98f0f8f756e932287fa1aa1bf7e49a46", + "sha256": "2be6f8cc0bfbf11a88cb3036f1c91d0f61a06691f73637645e817c422be39776", "bytes": 92944 }, { @@ -18322,6 +18476,41 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", + "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", + "bytes": 108109 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", + "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", + "bytes": 13041 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", + "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", + "bytes": 28233 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", + "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", + "bytes": 18135 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", + "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", + "bytes": 74214 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", + "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", + "bytes": 121015 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", + "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", + "bytes": 26125 + }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -38509,7 +38698,7 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "80f899426a2b9b9d0a758e5e58227cbe09027852d0aa9bd42e8a8769c565d0ad", + "sha256": "5c37e2a4f69d47efa79b1c32b5a30cbff55f62212007eb58c1196b9a21ab94f8", "bytes": 4174 }, { @@ -50147,6 +50336,11 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, + { + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", + "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", + "bytes": 10611 + }, { "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json", "sha256": "b0c9e1d7c58e339dc2906e6a977ec04e6c1a808e826f9422407449ab34dd4f09", @@ -50357,6 +50551,11 @@ "sha256": "0d32534357501c011298420c07161c59940929cabd00a9b71d5d7817126f88c9", "bytes": 17126 }, + { + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", + "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", + "bytes": 8187 + }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -50382,11 +50581,21 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, + { + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", + "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", + "bytes": 10165 + }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, + { + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", + "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", + "bytes": 10463 + }, { "path": "evidence/receipts/mcporter-0142-qualification-20261004.json", "sha256": "9399c393875decb817d49a1ed59e1629ff445070453c2a2ba819e98d17a24cd1", @@ -50667,6 +50876,11 @@ "sha256": "9ad1db0b9e841cd780d04e544f6e75dde57fd88ebc6fc4f5b0bafd84287f20da", "bytes": 149558 }, + { + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", + "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", + "bytes": 7517 + }, { "path": "evidence/receipts/osv-oauthlib-pyjwt-reachability-20260929.json", "sha256": "f89e3a45ac10d44d00c268cc617c1fb7b5f77636fb1150af3c9e7bf4b26441ef", @@ -50692,11 +50906,21 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, + { + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", + "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", + "bytes": 6732 + }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, + { + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", + "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", + "bytes": 7731 + }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -50767,6 +50991,11 @@ "sha256": "24be77b12057c9cc7d29d0edbd0ba8af5005ceff82c2f1b1ffe34e5c424d1ab2", "bytes": 4906 }, + { + "path": "evidence/receipts/syft-1540-qualification-20261003.json", + "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", + "bytes": 7946 + }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -50842,6 +51071,11 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, + { + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", + "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", + "bytes": 6655 + }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -51379,18 +51613,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", + "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "bcbc611c905081a00ca6762d8fad0e478841b0e101a9adc4ce4d09450710c943", - "bytes": 101523 + "sha256": "32e90f075c5b6dd52fe64a79698592e22b4765b19a496486b5237d7f37d3bf6e", + "bytes": 104274 }, { "path": "observability/README.md", - "sha256": "7c7795560a7ef6541c91dfb8b0bf4e693f5dcdf9cfc75f262d8e4832057177e3", - "bytes": 15625 + "sha256": "64e714cc5708df81bf8931ea84b02d3ff4536e136da665fa0c8670d2d56be203", + "bytes": 16029 }, { "path": "observability/backends/README.md", @@ -51489,8 +51723,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "df33394028df2a687f7e39beefe0aa02978a0d6a0b97fd9d8a14f12e6075d3d6", - "bytes": 44636 + "sha256": "d0ec9824b54c8d8433b7e0dbb5279c9f4d089112944e1dab77ee76c7a4afa526", + "bytes": 45613 }, { "path": "observability/collector/claude-settings.json.example", @@ -51669,8 +51903,8 @@ }, { "path": "recipes/README.md", - "sha256": "5ce6c88fac8855b5c8138f6fa553073580f990ea3dd853a17b760a41e60ca9fa", - "bytes": 128045 + "sha256": "d9cc6ab495526b8520e1866c9305fbb2361e24c450116c418079866df765e293", + "bytes": 131699 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -51694,8 +51928,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", - "bytes": 5706 + "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", + "bytes": 6586 }, { "path": "recipes/saturation-sweep.md", @@ -51789,7 +52023,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "a5dce8ae180876bd6f676464fbfbda2bf60e479b1b865ca801c592d96e427e81", + "sha256": "6c903a399bb22e37e65836dc0cdd47ee1b0d947ef1462f387429fd1a6cddd2bf", "bytes": 115304 }, { @@ -52159,8 +52393,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "6621649f533fb9b1d62e902d3953447bd43ec6bb26ee3e1f35e693023200fb06", - "bytes": 52213 + "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", + "bytes": 52214 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -52212,6 +52446,11 @@ "sha256": "1bd3e90b095c326edf6327202bcbeeab7ed6ccc6c5789dc794062024baf6d64f", "bytes": 18302 }, + { + "path": "tests/test_blind_checkout.py", + "sha256": "d27efdf89e9ff89b0bd50c03a59e4efad5529e617d77ead110621616c20800f8", + "bytes": 67881 + }, { "path": "tests/test_blind_layer_decisions.py", "sha256": "327f104fc335a2b25f2a910e8cae44661fe9439764f4ab778412dbf3beeaea99", @@ -52709,18 +52948,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", - "bytes": 34089 + "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", + "bytes": 34441 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "01643e542017a248c166302b90f7218e42c83eceb3e4084b1a99a4bb73617a89", - "bytes": 25617 + "sha256": "ed7e6db7559dfb09c79be5d5a6150ec57710278b096293e73373b5681a2d5724", + "bytes": 25971 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "2f58b64cbd4f1af2b23ed869147278e2f84ad3357fef11a13c6496154fb1f15b", - "bytes": 37789 + "sha256": "96b901ada162f4a9d5c7445a4f5272ca86011d5e9227211405051ad12fe79665", + "bytes": 38105 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -52824,8 +53063,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "e8a7d735d73063ef82c4cff28bfa09a737d75a4fb69d84b49aec335ae2ba62b4", - "bytes": 45406 + "sha256": "9eae1b97d637079056994268e754f878bbafd4702fe8182cfef21f2f7b9bfcec", + "bytes": 47956 }, { "path": "tests/test_research_efficiency.py", @@ -52864,8 +53103,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", - "bytes": 9712 + "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", + "bytes": 9774 }, { "path": "tests/test_secret_path_guard.py", @@ -53292,6 +53531,11 @@ "sha256": "715c98a3ea23e71768326b19250cac5ce3e3bc1c568f540771ba64e45976a4ee", "bytes": 27482 }, + { + "path": "tools/sota-convergence/export_isolation_check.py", + "sha256": "7c0218c6545ea8d0274c71df8d4789a9f3e983dab45015905ad362dc6f0d3742", + "bytes": 34727 + }, { "path": "tools/sota-convergence/extract_layers.py", "sha256": "4be73f7d3b09fa9ea88ecb238d998e43b648c7c16bb56b8853e8672ca883bb2a", @@ -53609,7 +53853,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "17e56072c6b5568af421dd67b7dfb4db51906d11511e950448f611d58ba73808", + "sha256": "f93756235e3983a86eb632eb92f66417d48ab22a49506fcd5442cca5364d3947", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 81b8b6872..0bbd7a8f2 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -603,26 +603,27 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.8.0", - "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.9.0", + "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.8.0 --help" + "npx @modelcontextprotocol/inspector@2.9.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926" + "mcp-inspector-280-qualification-20260926", + "mcp-inspector-290-qualification-20261003" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" ], "source_pin": null, - "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -654,7 +655,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.7", + "version": "0.2.15", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -669,19 +670,20 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "openresearch-0215-qualification-20261003" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" ], - "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." + "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", + "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -693,13 +695,15 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "playwright-cli-0122-qualification-20261003" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli" + "https://github.com/microsoft/playwright-cli", + "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" ], "source_pin": null, - "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1064,7 +1068,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.79.0", + "version": "0.80.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1079,20 +1083,21 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "worktrunk-0800-qualification-20261003" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" ], - "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.161.0", + "version": "0.162.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1112,13 +1117,15 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "otelcol-contrib-0162-qualification-20261003" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib" + "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." }, { "id": "prometheus", @@ -1401,10 +1408,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.52.0", + "version": "1.54.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1413,13 +1420,14 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "syft-1540-qualification-20261003" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.52.0" + "https://github.com/anchore/syft/releases/tag/v1.54.0" ], - "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." }, { "id": "alpaca-py", @@ -1682,7 +1690,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.319", + "version": "1.108.327", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1695,7 +1703,7 @@ } } ], - "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1708,13 +1716,14 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "jcodemunch-1108327-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", - "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", + "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" ], - "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 16c6a85b8c599dbc6117b715f3e785e2426a19ef Mon Sep 17 00:00:00 2001 From: Scout Date: Sun, 4 Oct 2026 18:00:52 -0400 Subject: [PATCH 22/50] Hot-file protocol: reset manifests/evidence.json manifests/stack.json to the merge base before the final hot-file commit Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 364 +++++++--------------------------------- manifests/stack.json | 79 ++++----- 2 files changed, 95 insertions(+), 348 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 496e40800..5551a01db 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4148,155 +4148,6 @@ "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." ], "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" - }, - { - "id": "jcodemunch-1108327-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "jcodemunch-mcp" - ], - "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", - "limitations": [ - "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", - "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" - }, - { - "id": "playwright-cli-0122-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "playwright-cli" - ], - "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", - "limitations": [ - "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", - "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", - "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" - }, - { - "id": "openresearch-0215-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "openresearch" - ], - "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", - "limitations": [ - "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", - "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" - }, - { - "id": "mcp-inspector-290-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "mcp-inspector" - ], - "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", - "limitations": [ - "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", - "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", - "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" - }, - { - "id": "claude-hud-0100-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-hud" - ], - "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", - "limitations": [ - "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", - "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", - "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" - }, - { - "id": "otelcol-contrib-0162-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "opentelemetry-collector-contrib" - ], - "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", - "limitations": [ - "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", - "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" - }, - { - "id": "worktrunk-0800-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "worktrunk" - ], - "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", - "limitations": [ - "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", - "The host installation and rollback launcher were not switched.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" - }, - { - "id": "mcporter-0142-qualification-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "mcporter" - ], - "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", - "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", - "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", - "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" - }, - { - "id": "syft-1540-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "syft" - ], - "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", - "limitations": [ - "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", - "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", - "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/syft-1540-qualification-20261003.json" } ], "files": [ @@ -4382,7 +4233,7 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "d73428cfa772bee46d9f18e835cc7b054267ba05c324d749b745cdb7debbf772", + "sha256": "0153fc7595f7dd64d077366b2b0251cbe78f13a47f90798ab6d3d746624c2aec", "bytes": 25235 }, { @@ -4427,7 +4278,7 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "652bf181e1097963b1ce23d81eefb9bc9fb4c0f3051c3c5611c07ede4ab8a291", + "sha256": "5b52e3f50cf6ecb26cfe36f8ca54c577b5ff07ec4027a20102bc731c066cf4e5", "bytes": 20110 }, { @@ -4462,8 +4313,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "8c70b40953230c79e3d3df75fc492d689bf8884cb53acd7b6b6eadb63f2558c9", - "bytes": 7589 + "sha256": "92ab3fa8354aa9fbaad781597354ef5a942c709b5950109bb13c8b77780a40f8", + "bytes": 7576 }, { "path": ".github/workflows/token-report.yml", @@ -4612,8 +4463,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "6f10356b5586de2e5d4c9e480d975c9d1201f1078d539629a2de202fec479aee", - "bytes": 67335 + "sha256": "4ed3605282cd0f6f407b35a0b8a017863db4e8476d1d9503b302ced68abb7292", + "bytes": 64541 }, { "path": "adoption/credential-inventory.json", @@ -4712,8 +4563,8 @@ }, { "path": "adoption/manifest.json", - "sha256": "4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714", - "bytes": 20038 + "sha256": "7bb179e8440be17b75484c21495e66385ea8eb959a491d43d2488056ddede09a", + "bytes": 20102 }, { "path": "adoption/new-wsl-profile.json", @@ -4757,8 +4608,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "7e210c9c56953ff5091c35909a0e3b5c94a4a519932eeda82878afb22b3c2961", - "bytes": 37151 + "sha256": "804eba0e086670c75e6b2f3725734477914318987c99fb90195680188be337c9", + "bytes": 37335 }, { "path": "adoption/pins-macos-arm64.json", @@ -4772,8 +4623,8 @@ }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "31f87db022f1fbadc33ae6483d09c9a2f094919660c9f0895c28cfa4be8952ed", - "bytes": 30087 + "sha256": "317a997ce3e794298d985f035af05285e27bc3690fd9e09be068991a82fe2056", + "bytes": 29535 }, { "path": "adoption/platforms/macos-arm64.md", @@ -4832,8 +4683,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "f389b2b98e28c856136ca9d2e19cfb1464b45207719e5ae48e5e6b1e7d72e4ed", - "bytes": 13207 + "sha256": "5e27edf9147dfb60cc7311d4fe2e76312a8fd602021c60936023a9ce2273edeb", + "bytes": 13003 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -10273,8 +10124,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "a943eea648fdfa7606cb2058e4280340d680937664a6c955857ecd3cfa3d4d9d", - "bytes": 490293 + "sha256": "9eece716982d44ddc5ff844003680c9b04f45fbe7b21d35f18188ee6a70de15c", + "bytes": 484284 }, { "path": "blueprints/trials-20260926/README.md", @@ -15498,7 +15349,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "a28a218e0927f099b698208b4ac4fc8fbafee240447d633a2c247d619bd73137", + "sha256": "ccf259a9b7bca8cf81cfa0ddfbe5f54e7bc95a073defebc74a28877bfee5f084", "bytes": 34986 }, { @@ -15613,8 +15464,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "4b45aa982068205635f95776bbfc7a4c73d283ea48586e480f3870e613450ecf", - "bytes": 287577 + "sha256": "d1f0f17e142e8bfca223006f72cb16fce65456609248a32b5cf7958ba9f54dd2", + "bytes": 287704 }, { "path": "catalogs/landscape/research-state.json", @@ -15623,8 +15474,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "8312bf92a96b1e1899ae6c816b7b45d2d9757b65f8f69899268c492071840a85", - "bytes": 280716 + "sha256": "975b5a515271c24b1a158594568a76f1b6d65db6eb920f561db77e056e20b8b1", + "bytes": 253392 }, { "path": "catalogs/landscape/us-equities.json", @@ -16083,8 +15934,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "4334eda38f9961f971e4c5394cd6fef418cef236d3ad73c34a0e080b5b71be21", - "bytes": 56958 + "sha256": "6e7ebbe64011f460b59ab310a328211737deec2f83543fb99c41d761958bff06", + "bytes": 56411 }, { "path": "docs/comparison-progress-20260922.md", @@ -16386,11 +16237,6 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, - { - "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "57e9b58c006d2d678b58e528088f3bd2e6c5a961cf642581de8ed155c9f43916", - "bytes": 39135 - }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", "sha256": "a4c5ddf98c9fa778d07b60507a183818b1d243dda789bc06ee8bcd612fcbcedb", @@ -16578,8 +16424,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "53273e2c45893786c20d934d3c0b6dfea59c69029f5acbd3b2ee8046c850f3da", - "bytes": 40049 + "sha256": "d86649c5c4f7fe5686d588586588ad20f6b84f95b0b109cca510f82c5d0b40c4", + "bytes": 39778 }, { "path": "docs/full-stack-convergence.md", @@ -16618,7 +16464,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "1fe05b805ab475cb4cb163985574aa5428797298b095b93b1141086a93fee3c2", + "sha256": "506dab27e1618ac53a688b38eb21e3219f56acd65940f1315a77a588bcdae035", "bytes": 98818 }, { @@ -16628,8 +16474,8 @@ }, { "path": "docs/harness-defaults.md", - "sha256": "bb111490ddde5df7aff71c3f82e39d52c995277364cc23d3c57ed6845985b555", - "bytes": 185565 + "sha256": "5ea6aab2571aa0f7d4077666473271cd89e46440b60134606415214818803b7a", + "bytes": 184183 }, { "path": "docs/harness-rules-convergence-20260922.md", @@ -16748,8 +16594,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "c1b9e9cd27feb0ed823a2c0e942a741671e5ad2b84753e5196e09442b0fb1e3c", - "bytes": 18484 + "sha256": "feacb3a295970f1269ea2004127e5dd11a4f43c9e2fb29166e501346205091af", + "bytes": 18483 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -16758,12 +16604,12 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "1f7210a94d384aa9e01c269b473ea48f95474d7208e6851e9bd230ed87cef592", + "sha256": "54eeb8ea606b3f4f123320dc2f2f7f07c356d969a538c3d935de17b771fa5420", "bytes": 561055 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "caf93328832fdad3ffa3398bb7280123a1d2a5c56470b1b4d6152640eed1f581", + "sha256": "aa04b30d16fc14acac62d0af23e670ad254feb7e59ea85dfe233d361a992f59a", "bytes": 323968 }, { @@ -16858,7 +16704,7 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "9c5ae97dd6257f96b1bb66103c711bdb00b56c885efaccad73e6df4a551a0e30", + "sha256": "c701409aa29644941e107e1102c1f0cc765509553f93c93872f27bf661cdde94", "bytes": 591301 }, { @@ -16878,7 +16724,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "2be6f8cc0bfbf11a88cb3036f1c91d0f61a06691f73637645e817c422be39776", + "sha256": "b85424755d2152313a6a7cfcbef8871c98f0f8f756e932287fa1aa1bf7e49a46", "bytes": 92944 }, { @@ -18496,41 +18342,6 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", - "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", - "bytes": 108109 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", - "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", - "bytes": 13041 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", - "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", - "bytes": 28233 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", - "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", - "bytes": 18135 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", - "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", - "bytes": 74214 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", - "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", - "bytes": 121015 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", - "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", - "bytes": 26125 - }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -38733,7 +38544,7 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "fbb1226abc6cda0b7f8202126c8b0830114f7e9e707145555abc50da7fa1feac", + "sha256": "09120036b32a73586a8d064c32749f2607819a18cfc298cd7961fd99aa6c573d", "bytes": 4174 }, { @@ -50511,11 +50322,6 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, - { - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", - "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", - "bytes": 10611 - }, { "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json", "sha256": "b0c9e1d7c58e339dc2906e6a977ec04e6c1a808e826f9422407449ab34dd4f09", @@ -50731,11 +50537,6 @@ "sha256": "0d32534357501c011298420c07161c59940929cabd00a9b71d5d7817126f88c9", "bytes": 17126 }, - { - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", - "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", - "bytes": 8187 - }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -50761,21 +50562,11 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, - { - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", - "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", - "bytes": 10165 - }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, - { - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", - "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", - "bytes": 10463 - }, { "path": "evidence/receipts/mcporter-0142-qualification-20261004.json", "sha256": "9399c393875decb817d49a1ed59e1629ff445070453c2a2ba819e98d17a24cd1", @@ -51056,11 +50847,6 @@ "sha256": "9ad1db0b9e841cd780d04e544f6e75dde57fd88ebc6fc4f5b0bafd84287f20da", "bytes": 149558 }, - { - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", - "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", - "bytes": 7517 - }, { "path": "evidence/receipts/osv-oauthlib-pyjwt-reachability-20260929.json", "sha256": "f89e3a45ac10d44d00c268cc617c1fb7b5f77636fb1150af3c9e7bf4b26441ef", @@ -51086,21 +50872,11 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, - { - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", - "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", - "bytes": 6732 - }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, - { - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", - "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", - "bytes": 7731 - }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -51176,11 +50952,6 @@ "sha256": "88d94dea0829c87eecd2b6f9cc2a03c010888de130fe430abce65d5ebd39e788", "bytes": 135042 }, - { - "path": "evidence/receipts/syft-1540-qualification-20261003.json", - "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", - "bytes": 7946 - }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -51256,11 +51027,6 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, - { - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", - "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", - "bytes": 6655 - }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -51798,18 +51564,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", + "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "32e90f075c5b6dd52fe64a79698592e22b4765b19a496486b5237d7f37d3bf6e", - "bytes": 104274 + "sha256": "bcbc611c905081a00ca6762d8fad0e478841b0e101a9adc4ce4d09450710c943", + "bytes": 101523 }, { "path": "observability/README.md", - "sha256": "64e714cc5708df81bf8931ea84b02d3ff4536e136da665fa0c8670d2d56be203", - "bytes": 16029 + "sha256": "7c7795560a7ef6541c91dfb8b0bf4e693f5dcdf9cfc75f262d8e4832057177e3", + "bytes": 15625 }, { "path": "observability/backends/README.md", @@ -51908,8 +51674,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "d0ec9824b54c8d8433b7e0dbb5279c9f4d089112944e1dab77ee76c7a4afa526", - "bytes": 45613 + "sha256": "df33394028df2a687f7e39beefe0aa02978a0d6a0b97fd9d8a14f12e6075d3d6", + "bytes": 44636 }, { "path": "observability/collector/claude-settings.json.example", @@ -52088,8 +51854,8 @@ }, { "path": "recipes/README.md", - "sha256": "d9cc6ab495526b8520e1866c9305fbb2361e24c450116c418079866df765e293", - "bytes": 131699 + "sha256": "5ce6c88fac8855b5c8138f6fa553073580f990ea3dd853a17b760a41e60ca9fa", + "bytes": 128045 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -52113,8 +51879,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", - "bytes": 6586 + "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", + "bytes": 5706 }, { "path": "recipes/saturation-sweep.md", @@ -52213,7 +51979,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "6c903a399bb22e37e65836dc0cdd47ee1b0d947ef1462f387429fd1a6cddd2bf", + "sha256": "a5dce8ae180876bd6f676464fbfbda2bf60e479b1b865ca801c592d96e427e81", "bytes": 115304 }, { @@ -52583,8 +52349,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", - "bytes": 52214 + "sha256": "6621649f533fb9b1d62e902d3953447bd43ec6bb26ee3e1f35e693023200fb06", + "bytes": 52213 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -52636,11 +52402,6 @@ "sha256": "1bd3e90b095c326edf6327202bcbeeab7ed6ccc6c5789dc794062024baf6d64f", "bytes": 18302 }, - { - "path": "tests/test_blind_checkout.py", - "sha256": "d27efdf89e9ff89b0bd50c03a59e4efad5529e617d77ead110621616c20800f8", - "bytes": 67881 - }, { "path": "tests/test_blind_layer_decisions.py", "sha256": "327f104fc335a2b25f2a910e8cae44661fe9439764f4ab778412dbf3beeaea99", @@ -53138,18 +52899,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", - "bytes": 34441 + "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", + "bytes": 34089 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "ed7e6db7559dfb09c79be5d5a6150ec57710278b096293e73373b5681a2d5724", - "bytes": 25971 + "sha256": "01643e542017a248c166302b90f7218e42c83eceb3e4084b1a99a4bb73617a89", + "bytes": 25617 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "96b901ada162f4a9d5c7445a4f5272ca86011d5e9227211405051ad12fe79665", - "bytes": 38105 + "sha256": "2f58b64cbd4f1af2b23ed869147278e2f84ad3357fef11a13c6496154fb1f15b", + "bytes": 37789 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -53253,8 +53014,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "9eae1b97d637079056994268e754f878bbafd4702fe8182cfef21f2f7b9bfcec", - "bytes": 47956 + "sha256": "e8a7d735d73063ef82c4cff28bfa09a737d75a4fb69d84b49aec335ae2ba62b4", + "bytes": 45406 }, { "path": "tests/test_research_efficiency.py", @@ -53293,8 +53054,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", - "bytes": 9774 + "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", + "bytes": 9712 }, { "path": "tests/test_secret_path_guard.py", @@ -53721,11 +53482,6 @@ "sha256": "715c98a3ea23e71768326b19250cac5ce3e3bc1c568f540771ba64e45976a4ee", "bytes": 27482 }, - { - "path": "tools/sota-convergence/export_isolation_check.py", - "sha256": "7c0218c6545ea8d0274c71df8d4789a9f3e983dab45015905ad362dc6f0d3742", - "bytes": 34727 - }, { "path": "tools/sota-convergence/extract_layers.py", "sha256": "4be73f7d3b09fa9ea88ecb238d998e43b648c7c16bb56b8853e8672ca883bb2a", @@ -54043,7 +53799,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "f93756235e3983a86eb632eb92f66417d48ab22a49506fcd5442cca5364d3947", + "sha256": "17e56072c6b5568af421dd67b7dfb4db51906d11511e950448f611d58ba73808", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 0bbd7a8f2..81b8b6872 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -603,27 +603,26 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.9.0", - "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.8.0", + "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.9.0 --help" + "npx @modelcontextprotocol/inspector@2.8.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926", - "mcp-inspector-290-qualification-20261003" + "mcp-inspector-280-qualification-20260926" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", + "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -655,7 +654,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.15", + "version": "0.2.7", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -670,20 +669,19 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "openresearch-0215-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" ], - "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", - "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." + "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", + "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -695,15 +693,13 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921", - "playwright-cli-0122-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli", - "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" + "https://github.com/microsoft/playwright-cli" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", + "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1068,7 +1064,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.80.0", + "version": "0.79.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1083,21 +1079,20 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "worktrunk-0800-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" ], - "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", + "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.162.0", + "version": "0.161.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1117,15 +1112,13 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "otelcol-contrib-0162-qualification-20261003" + "claude-repository-evidence-20260921" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" + "https://github.com/open-telemetry/opentelemetry-collector-contrib" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "prometheus", @@ -1408,10 +1401,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.54.0", + "version": "1.52.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", + "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1420,14 +1413,13 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921", - "syft-1540-qualification-20261003" + "claude-repository-evidence-20260921" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.54.0" + "https://github.com/anchore/syft/releases/tag/v1.52.0" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." + "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." }, { "id": "alpaca-py", @@ -1690,7 +1682,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.327", + "version": "1.108.319", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1703,7 +1695,7 @@ } } ], - "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1716,14 +1708,13 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "jcodemunch-1108327-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", - "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", + "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", + "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From b989c3f91b404da88e97249c61d4beb808a109ab Mon Sep 17 00:00:00 2001 From: Scout Date: Sun, 4 Oct 2026 18:00:53 -0400 Subject: [PATCH 23/50] Reapply this branch's manifests/evidence.json manifests/stack.json edits on the merge base (hot-file protocol: every hot-file edit in the last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 364 +++++++++++++++++++++++++++++++++------- manifests/stack.json | 79 +++++---- 2 files changed, 348 insertions(+), 95 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 5551a01db..496e40800 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4148,6 +4148,155 @@ "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." ], "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" + }, + { + "id": "jcodemunch-1108327-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "jcodemunch-mcp" + ], + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", + "limitations": [ + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" + }, + { + "id": "playwright-cli-0122-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "playwright-cli" + ], + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "limitations": [ + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + }, + { + "id": "openresearch-0215-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "openresearch" + ], + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "limitations": [ + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + }, + { + "id": "mcp-inspector-290-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "mcp-inspector" + ], + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "limitations": [ + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + }, + { + "id": "claude-hud-0100-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-hud" + ], + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "limitations": [ + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + }, + { + "id": "otelcol-contrib-0162-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "opentelemetry-collector-contrib" + ], + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "limitations": [ + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + }, + { + "id": "worktrunk-0800-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "worktrunk" + ], + "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", + "limitations": [ + "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", + "The host installation and rollback launcher were not switched.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" + }, + { + "id": "mcporter-0142-qualification-20261003", + "kind": "compatibility_attempt", + "component_ids": [ + "mcporter" + ], + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", + "limitations": [ + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + }, + { + "id": "syft-1540-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "syft" + ], + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "limitations": [ + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/syft-1540-qualification-20261003.json" } ], "files": [ @@ -4233,7 +4382,7 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "0153fc7595f7dd64d077366b2b0251cbe78f13a47f90798ab6d3d746624c2aec", + "sha256": "d73428cfa772bee46d9f18e835cc7b054267ba05c324d749b745cdb7debbf772", "bytes": 25235 }, { @@ -4278,7 +4427,7 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "5b52e3f50cf6ecb26cfe36f8ca54c577b5ff07ec4027a20102bc731c066cf4e5", + "sha256": "652bf181e1097963b1ce23d81eefb9bc9fb4c0f3051c3c5611c07ede4ab8a291", "bytes": 20110 }, { @@ -4313,8 +4462,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "92ab3fa8354aa9fbaad781597354ef5a942c709b5950109bb13c8b77780a40f8", - "bytes": 7576 + "sha256": "8c70b40953230c79e3d3df75fc492d689bf8884cb53acd7b6b6eadb63f2558c9", + "bytes": 7589 }, { "path": ".github/workflows/token-report.yml", @@ -4463,8 +4612,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "4ed3605282cd0f6f407b35a0b8a017863db4e8476d1d9503b302ced68abb7292", - "bytes": 64541 + "sha256": "6f10356b5586de2e5d4c9e480d975c9d1201f1078d539629a2de202fec479aee", + "bytes": 67335 }, { "path": "adoption/credential-inventory.json", @@ -4563,8 +4712,8 @@ }, { "path": "adoption/manifest.json", - "sha256": "7bb179e8440be17b75484c21495e66385ea8eb959a491d43d2488056ddede09a", - "bytes": 20102 + "sha256": "4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714", + "bytes": 20038 }, { "path": "adoption/new-wsl-profile.json", @@ -4608,8 +4757,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "804eba0e086670c75e6b2f3725734477914318987c99fb90195680188be337c9", - "bytes": 37335 + "sha256": "7e210c9c56953ff5091c35909a0e3b5c94a4a519932eeda82878afb22b3c2961", + "bytes": 37151 }, { "path": "adoption/pins-macos-arm64.json", @@ -4623,8 +4772,8 @@ }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "317a997ce3e794298d985f035af05285e27bc3690fd9e09be068991a82fe2056", - "bytes": 29535 + "sha256": "31f87db022f1fbadc33ae6483d09c9a2f094919660c9f0895c28cfa4be8952ed", + "bytes": 30087 }, { "path": "adoption/platforms/macos-arm64.md", @@ -4683,8 +4832,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "5e27edf9147dfb60cc7311d4fe2e76312a8fd602021c60936023a9ce2273edeb", - "bytes": 13003 + "sha256": "f389b2b98e28c856136ca9d2e19cfb1464b45207719e5ae48e5e6b1e7d72e4ed", + "bytes": 13207 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -10124,8 +10273,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "9eece716982d44ddc5ff844003680c9b04f45fbe7b21d35f18188ee6a70de15c", - "bytes": 484284 + "sha256": "a943eea648fdfa7606cb2058e4280340d680937664a6c955857ecd3cfa3d4d9d", + "bytes": 490293 }, { "path": "blueprints/trials-20260926/README.md", @@ -15349,7 +15498,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "ccf259a9b7bca8cf81cfa0ddfbe5f54e7bc95a073defebc74a28877bfee5f084", + "sha256": "a28a218e0927f099b698208b4ac4fc8fbafee240447d633a2c247d619bd73137", "bytes": 34986 }, { @@ -15464,8 +15613,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "d1f0f17e142e8bfca223006f72cb16fce65456609248a32b5cf7958ba9f54dd2", - "bytes": 287704 + "sha256": "4b45aa982068205635f95776bbfc7a4c73d283ea48586e480f3870e613450ecf", + "bytes": 287577 }, { "path": "catalogs/landscape/research-state.json", @@ -15474,8 +15623,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "975b5a515271c24b1a158594568a76f1b6d65db6eb920f561db77e056e20b8b1", - "bytes": 253392 + "sha256": "8312bf92a96b1e1899ae6c816b7b45d2d9757b65f8f69899268c492071840a85", + "bytes": 280716 }, { "path": "catalogs/landscape/us-equities.json", @@ -15934,8 +16083,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "6e7ebbe64011f460b59ab310a328211737deec2f83543fb99c41d761958bff06", - "bytes": 56411 + "sha256": "4334eda38f9961f971e4c5394cd6fef418cef236d3ad73c34a0e080b5b71be21", + "bytes": 56958 }, { "path": "docs/comparison-progress-20260922.md", @@ -16237,6 +16386,11 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, + { + "path": "docs/decisions/2026-10-03-currency-wave-w1.md", + "sha256": "57e9b58c006d2d678b58e528088f3bd2e6c5a961cf642581de8ed155c9f43916", + "bytes": 39135 + }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", "sha256": "a4c5ddf98c9fa778d07b60507a183818b1d243dda789bc06ee8bcd612fcbcedb", @@ -16424,8 +16578,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "d86649c5c4f7fe5686d588586588ad20f6b84f95b0b109cca510f82c5d0b40c4", - "bytes": 39778 + "sha256": "53273e2c45893786c20d934d3c0b6dfea59c69029f5acbd3b2ee8046c850f3da", + "bytes": 40049 }, { "path": "docs/full-stack-convergence.md", @@ -16464,7 +16618,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "506dab27e1618ac53a688b38eb21e3219f56acd65940f1315a77a588bcdae035", + "sha256": "1fe05b805ab475cb4cb163985574aa5428797298b095b93b1141086a93fee3c2", "bytes": 98818 }, { @@ -16474,8 +16628,8 @@ }, { "path": "docs/harness-defaults.md", - "sha256": "5ea6aab2571aa0f7d4077666473271cd89e46440b60134606415214818803b7a", - "bytes": 184183 + "sha256": "bb111490ddde5df7aff71c3f82e39d52c995277364cc23d3c57ed6845985b555", + "bytes": 185565 }, { "path": "docs/harness-rules-convergence-20260922.md", @@ -16594,8 +16748,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "feacb3a295970f1269ea2004127e5dd11a4f43c9e2fb29166e501346205091af", - "bytes": 18483 + "sha256": "c1b9e9cd27feb0ed823a2c0e942a741671e5ad2b84753e5196e09442b0fb1e3c", + "bytes": 18484 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -16604,12 +16758,12 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "54eeb8ea606b3f4f123320dc2f2f7f07c356d969a538c3d935de17b771fa5420", + "sha256": "1f7210a94d384aa9e01c269b473ea48f95474d7208e6851e9bd230ed87cef592", "bytes": 561055 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "aa04b30d16fc14acac62d0af23e670ad254feb7e59ea85dfe233d361a992f59a", + "sha256": "caf93328832fdad3ffa3398bb7280123a1d2a5c56470b1b4d6152640eed1f581", "bytes": 323968 }, { @@ -16704,7 +16858,7 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "c701409aa29644941e107e1102c1f0cc765509553f93c93872f27bf661cdde94", + "sha256": "9c5ae97dd6257f96b1bb66103c711bdb00b56c885efaccad73e6df4a551a0e30", "bytes": 591301 }, { @@ -16724,7 +16878,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "b85424755d2152313a6a7cfcbef8871c98f0f8f756e932287fa1aa1bf7e49a46", + "sha256": "2be6f8cc0bfbf11a88cb3036f1c91d0f61a06691f73637645e817c422be39776", "bytes": 92944 }, { @@ -18342,6 +18496,41 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", + "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", + "bytes": 108109 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", + "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", + "bytes": 13041 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", + "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", + "bytes": 28233 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", + "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", + "bytes": 18135 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", + "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", + "bytes": 74214 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", + "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", + "bytes": 121015 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", + "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", + "bytes": 26125 + }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -38544,7 +38733,7 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "09120036b32a73586a8d064c32749f2607819a18cfc298cd7961fd99aa6c573d", + "sha256": "fbb1226abc6cda0b7f8202126c8b0830114f7e9e707145555abc50da7fa1feac", "bytes": 4174 }, { @@ -50322,6 +50511,11 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, + { + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", + "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", + "bytes": 10611 + }, { "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json", "sha256": "b0c9e1d7c58e339dc2906e6a977ec04e6c1a808e826f9422407449ab34dd4f09", @@ -50537,6 +50731,11 @@ "sha256": "0d32534357501c011298420c07161c59940929cabd00a9b71d5d7817126f88c9", "bytes": 17126 }, + { + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", + "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", + "bytes": 8187 + }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -50562,11 +50761,21 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, + { + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", + "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", + "bytes": 10165 + }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, + { + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", + "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", + "bytes": 10463 + }, { "path": "evidence/receipts/mcporter-0142-qualification-20261004.json", "sha256": "9399c393875decb817d49a1ed59e1629ff445070453c2a2ba819e98d17a24cd1", @@ -50847,6 +51056,11 @@ "sha256": "9ad1db0b9e841cd780d04e544f6e75dde57fd88ebc6fc4f5b0bafd84287f20da", "bytes": 149558 }, + { + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", + "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", + "bytes": 7517 + }, { "path": "evidence/receipts/osv-oauthlib-pyjwt-reachability-20260929.json", "sha256": "f89e3a45ac10d44d00c268cc617c1fb7b5f77636fb1150af3c9e7bf4b26441ef", @@ -50872,11 +51086,21 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, + { + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", + "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", + "bytes": 6732 + }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, + { + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", + "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", + "bytes": 7731 + }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -50952,6 +51176,11 @@ "sha256": "88d94dea0829c87eecd2b6f9cc2a03c010888de130fe430abce65d5ebd39e788", "bytes": 135042 }, + { + "path": "evidence/receipts/syft-1540-qualification-20261003.json", + "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", + "bytes": 7946 + }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -51027,6 +51256,11 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, + { + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", + "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", + "bytes": 6655 + }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -51564,18 +51798,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", + "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "bcbc611c905081a00ca6762d8fad0e478841b0e101a9adc4ce4d09450710c943", - "bytes": 101523 + "sha256": "32e90f075c5b6dd52fe64a79698592e22b4765b19a496486b5237d7f37d3bf6e", + "bytes": 104274 }, { "path": "observability/README.md", - "sha256": "7c7795560a7ef6541c91dfb8b0bf4e693f5dcdf9cfc75f262d8e4832057177e3", - "bytes": 15625 + "sha256": "64e714cc5708df81bf8931ea84b02d3ff4536e136da665fa0c8670d2d56be203", + "bytes": 16029 }, { "path": "observability/backends/README.md", @@ -51674,8 +51908,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "df33394028df2a687f7e39beefe0aa02978a0d6a0b97fd9d8a14f12e6075d3d6", - "bytes": 44636 + "sha256": "d0ec9824b54c8d8433b7e0dbb5279c9f4d089112944e1dab77ee76c7a4afa526", + "bytes": 45613 }, { "path": "observability/collector/claude-settings.json.example", @@ -51854,8 +52088,8 @@ }, { "path": "recipes/README.md", - "sha256": "5ce6c88fac8855b5c8138f6fa553073580f990ea3dd853a17b760a41e60ca9fa", - "bytes": 128045 + "sha256": "d9cc6ab495526b8520e1866c9305fbb2361e24c450116c418079866df765e293", + "bytes": 131699 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -51879,8 +52113,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", - "bytes": 5706 + "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", + "bytes": 6586 }, { "path": "recipes/saturation-sweep.md", @@ -51979,7 +52213,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "a5dce8ae180876bd6f676464fbfbda2bf60e479b1b865ca801c592d96e427e81", + "sha256": "6c903a399bb22e37e65836dc0cdd47ee1b0d947ef1462f387429fd1a6cddd2bf", "bytes": 115304 }, { @@ -52349,8 +52583,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "6621649f533fb9b1d62e902d3953447bd43ec6bb26ee3e1f35e693023200fb06", - "bytes": 52213 + "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", + "bytes": 52214 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -52402,6 +52636,11 @@ "sha256": "1bd3e90b095c326edf6327202bcbeeab7ed6ccc6c5789dc794062024baf6d64f", "bytes": 18302 }, + { + "path": "tests/test_blind_checkout.py", + "sha256": "d27efdf89e9ff89b0bd50c03a59e4efad5529e617d77ead110621616c20800f8", + "bytes": 67881 + }, { "path": "tests/test_blind_layer_decisions.py", "sha256": "327f104fc335a2b25f2a910e8cae44661fe9439764f4ab778412dbf3beeaea99", @@ -52899,18 +53138,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", - "bytes": 34089 + "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", + "bytes": 34441 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "01643e542017a248c166302b90f7218e42c83eceb3e4084b1a99a4bb73617a89", - "bytes": 25617 + "sha256": "ed7e6db7559dfb09c79be5d5a6150ec57710278b096293e73373b5681a2d5724", + "bytes": 25971 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "2f58b64cbd4f1af2b23ed869147278e2f84ad3357fef11a13c6496154fb1f15b", - "bytes": 37789 + "sha256": "96b901ada162f4a9d5c7445a4f5272ca86011d5e9227211405051ad12fe79665", + "bytes": 38105 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -53014,8 +53253,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "e8a7d735d73063ef82c4cff28bfa09a737d75a4fb69d84b49aec335ae2ba62b4", - "bytes": 45406 + "sha256": "9eae1b97d637079056994268e754f878bbafd4702fe8182cfef21f2f7b9bfcec", + "bytes": 47956 }, { "path": "tests/test_research_efficiency.py", @@ -53054,8 +53293,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", - "bytes": 9712 + "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", + "bytes": 9774 }, { "path": "tests/test_secret_path_guard.py", @@ -53482,6 +53721,11 @@ "sha256": "715c98a3ea23e71768326b19250cac5ce3e3bc1c568f540771ba64e45976a4ee", "bytes": 27482 }, + { + "path": "tools/sota-convergence/export_isolation_check.py", + "sha256": "7c0218c6545ea8d0274c71df8d4789a9f3e983dab45015905ad362dc6f0d3742", + "bytes": 34727 + }, { "path": "tools/sota-convergence/extract_layers.py", "sha256": "4be73f7d3b09fa9ea88ecb238d998e43b648c7c16bb56b8853e8672ca883bb2a", @@ -53799,7 +54043,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "17e56072c6b5568af421dd67b7dfb4db51906d11511e950448f611d58ba73808", + "sha256": "f93756235e3983a86eb632eb92f66417d48ab22a49506fcd5442cca5364d3947", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 81b8b6872..0bbd7a8f2 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -603,26 +603,27 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.8.0", - "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.9.0", + "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.8.0 --help" + "npx @modelcontextprotocol/inspector@2.9.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926" + "mcp-inspector-280-qualification-20260926", + "mcp-inspector-290-qualification-20261003" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" ], "source_pin": null, - "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -654,7 +655,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.7", + "version": "0.2.15", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -669,19 +670,20 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "openresearch-0215-qualification-20261003" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" ], - "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." + "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", + "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -693,13 +695,15 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "playwright-cli-0122-qualification-20261003" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli" + "https://github.com/microsoft/playwright-cli", + "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" ], "source_pin": null, - "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1064,7 +1068,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.79.0", + "version": "0.80.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1079,20 +1083,21 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "worktrunk-0800-qualification-20261003" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" ], - "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.161.0", + "version": "0.162.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1112,13 +1117,15 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "otelcol-contrib-0162-qualification-20261003" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib" + "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." }, { "id": "prometheus", @@ -1401,10 +1408,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.52.0", + "version": "1.54.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1413,13 +1420,14 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "syft-1540-qualification-20261003" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.52.0" + "https://github.com/anchore/syft/releases/tag/v1.54.0" ], - "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." }, { "id": "alpaca-py", @@ -1682,7 +1690,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.319", + "version": "1.108.327", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1695,7 +1703,7 @@ } } ], - "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1708,13 +1716,14 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "jcodemunch-1108327-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", - "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", + "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" ], - "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From c456e5fb1b9f3bc11ea980e8b936277d2ee5c95e Mon Sep 17 00:00:00 2001 From: Scout Date: Sun, 4 Oct 2026 23:44:43 -0400 Subject: [PATCH 24/50] Hot-file protocol: reset manifests/evidence.json manifests/stack.json to the merge base before the final hot-file commit Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 6008 +++++++++++++++++++-------------------- manifests/stack.json | 79 +- 2 files changed, 2917 insertions(+), 3170 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 064da3094..3952640a2 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -2,791 +2,518 @@ "schema_version": 1, "receipts": [ { - "id": "adaptive-paper-practice-20260921", + "id": "memory-lifecycle-probe-20260921", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "claude-code", - "codex" + "ai-memory" ], - "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", + "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", "limitations": [ - "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", - "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", - "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", - "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." + "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", + "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", + "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", + "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", + "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", + "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." ], - "path": "evidence/receipts/adaptive-paper-practice-20260921.json" + "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" }, { - "id": "adoption-macos-hosted-smoke-20260922", - "kind": "native_cli_e2e", + "id": "catalog-runtime-review-20260921", + "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "dagu" ], - "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", + "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", "limitations": [ - "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", - "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", - "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", - "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", - "socraticode is the profile's documented unpinned skip and was not installed." + "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", + "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", + "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" + "path": "evidence/receipts/catalog-runtime-review-20260921.json" }, { - "id": "adoption-macos-hosted-smoke-20260923", + "id": "catalog-clean-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "codex" ], - "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", + "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", "limitations": [ - "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", - "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", - "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", - "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." + "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", + "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", + "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" + "path": "evidence/receipts/catalog-clean-install-20260921.json" }, { - "id": "agent-browser-lna-20260930", - "kind": "artifact_measurement", + "id": "dashboard-gap-resolution-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "playwright-test" + "ai-memory", + "codex", + "claude-code", + "agentsview", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo", + "vllm" ], - "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", + "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", "limitations": [ - "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", - "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", - "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", - "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." + "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", + "Fresh PreCompact event and active Desktop session end remain unforced.", + "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", + "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", + "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", + "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." ], - "path": "evidence/receipts/agent-browser-lna-20260930.json" + "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" }, { - "id": "ai-memory-240-qualification-20260925", + "id": "dashboard-render-e2e-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "ai-memory", + "qdrant", + "socraticode", + "serena", + "agentsview", + "dagu", + "omniroute", + "agent-browser", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", + "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", - "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", - "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", - "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", - "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", - "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", - "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." + "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", + "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", + "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", + "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", + "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", + "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", + "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." ], - "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" + "path": "evidence/receipts/dashboard-render-e2e-20260921.json" }, { - "id": "ai-memory-241-qualification-20260925", + "id": "hf-memory-models-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "ai-memory", + "socraticode", + "vllm", + "grafana" ], - "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", + "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", - "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", - "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", - "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", - "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", - "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", - "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." + "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", + "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", + "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", + "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", + "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", + "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." ], - "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" + "path": "evidence/receipts/hf-memory-models-20260921.json" }, { - "path": "blueprints/us-equities/state-recovery/memory/receipt.json", - "id": "ai-memory-native-state-recovery-20260919", + "id": "native-memory-rag-alignment-20260921", "kind": "native_cli_e2e", "component_ids": [ "ai-memory", - "restic" + "socraticode", + "qdrant", + "qmd", + "vllm", + "grafana", + "loki" ], - "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", + "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", "limitations": [ - "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", - "38 pages table rows include historical versions, not 38 current pages.", - "Native backup excludes raw/, model caches, logs and external native session transcripts.", - "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", - "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", - "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." - ] + "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", + "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", + "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", + "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", + "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", + "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", + "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." + ], + "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" }, { - "path": "blueprints/us-equities/order-contract/receipt.json", - "id": "alpaca-offline-order-contract-20260919", + "id": "native-returned-results-20260921", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py" + "codex", + "claude-code", + "rtk", + "context-mode", + "qmd", + "serena", + "ai-memory", + "socraticode", + "qdrant", + "agentsview", + "grafana", + "loki", + "prometheus", + "dagu", + "ntfy", + "omniroute", + "agent-browser", + "promptfoo", + "headroom", + "jcodemunch-mcp" ], - "claim": "Installed alpaca-py request models silently dropped synthetic advanced fields; this explicit broker-disconnected basic-intent boundary rejected those inputs and eight additional negative cases while preserving canonical decimal strings.", + "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", "limitations": [ - "Local contract is not wired into unrelated SDK calls or existing workers; explicit future adapter adoption is required.", - "No broker account, key, asset lookup, risk approval, live/paper order or provider wire behavior was exercised.", - "Whole-share basic create-intent subset only; advanced, replacement, cancellation, retries, order journals and reconciliation remain gated.", - "Input representation cap and symbol/client-ID syntax are local conservative policies, not provider or risk authorization.", - "Python SDK float conversion is observed; the canonical exact decimal envelope is deliberately not serialized through those float fields.", - "JavaScript advanced support is pinned-source evidence only; no alternative SDK was installed or executed.", - "Python audit events and the Linux namespace substantiate this scoped probe, not a universal sandbox or macOS acceptance.", - "Canonical content hashes do not establish client-ID uniqueness, deduplication or safe retry semantics.", - "No token-saving claim or model inference belongs to this deterministic task." - ] + "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", + "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", + "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", + "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", + "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", + "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", + "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", + "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", + "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." + ], + "path": "evidence/receipts/native-returned-results-20260921.json" }, { - "id": "alpaca-paper-e2e-20260921", + "id": "native-workflow-writing-comparison-20260921", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", "claude-code" ], - "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", + "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", "limitations": [ - "One operational smoke trial, not profitable strategy or continuous trading acceptance.", - "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", - "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." + "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", + "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", + "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." ], - "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" + "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" }, { - "id": "artifact-reductions", - "path": "evidence/receipts/artifact-reductions.json", - "kind": "artifact_measurement", + "id": "native-workflow-graceful-recovery-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "socraticode", - "openresearch", - "context-mode" + "claude-code" ], - "claim": "Recorded exact selected-text reductions, distinct from model usage.", + "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", "limitations": [ - "Lossy selections compare retained text to full-file/paper counterfactuals.", - "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." - ] + "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", + "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", + "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", + "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." + ], + "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" }, { - "id": "broad-universe-research-20260921", + "id": "portable-userspace-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "duckdb", - "claude-code", - "codex" + "rtk", + "qmd", + "repomix", + "toon", + "codex", + "claude-code" ], - "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", + "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", "limitations": [ - "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", - "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", - "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", - "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", - "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." + "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", + "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", + "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", + "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", + "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", + "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", + "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", + "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", + "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." ], - "path": "evidence/receipts/broad-universe-research-20260921.json" + "path": "evidence/receipts/portable-userspace-install-20260921.json" }, { - "id": "canary-proof-verification-20261001", - "kind": "artifact_measurement", + "id": "claude-selective-context-pilot-20260921", + "kind": "native_model_e2e", "component_ids": [ "claude-code", - "codex", - "systemd" + "context-mode" ], - "claim": "The canary proof tool (tools/credentials/canary_proof.py, 1,834 lines, with the contained scan worker tools/credentials/canary_scan_worker.py, 2,114 lines) passed its synthetic acceptance on the workstation on 2026-10-01 on main with the K4 guard: its unit suite ran 143 tests, OK, with none skipped (including 12 cases that start transient systemd user scopes); its mutation runner killed 138 of 138 mutants by failures of their named permanent tests after 90 passing unmutated runs; and the credential, guard, Codex worker-lane and pre-commit suites ran 531 tests with one failure by design (the installed host copy of the guard). The tool plants a unique synthetic canary, lets named consumers use it through the key runner, and searches the named sinks with ripgrep in a worker that runs in a finite systemd user scope; its classifier refuses unless every required check has a fresh, complete result bound to the run. Reviews: a read-only GPT-6 verification found seven paths to a false clean verdict and four high findings, and an Opus build review found one blocking gap in the contract's acceptance cases; one repair round by a GPT-6 runtime worker fixed them, each with a permanent test and a mutant; an Opus re-check confirmed 37 of 42 dispositions and found one more false-clean path (a Git object store with no HEAD, refs or .git name, reached directly) and a record-validation defect, which one bounded fix round closed with tests and mutants. No end-to-end proof has run: it is the new distribution's acceptance after its guard install.", + "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", "limitations": [ - "Synthetic acceptance only: every sink, canary, Git store, SQLite database and journal in these runs is a fixture the tests build under a temporary directory; no real consumer, transcript, log, journal or credential was used, and no proof claim is made before the end-to-end run.", - "Containment evidence is workstation scope enforcement: the real-scope classes start transient systemd user scopes on this host (12 cases, all passing); hosted CI runners skip them where no user scope exists.", - "Scanner: ripgrep 14.1.0 is the executed version; the runtime also accepts 15.2.0 on a source-reviewed output grammar that no run has executed.", - "Size: the implementation (3,948 coordinator and worker lines) and the permanent test file (3,632 lines) exceed the contract's ceilings (1,800 and 2,800); the coordinator accepted the deviation for the required coverage and containment logic, and the reviews' dead-code findings were removed.", - "Residuals from the Opus re-check, recorded in the decision record: a completed but too-early or stale final is labelled requested_incomplete; the WAL/SHM-without-valid-main guard, Walk.covered's exclusion, time, special-file and symlinked-parent branches, and several O12 changes have no test of their own; three mutants are missing (END count/aux, --text, a count-based Git reconcile); bind_scope's refusal paths and the real scope_populated parser are untested; the scan's exit code still comes from events it does not validate.", - "Evidence classes differ: the unit, mutation and suite runs were made by the coordinator on the final head outside any sandbox; the reviews are read-only cross-family reads, not proofs." + "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", + "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", + "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", + "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", + "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", + "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", + "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", + "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." ], - "path": "evidence/receipts/canary-proof-verification-20261001.json" + "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" }, { - "id": "catalog-clean-install-20260921", + "id": "native-dashboard-data-20260921", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "ai-memory", + "socraticode", + "qmd", + "qdrant", + "agentsview", + "grafana", + "loki", + "rtk", + "context-mode", + "headroom", + "jcodemunch-mcp", + "promptfoo", + "serena", + "systemd" ], - "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", + "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", "limitations": [ - "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", - "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", - "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." + "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", + "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", + "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", + "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", + "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", + "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", + "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", + "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", + "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." ], - "path": "evidence/receipts/catalog-clean-install-20260921.json" + "path": "evidence/receipts/native-dashboard-data-20260921.json" }, { - "id": "catalog-freshness-20260923", - "kind": "upstream_provenance", + "id": "foundation-closure-20260921", + "kind": "native_cli_e2e", "component_ids": [ "claude-code", "codex", - "llama-cpp", - "mcp-inspector", - "openresearch", - "skfolio" + "affaan-m/ECC", + "context-mode" ], - "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", + "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", "limitations": [ - "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", - "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", - "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", - "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." + "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", + "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", + "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", + "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", + "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", + "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", + "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", + "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." ], - "path": "evidence/receipts/catalog-freshness-20260923.json" + "path": "evidence/receipts/foundation-closure-20260921.json" }, { - "id": "catalog-runtime-review-20260921", - "kind": "native_model_e2e", + "id": "native-quality-defaults-20260920", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "dagu" + "claude-code" ], - "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", + "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", "limitations": [ - "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", - "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", - "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." + "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", + "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", + "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", + "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", + "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." ], - "path": "evidence/receipts/catalog-runtime-review-20260921.json" + "path": "evidence/receipts/native-quality-defaults-20260920.json" }, { - "id": "ccusage-20026-qualification-20260927", + "id": "native-terminal-profiles-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ccusage" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", - "limitations": [ - "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", - "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", - "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", - "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", - "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", - "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", - "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", - "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", - "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", - "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", - "New hosts receive this pin only after the next release tag." - ], - "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" - }, - { - "id": "claude-advisor-usage-scan-20260928", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code" + "codex", + "claude-code", + "qdrant", + "vllm" ], - "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", + "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", - "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", - "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", - "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", - "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", - "Whether ccusage or ecosystem-token-report count these entries was not checked." + "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", + "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", + "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", + "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", + "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." ], - "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" + "path": "evidence/receipts/native-terminal-profiles-20260920.json" }, { - "id": "claude-foundation-finalization-20260921", - "kind": "native_model_e2e", + "id": "native-claude-profile-20260920", + "kind": "native_cli_e2e", "component_ids": [ "claude-code", "codex", - "agent-browser", - "repomix" + "affaan-m/ECC", + "context-mode", + "rtk" ], - "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", + "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", "limitations": [ - "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", - "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", - "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", - "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." + "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", + "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", + "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", + "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", + "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", + "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", + "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", + "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", + "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." ], - "path": "evidence/receipts/claude-foundation-finalization-20260921.json" + "path": "evidence/receipts/native-claude-profile-20260920.json" }, { - "id": "claude-host-practice-readback-20260928", + "id": "native-offhost-restic-20260920", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "claude-hud", - "headroom", - "mcporter", - "jcodemunch-mcp", - "agent-browser", - "qmd" + "restic" ], - "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", + "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", "limitations": [ - "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", - "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", - "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", - "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", - "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", - "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", - "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." + "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", + "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", + "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", + "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", + "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", + "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." ], - "path": "evidence/receipts/claude-host-practice-readback-20260928.json" + "path": "evidence/receipts/native-offhost-restic-20260920.json" }, { - "id": "claude-hud-0100-qualification-20261003", + "id": "native-dagu-retry-tests-20260920", "kind": "native_cli_e2e", "component_ids": [ - "claude-hud" + "dagu" ], - "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", "limitations": [ - "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", - "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", - "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", + "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", + "No broker/provider operations or token savings were measured.", + "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" }, { - "id": "claude-hud-0100-qualification-20261004", - "kind": "native_cli_e2e", + "id": "native-token-stack-final-20260920", + "kind": "native_model_e2e", "component_ids": [ - "claude-hud" - ], - "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed claude-hud 0.10.0 from tag v0.10.0 through native Claude plugin commands after an initial marketplace-source mismatch failed. Native marketplace remove/add and plugin install succeeded; plugin list showed version 0.10.0 enabled at user scope. Direct and configured statusline commands rendered a sample payload with exit 0. This is historical plugin and sample-render evidence, not a new interactive terminal session or model run.", - "limitations": [ - "No macOS execution and no upstream test suite run. There are no release assets for this tag; the supported installation remains a native Claude Code plugin, not a tarball bootstrap kind.", - "First marketplace add failed with exit 1 due to the old source entry; native remove/add/install recovered it. Sample statusline rendering does not establish a fresh interactive Claude session or provider usage.", - "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." - ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" - }, - { - "id": "claude-max-default-effort-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", - "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", - "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", - "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", - "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", - "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", - "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", - "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." - ], - "path": "evidence/receipts/claude-max-default-effort-20260929.json" - }, - { - "id": "claude-model-effort-probes-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", - "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", - "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", - "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", - "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." - ], - "path": "evidence/receipts/claude-model-effort-probes-20260929.json" - }, - { - "id": "claude-project-effort-flag-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", - "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", - "The Ultracode reminder is an indicator, not proof of workflow orchestration.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." - ], - "path": "evidence/receipts/claude-project-effort-flag-20260929.json" - }, - { - "id": "claude-repository-evidence-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "alpaca-py", - "ast-grep", - "beads", - "ccusage", "claude-code", - "claude-hud", "codex", - "codex-for-claude", - "context-hub", "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "duckdb", - "edgartools", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nautilus-trader", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "pandas", - "playwright-cli", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "restic", + "headroom", "rtk", - "sandbox-runtime", - "serena", - "shellcheck", - "skfolio", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "opentelemetry-collector-contrib", + "loki", + "prometheus" ], - "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", + "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", "limitations": [ - "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", - "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", - "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", - "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", - "Superseded observations, including the author's own probe and invocation errors, remain recorded." + "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", + "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", + "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", + "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", + "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", + "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", + "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", + "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." ], - "path": "evidence/receipts/claude-repository-evidence-20260921.json" + "path": "evidence/receipts/native-token-stack-final-20260920.json" }, { - "id": "claude-selective-context-pilot-20260921", + "id": "native-rag", + "path": "evidence/receipts/native-rag.json", "kind": "native_model_e2e", "component_ids": [ - "claude-code", - "context-mode" - ], - "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", - "limitations": [ - "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", - "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", - "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", - "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", - "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", - "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", - "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", - "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." - ], - "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" - }, - { - "id": "claude-spend-attribution-20260929", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code", - "ccusage" - ], - "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", - "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", - "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", - "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", - "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", - "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", - "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", - "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", - "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", - "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", - "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." - ], - "path": "evidence/receipts/claude-spend-attribution-20260929.json" - }, - { - "id": "claude-spend-window-20261004", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code", - "ccusage", - "context-mode" - ], - "claim": "Retained Claude-only ccusage daily costs rise from $2,823.79 and $2,427.25 on October 1/2 to $5,940.56 on October 3. The supplied executor window comparison reproduces exactly from count-only scanner outputs: IET per 24 h rises 2.121 times, counted call rows 2.419 times, and subagents started 2.824 times, while mean context per call falls from 271,790 to 216,230 tokens. The unfiltered retained session-view export is $12,404.88 and its workflow share is 61.402%; removing 17 rows with pre-10-03 last activity leaves $11,151.92, with coordinator-tree shares 63.296% and 33.787%. These are session-selection views, not spend since 10-03. Net pre-first-call attachment growth excluding UI is about 2.9 KB (0.8K rough tokens), rather than the positive-only 4.3 KB (1.2K) estimate. These are scoped observations, not subscription charges or a quality comparison. Adding the retained advisor-cohort estimate gives 830.270M and 1,777.960M IET per 24 h (2.141 times); all 689 A and 1,209 B advisor iterations in those cohorts used Fable. Fable is $2,092.87, or 35.230% of priced Claude dollars on 10-03. The user subsequently selected an Opus 5.5 advisor.", - "limitations": [ - "API-equivalent prices are not the subscription meter. ccusage leaves claude-sonnet-5-5 unpriced; its dollars therefore do not price every counted Claude model.", - "ccusage days are local time and Prometheus days are UTC. These scopes and the scanner windows must not be summed or equated.", - "Prometheus keeps one week; this retained export starts with the UTC day 2026-09-27 and ends with 2026-10-03.", - "The attr byte shares use unfitted weights, so they show direction only; receipt context shares exclude UI records before normalization.", - "The hook_success records are UI-only and are not counted as context. Pre-first-call attachment sizes are serialized metadata bytes, not exact model input or tokenization.", - "NativeStack only, because NativeStack2604's telemetry has no listener. This scope is the coordinator's stated observation boundary, not a new listener check.", - "10-04 is a partial day. The scanner ends at 14:00Z; no full-day projection is a measured total.", - "This is a re-derivation of retained native outputs and scanner aggregates, not a new provider/model run, an upstream acceptance test, or a quality/savings A/B.", - "window_compare.py includes synthetic zero-usage rows in its call counts and uses per-field maximum deduplication. Its subagent calls-per-file statistic spans each selected file, whereas its call and IET windows filter call timestamps.", - "Window hook text is not retained in the aggregate inputs. Historical hook-text estimates are reported as estimates; current installed carrier and upstream static hook sizes are distinct observations and do not establish historical hook outputs.", - "The unfiltered session export includes pre-10-03 activity: 17 rows worth $1,252.96 have lastActivity before 2026-10-03T04:00Z. The raw and activity-selected shares have different denominators. Filtering lastActivity does not restrict the dates of every token in a session total; neither view is established as spend since 10-03.", - "The reproduction artifact extends the supplied analysis with advisor-cohort rows. Original executor output is unchanged. Its private raw output includes source identifiers; only sanitized aggregates are retained here.", - "Advisor iterations are absent from calls.tsv and retained only as per-file tot values in files.jsonl. Grouping them by file first_ts reproduces the reviewed cohorts, but files can cross window boundaries. Executor-plus-advisor-cohort IET is an estimate with mixed timestamp scopes, not an exact call-window total; advisor iterations have no recorded effort here.", - "IET applies the same coefficients to every model: input 1, cache read 0.1, five-minute and unclassified cache writes 1.25, one-hour cache writes 2, and output 5, with thinking already in output. There is no model-specific base-price multiplier. Advisor aggregates lack cache-write duration splits and weight all cache writes at 1.25. Thus IET model shares and window ratios are relative-index measures, not dollar shares or actual spend ratios; Fable dollars from ccusage remain separate. Historical Fable usage precedes the new Opus advisor decision." - ], - "path": "evidence/receipts/claude-spend-window-20261004.json" - }, - { - "id": "claude-upstream-checks-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "ast-grep", - "beads", - "ccusage", - "claude-code", "codex", - "codex-for-claude", - "context-mode", - "dagu", - "difftastic", - "gitleaks", - "grafana", - "headroom", - "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcporter", - "nautilus-trader", - "openresearch", - "opentelemetry-collector-contrib", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "rtk", - "serena", + "claude-code", "socraticode", - "tavily-cli", - "toon", + "qdrant", "vllm", - "worktrunk", - "zizmor" - ], - "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", - "limitations": [ - "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", - "Complete originals remain private; public excerpts are bounded and sanitized.", - "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." - ], - "path": "evidence/receipts/claude-upstream-checks-20260921.json" - }, - { - "id": "codex-01571-qualification-20260926", - "kind": "native_cli_e2e", - "component_ids": [ - "codex" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", - "limitations": [ - "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", - "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", - "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", - "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", - "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", - "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", - "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", - "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", - "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", - "Linux x86_64 only, one host; nothing here is macOS evidence." - ], - "path": "evidence/receipts/codex-01571-qualification-20260926.json" - }, - { - "id": "codex-01592-qualification-20260930", - "kind": "native_cli_e2e", - "component_ids": [ - "codex" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", - "limitations": [ - "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", - "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", - "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", - "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", - "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", - "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", - "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", - "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", - "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", - "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", - "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", - "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", - "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", - "Linux x86_64 only, one host; nothing here is macOS evidence." - ], - "path": "evidence/receipts/codex-01592-qualification-20260930.json" - }, - { - "id": "codex-01593-hindsight-native-memory-20261001", - "kind": "native_cli_e2e", - "component_ids": [ - "codex" + "huggingface-hub-native" ], - "claim": "Fresh native Codex automatic capture and independent recollection from the selected Hindsight bank passed in both headless exec and daemon-backed interactive resume/queue paths.", + "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", "limitations": [ - "Two invented canaries and their record budgets are explicitly synthetic, not project policy, market data or trading acceptance.", - "This is supported native command/API execution with synthetic inputs and independent observation, not an executed upstream Docker or Cargo test suite.", - "Headless exec and daemon-backed TUI are distinct paths; each has its own fresh provider-backed observations below.", - "Knowledge-page search completed but did not contain either canary. Native Hindsight reflect supplied the correct values; page population or cron refresh is not qualified here.", - "Backend seed/survey completion was not established. Native status reported synced=false with active operations; the coordinator separately owns seed-job recovery.", - "Native model token usage excludes Hindsight backend extraction/reflection usage. Backend usage and monetary cost are unknown.", - "No production-quality or token-efficiency comparison is claimed, and no unrelated session or authentication store was read." - ], - "path": "evidence/receipts/codex-01593-hindsight-native-memory-20261001.json" + "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", + "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." + ] }, { - "id": "codex-01593-native-queue-20261001", - "kind": "native_cli_e2e", + "id": "native-memory", + "path": "evidence/receipts/native-memory.json", + "kind": "native_model_e2e", "component_ids": [ - "codex" + "ai-memory", + "codex", + "claude-code" ], - "claim": "Fresh provider-backed native queue delivery succeeded while the owned daemon-backed thread was idle, while a preceding turn was busy, and after its TUI disconnected and resumed. Three official Hindsight hook definitions were individually trusted through the native UI.", + "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", "limitations": [ - "Synthetic messaging inputs qualify these native operations, not production task quality or the whole ecosystem.", - "No upstream Cargo test suite was run; upstream test sources were reviewed and native commands were exercised.", - "No daemon restart was attempted during live qualification, and no unrelated session was inspected or interrupted.", - "Queue delivery to a concurrently running embedded receiver, cross-family bridge delivery, cross-account isolation, remote hosts, and Hindsight retrieval/retention are outside this receipt.", - "Hindsight capture remained disabled during hook trust. Hook trust is not memory acceptance.", - "Provider monetary cost is unknown. Native usage counters do not establish improvement against another configuration." - ], - "path": "evidence/receipts/codex-01593-native-queue-20261001.json" + "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", + "No historical archive backfill or LLM/embedding consolidation pipeline enabled." + ] }, { - "id": "codex-desktop-live-20260920", - "kind": "native_cli_e2e", + "id": "native-context-memory", + "path": "evidence/receipts/native-context-memory.json", + "kind": "native_model_e2e", "component_ids": [ "codex", + "claude-code", "context-mode", - "jcodemunch-mcp", "serena", - "ai-memory", - "socraticode", - "rtk", - "headroom", - "qmd", - "loki", - "prometheus" + "rtk" ], - "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", + "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", "limitations": [ - "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", - "Tools without native savings ledgers remain unavailable, not zero.", - "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", - "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", - "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", - "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", - "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", - "No fresh Prometheus turn sample in the selected window; no three-way observation join." - ], - "path": "evidence/receipts/codex-desktop-live-20260920.json" + "Earlier Serena/RTK run uses its original CLI version.", + "PreCompact was not induced; current Desktop catalog is distinct from child native clients." + ] }, { - "id": "codex-session-environment-20260920", + "id": "runtime-tools", + "path": "evidence/receipts/runtime-tools.json", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "context-mode", - "jcodemunch-mcp", - "serena", - "ai-memory", - "socraticode" + "gitleaks", + "sandbox-runtime" ], - "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", + "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", "limitations": [ - "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", - "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", - "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", - "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", - "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", - "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", - "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." - ], - "path": "evidence/receipts/codex-session-environment-20260920.json" + "No claim of full security certification.", + "Sandbox network denial configured but not separately exercised." + ] }, { - "id": "codex-shell-snapshot-cleanup-20260930", + "id": "artifact-reductions", + "path": "evidence/receipts/artifact-reductions.json", "kind": "artifact_measurement", "component_ids": [ - "codex" + "rtk", + "socraticode", + "openresearch", + "context-mode" ], - "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", + "claim": "Recorded exact selected-text reductions, distinct from model usage.", "limitations": [ - "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", - "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", - "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", - "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." - ], - "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" + "Lossy selections compare retained text to full-file/paper counterfactuals.", + "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." + ] }, { "id": "component-history", @@ -837,116 +564,61 @@ ] }, { - "id": "cross-family-review-terminal-lane-20260930", + "id": "native-cli-gaps", + "path": "evidence/receipts/native-cli-gaps.json", "kind": "native_model_e2e", "component_ids": [ - "codex", - "omniroute", - "claude-code" + "qmd", + "codebase-memory-mcp", + "agent-browser" ], - "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", + "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", - "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", - "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", - "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", - "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", - "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", - "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." - ], - "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" + "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", + "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." + ] }, { - "id": "current-session-observation-20260920", + "id": "worktrunk-list", + "path": "evidence/receipts/worktrunk-list.json", "kind": "native_cli_e2e", "component_ids": [ - "agentsview", - "ai-memory", - "alertmanager", - "ccusage", - "claude-hud", - "context-mode", - "grafana", - "headroom", - "jcodemunch-mcp", - "loki", - "mcporter", - "ntfy", - "opentelemetry-collector-contrib", - "otel-tui", - "prometheus", - "rtk", - "serena", - "socraticode" + "worktrunk" ], - "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", + "claim": "Native wt list enumerated the actual publication worktree set.", "limitations": [ - "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", - "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", - "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", - "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", - "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", - "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", - "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", - "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." - ], - "path": "evidence/receipts/current-session-observation-20260920.json" + "Model-free repository inventory, not multi-agent correctness." + ] }, { - "id": "dashboard-gap-resolution-20260921", - "kind": "native_cli_e2e", + "id": "desktop-direct-rag", + "kind": "native_model_e2e", "component_ids": [ - "ai-memory", - "codex", - "claude-code", - "agentsview", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo", - "vllm" + "socraticode", + "qdrant", + "vllm", + "ai-memory" ], - "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", + "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", "limitations": [ - "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", - "Fresh PreCompact event and active Desktop session end remain unforced.", - "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", - "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", - "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", - "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." + "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", + "No whole-task provider usage/savings attribution is claimed." ], - "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" + "path": "evidence/receipts/desktop-direct-rag.json" }, { - "id": "dashboard-render-e2e-20260921", - "kind": "native_cli_e2e", + "id": "vllm-compatibility", + "kind": "compatibility_attempt", "component_ids": [ - "ai-memory", - "qdrant", - "socraticode", - "serena", - "agentsview", - "dagu", - "omniroute", - "agent-browser", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo" + "vllm", + "socraticode" ], - "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", + "claim": "Latest vLLM0.29.0 native install succeeded but GPU startup failed on WSL; publisher-validated0.25.0 restored and direct retrieval passed.", "limitations": [ - "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", - "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", - "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", - "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", - "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", - "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", - "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." + "This is a host-specific failure, not a claim0.29is universally unusable.", + "The resolver success does not establish GPU/runtime compatibility." ], - "path": "evidence/receipts/dashboard-render-e2e-20260921.json" + "path": "evidence/receipts/vllm-compatibility.json" }, { "id": "desktop-cli-workflows", @@ -965,20 +637,72 @@ "path": "evidence/receipts/desktop-cli-workflows.json" }, { - "id": "desktop-direct-rag", + "id": "portable-cli-artifacts", + "kind": "native_cli_e2e", + "component_ids": [ + "shellcheck", + "difftastic", + "markitdown", + "ast-grep", + "toon", + "repomix" + ], + "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", + "limitations": [ + "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", + "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." + ], + "path": "evidence/receipts/portable-cli-artifacts.json" + }, + { + "id": "native-observability", + "kind": "native_cli_e2e", + "component_ids": [ + "codex", + "claude-code", + "agent-browser", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "grafana", + "alertmanager", + "ntfy" + ], + "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", + "limitations": [ + "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", + "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", + "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", + "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", + "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", + "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." + ], + "path": "observability/receipt.json" + }, + { + "id": "native-observability-followup", "kind": "native_model_e2e", "component_ids": [ + "codex", + "context-mode", + "ai-memory", "socraticode", - "qdrant", - "vllm", - "ai-memory" + "agent-browser", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "grafana" ], - "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", + "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", "limitations": [ - "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", - "No whole-task provider usage/savings attribution is claimed." + "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", + "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", + "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", + "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", + "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", + "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." ], - "path": "evidence/receipts/desktop-direct-rag.json" + "path": "observability/followup-receipt.json" }, { "id": "desktop-restart-acceptance", @@ -1006,648 +730,549 @@ "path": "observability/restart-receipt.json" }, { - "id": "env-freshness-wsl-ubuntu-main-20260924", - "kind": "artifact_measurement", + "id": "sec-financial-data-20260919", + "kind": "compatibility_attempt", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "duckdb", - "pandas", - "edgartools", - "exchange-calendars", - "vllm" + "duckdb" ], - "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", + "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", "limitations": [ - "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", - "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", - "One host; each PC publishes its own report under the same schema.", - "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." + "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", + "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", + "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", + "Current API snapshots do not reconstruct historical point-in-time knowledge.", + "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", + "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." ], - "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" + "path": "blueprints/us-equities/financial-data/receipt.json" }, { - "id": "exchange-calendars-native-check-20260922", + "id": "restic-local-public-reference-20260919", "kind": "native_cli_e2e", "component_ids": [ - "exchange-calendars" + "restic" ], - "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", + "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", "limitations": [ - "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", - "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", - "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", - "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", - "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." + "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", + "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", + "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", + "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", + "Credential loss recovery requires separately approved secure key escrow." ], - "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" + "path": "blueprints/us-equities/hosting/backup/receipt.json" }, { - "id": "foundation-catalog-ui-20260920", - "kind": "artifact_measurement", + "id": "native-research-runtime-20260919", + "kind": "native_model_e2e", "component_ids": [ - "agent-browser" + "claude-code", + "dagu", + "lean", + "duckdb", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", + "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", "limitations": [ - "Source pin/publication URLs pending parent final source commit and regeneration.", - "No provider/broker execution or broad regression rerun performed.", - "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." + "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", + "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", + "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", + "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", + "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", + "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", + "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", + "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." ], - "path": "evidence/receipts/foundation-catalog-ui-20260920.json" + "path": "blueprints/us-equities/research-runtime/receipt.json" }, { - "id": "foundation-closure-20260921", + "path": "blueprints/us-equities/state-recovery/memory/receipt.json", + "id": "ai-memory-native-state-recovery-20260919", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "affaan-m/ECC", - "context-mode" + "ai-memory", + "restic" ], - "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", + "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", "limitations": [ - "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", - "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", - "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", - "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", - "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", - "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", - "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", - "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." - ], - "path": "evidence/receipts/foundation-closure-20260921.json" + "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", + "38 pages table rows include historical versions, not 38 current pages.", + "Native backup excludes raw/, model caches, logs and external native session transcripts.", + "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", + "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", + "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." + ] }, { - "id": "foundation-convergence-20260921", - "kind": "native_model_e2e", + "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", + "id": "qdrant-native-state-recovery-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "rtk", - "headroom", - "toon" + "qdrant", + "restic" ], - "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", + "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", "limitations": [ - "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", - "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", - "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", - "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", - "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." - ], - "path": "evidence/receipts/foundation-convergence-20260921.json" + "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", + "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", + "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", + "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", + "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." + ] }, { - "id": "foundation-native-20260920", + "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", + "id": "qmd-bm25-retrieval-20260919", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qmd", - "qdrant", - "vllm", - "socraticode", - "serena", - "context-mode", - "jcodemunch-mcp", - "rtk", - "headroom", - "repomix", - "toon", - "codex", - "claude-code", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "omniroute" + "qmd" ], - "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", + "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", "limitations": [ - "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", - "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", - "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", - "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", - "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", - "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", - "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", - "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", - "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." - ], - "path": "evidence/receipts/foundation-native-20260920.json" + "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", + "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", + "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", + "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", + "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", + "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", + "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", + "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", + "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", + "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", + "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." + ] }, { - "id": "foundation-rd-20260921", + "path": "blueprints/us-equities/convergence-review/receipt.json", + "id": "native-claude-convergence-review-20260919", "kind": "native_model_e2e", "component_ids": [ "claude-code", - "codex", - "codex-for-claude", - "qmd" + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", + "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", "limitations": [ - "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", - "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", - "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", - "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", - "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." - ], - "path": "evidence/receipts/foundation-rd-20260921.json" + "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", + "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", + "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", + "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", + "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", + "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." + ] }, { - "id": "full-stack-convergence-20260921", + "path": "blueprints/us-equities/supply-chain/receipt.json", + "id": "syft-sdk-inventory-20260919", "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "ccusage", - "claude-code", - "codex", - "context-mode", - "dagu", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "loki", - "omniroute", - "openresearch", - "prometheus", - "qdrant", - "qmd", - "repomix", - "rtk", - "serena", - "socraticode", - "toon", - "vllm", - "worktrunk" + "syft" ], - "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", + "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", "limitations": [ - "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", - "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", - "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", - "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", - "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", - "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", - "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", - "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." - ], - "path": "evidence/receipts/full-stack-convergence-20260921.json" + "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", + "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", + "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", + "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", + "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", + "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", + "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", + "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", + "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", + "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." + ] }, { - "id": "github-automation-newpc-20260922", + "path": "adoption/receipt.json", + "id": "portable-sdk-adoption-20260919", "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code" + "duckdb" ], - "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", + "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", "limitations": [ - "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", - "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", - "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", - "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", - "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", - "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." - ], - "path": "evidence/receipts/github-automation-newpc-20260922.json" + "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", + "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", + "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", + "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", + "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", + "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", + "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." + ] }, { - "id": "gitleaks-macos-memory-bound-20260924", - "kind": "native_cli_e2e", + "path": "adoption/paired/receipt.json", + "id": "native-paired-adoption-20260919", + "kind": "native_model_e2e", "component_ids": [ - "gitleaks" + "codex", + "claude-code", + "duckdb", + "dagu", + "lean", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", + "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", "limitations": [ - "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", - "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", - "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", - "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", - "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", - "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", - "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." - ], - "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" + "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", + "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", + "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", + "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", + "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", + "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", + "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", + "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." + ] }, { - "id": "guard-k3-verification-20260930", - "kind": "artifact_measurement", + "path": "blueprints/us-equities/architecture/receipt.json", + "id": "native-architecture-review-20260919", + "kind": "native_model_e2e", "component_ids": [ - "claude-code" + "codex", + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", + "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", "limitations": [ - "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", - "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", - "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", - "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", + "claim": "Installed alpaca-py request models silently dropped synthetic advanced fields; this explicit broker-disconnected basic-intent boundary rejected those inputs and eight additional negative cases while preserving canonical decimal strings.", "limitations": [ - "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", - "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", - "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", - "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", - "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", - "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", - "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", - "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." - ], - "path": "evidence/receipts/headroom-039-qualification-20260925.json" - }, - { - "id": "hf-memory-models-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "ai-memory", - "socraticode", - "vllm", - "grafana" - ], - "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", - "limitations": [ - "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", - "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", - "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", - "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", - "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", - "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." - ], - "path": "evidence/receipts/hf-memory-models-20260921.json" - }, - { - "id": "jcodemunch-1108327-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "jcodemunch-mcp" - ], - "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", - "limitations": [ - "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", - "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" - }, - { - "id": "local-inference-c2-serving-switch-20260926", - "kind": "native_model_e2e", - "component_ids": [ - "llama-cpp" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", - "limitations": [ - "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", - "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", - "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", - "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", - "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", - "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", - "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." - ], - "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" - }, - { - "id": "login-shell-contract-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code", - "codex" - ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", - "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", - "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", - "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", - "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", - "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", - "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", - "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", - "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", - "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." - ], - "path": "evidence/receipts/login-shell-contract-20260929.json" + "Local contract is not wired into unrelated SDK calls or existing workers; explicit future adapter adoption is required.", + "No broker account, key, asset lookup, risk approval, live/paper order or provider wire behavior was exercised.", + "Whole-share basic create-intent subset only; advanced, replacement, cancellation, retries, order journals and reconciliation remain gated.", + "Input representation cap and symbol/client-ID syntax are local conservative policies, not provider or risk authorization.", + "Python SDK float conversion is observed; the canonical exact decimal envelope is deliberately not serialized through those float fields.", + "JavaScript advanced support is pinned-source evidence only; no alternative SDK was installed or executed.", + "Python audit events and the Linux namespace substantiate this scoped probe, not a universal sandbox or macOS acceptance.", + "Canonical content hashes do not establish client-ID uniqueness, deduplication or safe retry semantics.", + "No token-saving claim or model inference belongs to this deterministic task." + ] }, { - "id": "mac-memory-patch-20260920", - "path": "evidence/receipts/mac-memory-patch-20260920.json", + "id": "native-memory-lifecycle-20260919", + "path": "blueprints/us-equities/memory-lifecycle/receipt.json", "kind": "native_cli_e2e", "component_ids": [ "ai-memory" ], - "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", + "claim": "A disposable, network-isolated native ai-memory fixture passed 23 lifecycle/routing checks across 31 MCP calls; exact-path TTL behavior and explicit sweep limits retained.", "limitations": [ - "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", - "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", - "No provider or whole-task token savings measurement." + "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", + "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", + "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", + "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", + "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", + "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", + "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", + "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", + "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", + "Isolated fixture, not the live memory store or all client hooks.", + "TTL is default-search visibility until sweep, not immediate access revocation.", + "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." ] }, { - "id": "mac-native-application-migration-20260920", + "id": "native-exact-nanosecond-replay-20260919", + "path": "blueprints/us-equities/nanosecond-replay/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "fastapi", - "postgresql" + "duckdb", + "pandas" ], - "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", + "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", "limitations": [ - "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", - "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", - "No model calls; whole-task provider usage unknown." - ], - "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" + "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", + "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", + "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", + "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", + "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", + "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", + "No broker, trading strategy, actual feed or net token-saving acceptance." + ] }, { - "id": "mac-native-container-storage-20260920", + "id": "native-worker-supervision-20260919", + "path": "blueprints/us-equities/worker-supervision/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "apple-container", - "postgresql" + "systemd" ], - "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", + "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", "limitations": [ - "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", - "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", - "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", - "Images remain cached; only owned empty failed container, test database container and test volume were removed.", - "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." - ], - "path": "blueprints/convergence-practice/container-storage/receipt.json" + "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", + "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", + "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", + "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", + "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", + "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", + "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", + "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", + "Hashes bind retained evidence bytes; they do not independently attest the execution.", + "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", + "Configured resource limits were inspected, not saturation-tested." + ] }, { - "id": "mac-native-document-ingestion-20260920", + "id": "native-grand-dashboard-20260919", + "path": "observability/grand-dashboard/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "poppler" + "grafana", + "loki", + "prometheus", + "dagu" ], - "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", + "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", "limitations": [ - "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", - "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", - "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", - "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", - "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." - ], - "path": "blueprints/convergence-practice/document-ingestion/receipt.json" + "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", + "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", + "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", + "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", + "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", + "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", + "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", + "Recorded worker/decision state is not a live process registry.", + "No broker execution, exact-once accounting, universal coverage or net token savings.", + "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." + ] }, { - "id": "markitdown-018-qualification-20260925", - "kind": "native_cli_e2e", + "id": "native-convergence-review-20260919", + "path": "blueprints/us-equities/convergence-program/review-receipt.json", + "kind": "native_model_e2e", "component_ids": [ - "markitdown" + "codex", + "claude-code", + "dagu" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", + "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", "limitations": [ - "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", - "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", - "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", - "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", - "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", - "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", - "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", - "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." - ], - "path": "evidence/receipts/markitdown-018-qualification-20260925.json" + "Models checked packet/report consistency, not original sources or underlying native artifacts.", + "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", + "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", + "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", + "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", + "Usage belongs to this pair only; not whole-goal consumption or causal savings." + ] }, { - "id": "mcp-inspector-280-qualification-20260926", + "id": "native-historical-leverage-stress-20260919", + "path": "blueprints/us-equities/historical-simulation/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "mcp-inspector" + "lean" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", + "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", "limitations": [ - "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", - "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", - "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", - "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", - "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." - ], - "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" + "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", + "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", + "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", + "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", + "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", + "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", + "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", + "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", + "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", + "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", + "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", + "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", + "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", + "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", + "No paper/live orders or automatic promotion." + ] }, { - "id": "mcp-inspector-290-qualification-20261003", + "id": "native-chronological-controls-20260919", "kind": "native_cli_e2e", "component_ids": [ - "mcp-inspector" + "skfolio", + "pandas", + "lean" ], - "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", "limitations": [ - "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", - "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", - "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", + "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", + "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", + "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", + "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", + "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", + "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", + "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." ], - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + "path": "blueprints/us-equities/research-evaluation/receipt.json" }, { - "id": "mcporter-0141-qualification-20260925", + "id": "native-edgartools-catalyst-20260919", "kind": "native_cli_e2e", "component_ids": [ - "mcporter" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", - "limitations": [ - "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", - "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", - "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", - "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", - "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", - "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." - ], - "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" - }, - { - "id": "mcporter-0142-qualification-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "mcporter" + "edgartools" ], - "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", + "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", - "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", - "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", + "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", + "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", + "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", + "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", + "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", + "Native text/byte counts are not provider token savings.", + "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." ], - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + "path": "blueprints/us-equities/catalyst-provenance/receipt.json" }, { - "id": "mcporter-0142-qualification-20261004", + "id": "native-simulation-research-dashboard-20260919", "kind": "native_cli_e2e", "component_ids": [ - "mcporter" + "grafana", + "loki" ], - "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed mcporter 0.14.2 and returned version 0.14.2 with exit 0. Registry provenance matched openclaw/mcporter release.yml at v0.14.2, and a scratch npm audit verified 43 registry signatures and 15 attestations. Ad-hoc stdio jcodemunch session statistics and context-mode ctx_stats calls returned exit 0. Configured-daemon calls failed on a stale rendezvous and were not recovered. This receipt republishes sanitized historical host observations, not a new host execution.", + "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", "limitations": [ - "No macOS execution and no upstream test suite run. The npm tarball hash is artifact evidence and does not pin the transitive dependency tree or rolldown platform binding.", - "Configured-server list/call failures are retained. The stale daemon was not recovered and keep-alive transport acceptance is not claimed; dist/daemon/client.js was recorded byte-identical across 0.14.1 and 0.14.2.", - "npm audit signatures --global failed with EAUDITGLOBAL (exit 1); only the later scratch-project audit succeeded. The ad-hoc MCP statistics are self-reports, not provider counts or savings.", - "The Mac keeps its separately qualified MCPorter 0.13.13 pin until a Mac qualifies 0.14.2. The platform-independent tarball artifact check is not Mac execution or Mac qualification." + "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", + "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", + "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", + "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", + "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", + "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", + "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." ], - "path": "evidence/receipts/mcporter-0142-qualification-20261004.json" + "path": "blueprints/us-equities/simulation-research/receipt.json" }, { - "id": "memory-landscape-20260921", + "id": "native-sec-access-resolution-20260919", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "codex", - "claude-code" + "edgartools" ], - "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", + "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", "limitations": [ - "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", - "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", - "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", - "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", - "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", - "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", - "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", - "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", - "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." + "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", + "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", + "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", + "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", + "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", + "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", + "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", + "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." ], - "path": "evidence/receipts/memory-landscape-20260921.json" + "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" }, { - "id": "memory-landscape-lifecycle-20260921", + "id": "native-sec-new-host-20260924", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qdrant", - "vllm", - "serena", - "qmd", - "codex", - "claude-code" + "edgartools" ], - "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", + "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", "limitations": [ - "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", - "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", - "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", - "Exact memory session/lifetime savings are not returned and remain null.", - "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." + "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", + "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", + "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", + "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", + "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", + "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", + "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." ], - "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" + "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", + "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" }, { - "id": "memory-lifecycle-probe-20260921", + "id": "sec-catalyst-dataset-native-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "edgartools", + "duckdb" ], - "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", + "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", "limitations": [ - "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", - "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", - "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", - "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", - "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", - "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." + "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", + "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", + "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", + "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", + "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", + "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", + "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", + "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", + "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." ], - "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" + "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" }, { - "id": "native-ai-memory-maintenance-20260920", - "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", + "id": "native-corporate-actions-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "lean" ], - "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", + "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", - "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", - "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", - "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", - "Forward-only migrations may require restoring the retained private backup to downgrade." + "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", + "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", + "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", + "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", + "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", + "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" }, { "id": "native-alpaca-historical-20260920", @@ -1668,392 +1293,381 @@ "path": "blueprints/us-equities/authenticated-data/native-receipt.json" }, { - "id": "native-application-delivery-20260920", + "id": "native-security-identity-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nextjs", - "react", - "fastapi", - "postgresql" + "alpaca-py", + "duckdb" ], - "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", + "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", "limitations": [ - "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", - "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", - "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", - "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", - "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", - "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", - "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", - "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." + "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", + "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", + "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", + "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", + "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", + "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", + "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", + "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." ], - "path": "blueprints/convergence-practice/application-delivery/receipt.json" + "path": "blueprints/us-equities/identity-readiness/native-receipt.json" }, { - "path": "blueprints/us-equities/architecture/receipt.json", - "id": "native-architecture-review-20260919", - "kind": "native_model_e2e", + "id": "token-practice-artifacts-20260920", + "kind": "artifact_measurement", "component_ids": [ - "codex", - "claude-code", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "agent-browser", + "ast-grep", + "edgartools", + "markitdown", + "qmd", + "repomix", + "rtk", + "socraticode", + "syft", + "toon" ], - "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", + "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", "limitations": [ - "The models reviewed supplied evidence and did not independently inspect primary sources. Their critiques are advisory and were adjudicated; agreement does not establish correctness or trading performance.", - "This is a native architecture-review task, not another LEAN/Dagu backtest run, full MCP/RAG acceptance, broker integration, hosted deployment or universal SOTA census.", - "The44,214 combined native reported tokens exclude coordinator and source-research workers. They are usage, not causal tokens saved or a billing measurement across identical tokenizers.", - "Astra cached input is included in input and reasoning output in output. Claude thinking is included in output; duplicate per-model/iteration/stream views are not added again.", - "Native model selection and terminal usage are not independent provider attestation. Full account/session/process identifiers and raw event streams remain private.", - "The offline Alpaca observation detects synthetic field loss only; no client/network/order, valid advanced-order fixture, entitlement or execution adapter was tested.", - "New machines must reproduce their own selected native profile and sign-in; these local WSL receipts do not establish macOS or unattended-host acceptance." - ] + "Counts describe retained original host artifacts. This public aggregate omits the private originals; CI validates aggregate integrity, not an independent recount of those private bytes.", + "Most pairs select or transform information lossily. Shorter output does not establish equivalent answer quality or lower complete task usage.", + "Pairs overlap, including shared HTML sources and retrieval services. Do not sum them or attribute the same difference independently to dependencies.", + "Exact provider savings remain null. Tokenizer counts are not provider billing, subscription savings or causal per-repository effects.", + "The Syft table preserves checked package name/version/type columns while omitting other SBOM metadata; this is a view selection, not equivalent full SBOM content." + ], + "path": "evidence/receipts/token-practice-artifacts-20260920.json" }, { - "id": "native-catalog-retrieval-20260920", - "kind": "native_cli_e2e", + "id": "token-practice-native-pairs-20260920", + "kind": "native_model_e2e", "component_ids": [ - "qmd" + "codex", + "claude-code", + "context-mode" ], - "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", + "claim": "Four native coding trials passed shared visible, hidden and file-scope acceptance gates; one fixed-order Context Mode non-use/explicit-use pair per client produced mixed observed task-usage differences.", "limitations": [ - "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", - "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", - "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", - "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." + "One baseline-first pair per client is not randomized, repeated or cache-matched. Native cache warmth and plugin tool availability were not fully controlled.", + "Observed differences are not causal per-repository savings, a whole-stack saving rate or evidence that either model is generally better.", + "Codex cached input and reasoning output are subsets. Claude ordinary input, cache creation, cache reads and output are separate categories; thinking is included in output.", + "Final cumulative session counters are used once. Coordinator, reviewers, audit tooling and report production are outside these four task totals.", + "Billed cost is unknown. Token counts and cached reads do not establish subscription charges or money saved.", + "Private transcripts, session identifiers and commands are not published. Hashes bind retained evidence, not independent attestation of provider execution." ], - "path": "evidence/receipts/native-catalog-retrieval-20260920.json" + "path": "evidence/receipts/token-practice-native-pairs-20260920.json" }, { - "id": "native-chronological-controls-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "skfolio", - "pandas", - "lean" - ], - "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", - "limitations": [ - "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", - "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", - "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", - "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", - "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", - "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", - "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", - "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." - ], - "path": "blueprints/us-equities/research-evaluation/receipt.json" - }, - { - "id": "native-ci-security-20260920", - "kind": "native_cli_e2e", - "component_ids": [ - "zizmor" - ], - "claim": "Native zizmor1.30.1 on macOS accepts the published workflow under offline regular analysis and rejects an inert unsafe fixture with three findings; two executable regression checks pass.", - "limitations": [ - "Offline regular analysis is scoped static evidence, not absence of every vulnerability or signature verification.", - "Mac binary and the checksum-locked Linux CI wheel are distinct artifacts; new runner execution is established by its own CI result.", - "The unsafe fixture was analyzed but never executed. No model calls, broker actions or savings measurement." - ], - "path": "blueprints/convergence-practice/ci-security/receipt.json" - }, - { - "id": "native-claude-child-patch-20260920", - "kind": "native_model_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Native Claude Code2.1.278 on Ubuntu24.04 WSL2 used Opus5 through Max for one foreground isolated child repair. Only planner.py changed; all12 frozen visible tests pass independently after8 seed failures.", - "limitations": [ - "One synthetic visible-oracle fixture, not a held-out benchmark, real application or GPU acceptance.", - "Ultracode was requested; observed native delegation does not establish dynamic-workflow selection or an OS sandbox.", - "Three native usage views retain different scopes; native retries and whole Desktop usage are unknown. No matched model baseline or savings claim.", - "Local supervision completed without timeout; provider cancellation, crash recovery and full-host backup were not tested." - ], - "path": "blueprints/convergence-practice/native-worker/receipt.json" - }, - { - "path": "blueprints/us-equities/convergence-review/receipt.json", - "id": "native-claude-convergence-review-20260919", - "kind": "native_model_e2e", + "id": "token-practice-coverage-20260920", + "kind": "historical_inventory", "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "ast-grep", + "ccusage", "claude-code", + "claude-hud", + "codebase-memory-mcp", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "davila7/claude-code-templates", + "difftastic", + "gitleaks", + "headroom", + "huggingface-hub-native", + "markitdown", + "mcp-inspector", + "mcporter", + "openresearch", + "playwright-cli", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "rtk", + "sandbox-runtime", + "serena", + "shanraisshan/claude-code-best-practice", + "shellcheck", + "socraticode", + "toon", + "vllm", + "worktrunk", "opentelemetry-collector-contrib", "prometheus", - "loki" + "loki", + "grafana", + "alertmanager", + "ntfy", + "duckdb", + "restic", + "dagu", + "lean", + "syft", + "alpaca-py", + "systemd", + "pandas", + "skfolio", + "edgartools" ], - "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", + "claim": "A dated 52-component audit distinguishes native artifact/task pairs, bounded functionality, current queries, configuration validation, historical-only evidence, host failures and non-executable guidance.", "limitations": [ - "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", - "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", - "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", - "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", - "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", - "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." - ] + "This historical coverage inventory records the dated audit only; it is not 52 fresh end-to-end passes or new-host acceptance.", + "Seventy captured operations include four retained failed attempts; successful corrections do not erase the initial OTel environment and Dagu environment-filter failures.", + "Two Linux Playwright invocations failed with ENOENT; the Windows installation does not establish Linux availability.", + "Guidance repositories are not executable tools. Current state, backup and cache queries or configuration validation do not prove complete lifecycle behavior.", + "Native RTK, TOON, Context Mode and Headroom counters have different scopes and estimators. They cannot be summed with artifact differences or provider usage.", + "Exact causal per-component provider saving values remain unknown rather than zero." + ], + "path": "evidence/receipts/token-practice-coverage-20260920.json" }, { - "id": "native-claude-hud-interactive-20260920", - "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", - "kind": "compatibility_attempt", + "id": "token-practice-catalog-toon-20260920", + "kind": "artifact_measurement", "component_ids": [ - "claude-hud" + "toon" ], - "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", + "claim": "A reversible full-catalog TOON conversion had a smaller native heuristic estimate but a larger exact token count than compact JSON; the guard retained compact JSON.", "limitations": [ - "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", - "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", - "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." - ] + "This is one later artifact comparison, separate from the ten original token-practice pairs. Do not sum it with cumulative native counters or provider usage.", + "Native tokenx estimates and exact o200k_base counts use different estimators and JSON representations; they are not interchangeable savings metrics.", + "The public aggregate omits the private captured output files. Published hashes establish identity, not independent CI recount of the private bytes.", + "Exact provider savings remain unknown. The successful strict round trip establishes data equivalence for this conversion only.", + "Command templates replace host-specific source and output locations with portable placeholders." + ], + "path": "evidence/receipts/token-practice-catalog-toon-20260920.json" }, { - "id": "native-claude-profile-20260920", - "kind": "native_cli_e2e", + "id": "token-practice-native-counters-20260920", + "kind": "historical_inventory", "component_ids": [ - "claude-code", - "codex", - "affaan-m/ECC", "context-mode", - "rtk" + "headroom", + "rtk", + "toon" ], - "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", + "claim": "Dated native counter snapshots retain RTK output, the capped Headroom ledger result, per-conversion TOON estimates and three separate Context Mode runtime scopes without treating them as exact provider savings.", "limitations": [ - "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", - "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", - "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", - "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", - "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", - "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", - "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", - "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", - "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." + "This historical snapshot is a dated report only, not a live dashboard or new-host execution acceptance.", + "RTK counters estimate retained command history and default to 90-day retention; selected-project values are a subset of the global result. Do not add snapshots or assume a forever ledger.", + "Headroom 0.37.0 caps the report at 30 days despite naming a field lifetime; zero ledger calls do not establish zero offline guard use or provider usage.", + "Context Mode uses byte/event heuristics and separate runtime state. Illustrative cost estimates are not bills, and persisted files must not be added to a direct MCP connection snapshot.", + "TOON statistics are tokenx heuristics for one conversion, not a native cumulative ledger. The compact-JSON exact counterexample is represented by the separate catalog receipt and must not be counted twice.", + "Raw private files, host paths, full command outputs and session identifiers are omitted. Sanitized fields and aggregate hashes do not independently attest provider activity." ], - "path": "evidence/receipts/native-claude-profile-20260920.json" + "path": "evidence/receipts/token-practice-native-counters-20260920.json" }, { - "id": "native-claude-session-recovery-20260920", - "kind": "native_model_e2e", + "id": "token-practice-gap-followup-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "playwright-cli", + "agentsview", + "ccusage", + "claude-hud", + "openresearch", + "codex-for-claude", + "codex" ], - "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", + "claim": "Six separately scoped follow-ups exercised a pinned Linux browser fixture, a single-session archive query, offline usage parsing, a synthetic HUD renderer, public-paper retrieval and one read-only native bridge backend task.", "limitations": [ - "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", - "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", - "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", - "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." + "These later bounded results do not turn the earlier dated 52-component audit into 52 full end-to-end passes. Individual scopes below remain authoritative.", + "Three failed attempts remain: file-protocol navigation rejection, implicit archive auto-start message failure and archive restart-lock failure. Successful recovery does not erase them.", + "Playwright used an existing Chrome installation and a fixture-only loopback HTTP endpoint. Its Playwright dependencies are alpha builds; no default browser download or arbitrary-site acceptance was tested.", + "The archive was restricted to one explicit project session. Full private transcripts, authentication material and session identifiers are omitted; automatic archive discovery did not pass.", + "HUD acceptance is a synthetic renderer fixture, not a live interactive account display. OpenResearch acceptance is public-paper retrieval, not an agent research workflow or research-quality assessment.", + "The ccusage reports overlap and must not be added. Upstream parser categories and totals are not bills or a matched provider savings comparison. The first date-only query returned an empty window.", + "The bridge trial is additional observed provider usage, not savings. It used one backend task without an outer Claude interaction or matched baseline; cached input is a subset of native input.", + "Tracked source remained unchanged; native MCP startup created untracked metadata. All owned temporary services were stopped. Public aggregate hashes bind retained evidence but do not independently reproduce private logs." ], - "path": "evidence/receipts/native-claude-session-recovery-20260920.json" + "path": "evidence/receipts/token-practice-gap-followup-20260920.json" }, { - "id": "native-cli-gaps", - "path": "evidence/receipts/native-cli-gaps.json", - "kind": "native_model_e2e", + "id": "native-lifecycle-sample-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "qmd", - "codebase-memory-mcp", - "agent-browser" + "edgartools", + "duckdb" ], - "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", + "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", "limitations": [ - "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", - "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." - ] + "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", + "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", + "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", + "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", + "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", + "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." + ], + "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" }, { - "id": "native-codex-session-recovery-20260920", - "kind": "native_model_e2e", + "id": "synthetic-catalyst-contract-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "codex" + "duckdb" ], - "claim": "Native Codex on Mac interrupted an owned pending dynamic tool, reconnected through a new app-server and resumed the same native thread/session to finalize an unchanged single checkpoint.", + "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", "limitations": [ - "One synthetic two-turn fixture on the installed Mac bundled alpha; no general distributed exactly-once guarantee.", - "No arbitrary shell/MCP descendant, provider cancellation, power loss or independent-host restore test.", - "Native cumulative token categories counted once; retries, billing and enclosing coordinator usage unknown; no savings claim." + "Protocol thresholds are exploratory choices, not fitted or proven optimal.", + "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", + "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", + "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", + "No provider calls, broker orders, new model turn or net token-savings measurement." ], - "path": "evidence/receipts/native-codex-session-recovery-20260920.json" + "path": "blueprints/us-equities/catalyst-experiment/receipt.json" }, { - "id": "native-context-memory", - "path": "evidence/receipts/native-context-memory.json", + "id": "native-research-efficiency-20260920", "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", - "context-mode", - "serena", - "rtk" + "qmd" ], - "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", + "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", "limitations": [ - "Earlier Serena/RTK run uses its original CLI version.", - "PreCompact was not induced; current Desktop catalog is distinct from child native clients." - ] - }, - { - "id": "native-convergence-review-20260919", - "path": "blueprints/us-equities/convergence-program/review-receipt.json", - "kind": "native_model_e2e", - "component_ids": [ - "codex", - "claude-code", - "dagu" + "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", + "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", + "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", + "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", + "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", + "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", + "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", + "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", + "Local supervision does not prove provider-side cancellation; no run timed out.", + "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." ], - "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", - "limitations": [ - "Models checked packet/report consistency, not original sources or underlying native artifacts.", - "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", - "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", - "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", - "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", - "Usage belongs to this pair only; not whole-goal consumption or causal savings." - ] + "path": "blueprints/us-equities/research-efficiency/native-receipt.json" }, { - "id": "native-corporate-actions-20260920", + "id": "native-ci-security-20260920", "kind": "native_cli_e2e", "component_ids": [ - "lean" + "zizmor" ], - "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", + "claim": "Native zizmor1.30.1 on macOS accepts the published workflow under offline regular analysis and rejects an inert unsafe fixture with three findings; two executable regression checks pass.", "limitations": [ - "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", - "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", - "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", - "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", - "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", - "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." + "Offline regular analysis is scoped static evidence, not absence of every vulnerability or signature verification.", + "Mac binary and the checksum-locked Linux CI wheel are distinct artifacts; new runner execution is established by its own CI result.", + "The unsafe fixture was analyzed but never executed. No model calls, broker actions or savings measurement." ], - "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" + "path": "blueprints/convergence-practice/ci-security/receipt.json" }, { - "id": "native-dagu-job-recovery-20260920", - "kind": "native_cli_e2e", + "id": "native-claude-child-patch-20260920", + "kind": "native_model_e2e", "component_ids": [ - "dagu" + "claude-code" ], - "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", + "claim": "Native Claude Code2.1.278 on Ubuntu24.04 WSL2 used Opus5 through Max for one foreground isolated child repair. Only planner.py changed; all12 frozen visible tests pass independently after8 seed failures.", "limitations": [ - "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", - "Initial native schema failure and earlier Mac success are retained; no savings comparison." + "One synthetic visible-oracle fixture, not a held-out benchmark, real application or GPU acceptance.", + "Ultracode was requested; observed native delegation does not establish dynamic-workflow selection or an OS sandbox.", + "Three native usage views retain different scopes; native retries and whole Desktop usage are unknown. No matched model baseline or savings claim.", + "Local supervision completed without timeout; provider cancellation, crash recovery and full-host backup were not tested." ], - "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" + "path": "blueprints/convergence-practice/native-worker/receipt.json" }, { - "id": "native-dagu-retry-tests-20260920", + "id": "upstream-native-tools-20260920", + "path": "evidence/receipts/upstream-native-tools-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "dagu" + "beads", + "skills-ref", + "otel-tui" ], - "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", + "claim": "Three supplemental upstream tools installed on the source Linux/WSL host: Beads persisted task claims and dependency transitions, skills-ref validated and rendered a selected skill, and otel-tui ingested and displayed one synthetic loopback trace.", "limitations": [ - "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", - "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", - "No broker/provider operations or token savings were measured.", - "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "Bounded native CLI/TUI acceptance on Linux/WSL; no new native Codex or Claude provider task was run for these additions.", + "Beads used one owned Git fixture with embedded Dolt, explicit task scope, skipped agent-instruction generation and skipped hooks. It does not replace ai-memory.", + "skills-ref is upstream's reference/demo implementation; successful portable-format validation does not certify production client extensions or tool semantics.", + "otel-tui received one synthetic local trace; no production or native-provider telemetry session was evaluated and no persistent exporter was installed.", + "None of these three tools exposes a verified cumulative token-savings counter. Exact causal lifetime provider savings remain null.", + "Public command forms substitute portable variables for private host paths; private raw operation logs are not published." ], - "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-dashboard-access-20260921", + "id": "native-ai-memory-maintenance-20260920", + "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "dagu", - "qdrant", - "agentsview", - "grafana", - "prometheus", - "ntfy", - "agent-browser", - "omniroute" + "ai-memory" ], - "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", + "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", "limitations": [ - "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", - "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", - "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", - "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", - "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", - "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", - "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", + "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", + "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", + "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", + "Forward-only migrations may require restoring the retained private backup to downgrade." ], - "path": "evidence/receipts/native-dashboard-access-20260921.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-dashboard-data-20260921", + "id": "native-linux-zizmor-20260920", + "path": "evidence/receipts/native-linux-zizmor-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qmd", - "qdrant", - "agentsview", - "grafana", - "loki", - "rtk", - "context-mode", - "headroom", - "jcodemunch-mcp", - "promptfoo", - "serena", - "systemd" + "zizmor" ], - "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", + "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", "limitations": [ - "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", - "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", - "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", - "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", - "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", - "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", - "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", - "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", - "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", + "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", + "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", + "No provider task was run and zizmor supplies no verified lifetime token-savings counter." ], - "path": "evidence/receipts/native-dashboard-data-20260921.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-edgartools-catalyst-20260919", + "id": "native-dagu-job-recovery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "dagu" ], - "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", + "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", "limitations": [ - "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", - "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", - "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", - "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", - "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", - "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", - "Native text/byte counts are not provider token savings.", - "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." + "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", + "Initial native schema failure and earlier Mac success are retained; no savings comparison." ], - "path": "blueprints/us-equities/catalyst-provenance/receipt.json" + "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" }, { - "id": "native-exact-nanosecond-replay-20260919", - "path": "blueprints/us-equities/nanosecond-replay/receipt.json", - "kind": "native_cli_e2e", + "id": "native-codex-session-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "duckdb", - "pandas" + "codex" ], - "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", + "claim": "Native Codex on Mac interrupted an owned pending dynamic tool, reconnected through a new app-server and resumed the same native thread/session to finalize an unchanged single checkpoint.", "limitations": [ - "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", - "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", - "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", - "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", - "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", - "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", - "No broker, trading strategy, actual feed or net token-saving acceptance." - ] + "One synthetic two-turn fixture on the installed Mac bundled alpha; no general distributed exactly-once guarantee.", + "No arbitrary shell/MCP descendant, provider cancellation, power loss or independent-host restore test.", + "Native cumulative token categories counted once; retries, billing and enclosing coordinator usage unknown; no savings claim." + ], + "path": "evidence/receipts/native-codex-session-recovery-20260920.json" }, { "id": "native-gpu-patch-20260920", @@ -2072,52 +1686,67 @@ "path": "evidence/receipts/native-gpu-patch-20260920.json" }, { - "id": "native-grand-dashboard-20260919", - "path": "observability/grand-dashboard/receipt.json", - "kind": "native_cli_e2e", + "id": "native-claude-session-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "grafana", - "loki", - "prometheus", - "dagu" + "claude-code" ], - "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", + "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", "limitations": [ - "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", - "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", - "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", - "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", - "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", - "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", - "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", - "Recorded worker/decision state is not a live process registry.", - "No broker execution, exact-once accounting, universal coverage or net token savings.", - "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." - ] + "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", + "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", + "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", + "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." + ], + "path": "evidence/receipts/native-claude-session-recovery-20260920.json" }, { - "id": "native-harness-defaults-20260920", - "kind": "artifact_measurement", + "id": "token-native-retained-functional-20260920", + "path": "evidence/receipts/token-native-retained-functional-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code" + "context-hub", + "headroom", + "mcp-inspector", + "promptfoo", + "worktrunk" ], - "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", + "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", "limitations": [ - "Saved instruction bytes are not proof that every future model decision will follow them.", - "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", - "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." - ], - "path": "evidence/receipts/native-harness-defaults-20260920.json" + "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", + "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", + "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", + "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", + "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", + "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." + ] }, { - "id": "native-headroom-mcp-20260920", - "path": "evidence/receipts/native-headroom-mcp-20260920.json", + "id": "native-jcodemunch-20260920", + "path": "evidence/receipts/native-jcodemunch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "headroom" + "jcodemunch-mcp" ], - "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", + "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", + "limitations": [ + "Single bounded code-reading task, not a native provider A/B trial.", + "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", + "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", + "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", + "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", + "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", + "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." + ] + }, + { + "id": "native-headroom-mcp-20260920", + "path": "evidence/receipts/native-headroom-mcp-20260920.json", + "kind": "native_cli_e2e", + "component_ids": [ + "headroom" + ], + "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", "limitations": [ "Owned synthetic acceptance artifacts demonstrate artifact reduction, not lifetime production or provider-token savings", "MCP summary is not a lossless replacement of the original; its exact full retrieval consumes the original token count", @@ -2128,676 +1757,589 @@ ] }, { - "id": "native-historical-leverage-stress-20260919", - "path": "blueprints/us-equities/historical-simulation/receipt.json", - "kind": "native_cli_e2e", + "id": "native-token-focus-clients-20260920", + "path": "evidence/receipts/native-token-focus-clients-20260920.json", + "kind": "native_model_e2e", "component_ids": [ - "lean" + "codex", + "claude-code", + "context-mode", + "jcodemunch-mcp" ], - "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", + "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", "limitations": [ - "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", - "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", - "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", - "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", - "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", - "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", - "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", - "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", - "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", - "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", - "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", - "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", - "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", - "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", - "No paper/live orders or automatic promotion." + "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", + "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", + "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", + "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", + "Raw private prompts, client streams, account identifiers and host paths are not published." ] }, { - "id": "native-jcodemunch-20260920", - "path": "evidence/receipts/native-jcodemunch-20260920.json", + "id": "native-sandbox-network-20260920", + "path": "evidence/receipts/native-sandbox-network-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "jcodemunch-mcp" + "sandbox-runtime" ], - "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", + "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", "limitations": [ - "Single bounded code-reading task, not a native provider A/B trial.", - "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", - "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", - "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", - "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", - "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", - "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." + "HTTP proxy path tested on this Linux/WSL host", + "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", + "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", + "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." ] }, { - "path": "blueprints/us-equities/execution-realism/receipt.json", - "id": "native-lean-execution-sensitivity-20260919", - "kind": "native_cli_e2e", + "id": "native-claude-hud-interactive-20260920", + "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", + "kind": "compatibility_attempt", "component_ids": [ - "lean" + "claude-hud" ], - "claim": "Native LEAN completed three fixed-order historical simulations with distinct upstream fee/slippage assumptions; serialized fill cash reconciles to native rounded summaries and all mounted engine/data input hashes remained unchanged.", + "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", "limitations": [ - "Exact arithmetic over serialized native event values; exported five-decimal fill prices and cent-rounded summaries do not expose all internal precision.", - "Illustrative fees and slippage are assumptions, not calibrated market or Alpaca execution observations.", - "Full-quantity market fills remain assumed; participation, partial fills, impact, latency, queueing, cancellation and broker reconciliation remain unaccepted.", - "Bundled five-day data do not establish PIT/corporate-action/universe quality or investment returns.", - "The normal dotnet build/restore route timed out twice; only the installed native C# compiler route is accepted.", - "Mounted input hashes do not prove every file was read; successful request logs list 13 paths plus possible separately read metadata.", - "No broker connection, account entitlement, deployment, strategy promotion, provider usage or token saving is established." + "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", + "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", + "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." ] }, { - "id": "native-lifecycle-sample-20260920", + "id": "native-application-delivery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "nextjs", + "react", + "fastapi", + "postgresql" ], - "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", + "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", "limitations": [ - "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", - "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", - "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", - "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", - "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", - "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." + "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", + "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", + "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", + "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", + "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", + "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", + "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", + "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." ], - "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" + "path": "blueprints/convergence-practice/application-delivery/receipt.json" }, { - "id": "native-linux-zizmor-20260920", - "path": "evidence/receipts/native-linux-zizmor-20260920.json", + "id": "mac-native-document-ingestion-20260920", "kind": "native_cli_e2e", "component_ids": [ - "zizmor" + "poppler" ], - "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", + "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", - "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", - "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", - "No provider task was run and zizmor supplies no verified lifetime token-savings counter." + "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", + "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", + "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", + "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", + "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "blueprints/convergence-practice/document-ingestion/receipt.json" }, { - "id": "native-memory", - "path": "evidence/receipts/native-memory.json", - "kind": "native_model_e2e", + "id": "native-wsl-restic-synthetic-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "codex", - "claude-code" + "restic" ], - "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", + "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", "limitations": [ - "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", - "No historical archive backfill or LLM/embedding consolidation pipeline enabled." - ] + "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", + "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", + "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", + "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", + "No token, storage-efficiency or backup performance claim.", + "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", + "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", + "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", + "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", + "Ten offline oracle/guard tests are distinct from the actual native restic commands." + ], + "path": "blueprints/convergence-practice/wsl-restore/receipt.json" }, { - "id": "native-memory-lifecycle-20260919", - "path": "blueprints/us-equities/memory-lifecycle/receipt.json", + "id": "mac-native-container-storage-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "apple-container", + "postgresql" ], - "claim": "A disposable, network-isolated native ai-memory fixture passed 23 lifecycle/routing checks across 31 MCP calls; exact-path TTL behavior and explicit sweep limits retained.", + "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", "limitations": [ - "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", - "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", - "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", - "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", - "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", - "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", - "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", - "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", - "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", - "Isolated fixture, not the live memory store or all client hooks.", - "TTL is default-search visibility until sweep, not immediate access revocation.", - "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." - ] + "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", + "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", + "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", + "Images remain cached; only owned empty failed container, test database container and test volume were removed.", + "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." + ], + "path": "blueprints/convergence-practice/container-storage/receipt.json" }, { - "id": "native-memory-rag-alignment-20260921", + "id": "mac-native-application-migration-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qdrant", - "qmd", - "vllm", - "grafana", - "loki" + "fastapi", + "postgresql" ], - "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", + "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", "limitations": [ - "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", - "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", - "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", - "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", - "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", - "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", - "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." + "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", + "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", + "No model calls; whole-task provider usage unknown." ], - "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" + "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" }, { - "id": "native-nautilus-ci-20260920", + "id": "velanext-native-quality-tools-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "gitleaks", + "worktrunk" ], - "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", + "claim": "On VelaNext, exact gitleaks8.30.1 detected one inert test credential and accepted the clean control with redacted reports. Worktrunk0.78.0 created/listed/removed owned worktrees while refusing dirty removal without loss.", "limitations": [ - "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", - "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", - "Network namespace and available-interface observations are not measured counts of attempted external transports." + "Isolated synthetic Linux/WSL fixtures; no arbitrary repository safety/security certification or Mac acceptance inferred.", + "Original executed runner and attempt retained. Second attempt follows exact-pin/archive/binary/version binding and timeout-evidence hardening;20 offline guards passed on Mac and WSL.", + "GitHub attestation endpoints returned404. Publisher checksum, GitHub archive digest and exact pinned license checks passed; no attestation claim.", + "No accounts, shared services, project hooks or model calls changed by qualification. Global promotion, when performed, is separate host deployment evidence.", + "Whole coordinator/worker provider usage is unknown; no token or monetary savings claim." ], - "path": "evidence/receipts/native-nautilus-ci-20260920.json" + "path": "blueprints/convergence-practice/wsl-native-tools/receipt.json" }, { - "id": "native-nautilus-v2-20260920", + "id": "mac-memory-patch-20260920", + "path": "evidence/receipts/mac-memory-patch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "ai-memory" ], - "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", + "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", "limitations": [ - "Release candidate, not production/live-capital acceptance.", - "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", - "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", - "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", - "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", - "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", - "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." - ], - "path": "evidence/receipts/native-nautilus-v2-20260920.json" + "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", + "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", + "No provider or whole-task token savings measurement." + ] }, { - "id": "native-observability", + "path": "evidence/receipts/wsl-application-20260920.json", + "id": "wsl-application-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana", - "alertmanager", - "ntfy" + "nextjs", + "react", + "fastapi", + "postgresql", + "playwright-test" ], - "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", + "claim": "Clean isolated WSL runtime restored the same locked application, passed12 API checks, migration reversal, schema/types, production build and real browser flow; exact row/history persisted after PostgreSQL/API/Next restart.", "limitations": [ - "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", - "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", - "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", - "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", - "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", - "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." - ], - "path": "observability/receipt.json" + "Synthetic loopback application; no production deployment, user authentication or another-host acceptance.", + "Official exact Ubuntu packages were extracted task-only with signed metadata/SHA verification; no package scripts or system database changes.", + "Historical application inputs remain frozen; Makelevel/TIME_WAIT recipe fixes were qualified separately with five real make/socket tests on Mac and WSL.", + "No model calls by application commands; whole-task usage remains unknown." + ] }, { - "id": "native-observability-followup", - "kind": "native_model_e2e", + "id": "wsl-transport-recovery-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "context-mode", - "ai-memory", - "socraticode", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana" + "dagu" ], - "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", + "claim": "An owned nonmultiplexed SSH client was terminated; fresh reconnect observed the same native Dagu job running with one unchanged checkpoint, then native completion without stop or retry.", "limitations": [ - "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", - "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", - "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", - "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", - "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", - "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." + "Controlled client termination and a deliberately detached deterministic job; not a real network outage, host restart, model-session recovery or distributed exactly-once guarantee.", + "First harness attempt misclassified native SSH exit255 and stopped the job; its narrower same-run finalizer retry is retained separately from corrected survival acceptance.", + "Original12-test oracle passed before and after; observed owned processes/listener retired; whole-task provider usage remains unknown." ], - "path": "observability/followup-receipt.json" + "path": "evidence/receipts/wsl-transport-recovery-20260920.json" }, { - "id": "native-offhost-app-state-20260920", + "id": "wsl-document-ingestion-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qdrant", - "restic" + "poppler" ], - "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", + "claim": "Native Poppler26.09.0 built in a clean WSL prefix and passed the frozen3-page,24-cell,8-positive/4-absent document protocol; four extraction/retrieval artifacts exactly match Mac output.", "limitations": [ - "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", - "Sequential native application snapshots do not establish an atomic cross-application transaction.", - "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", - "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", - "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", - "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", - "No model/provider/broker calls or causal token/cost savings measurement." + "Designed born-digital Latin fixture with explicit table geometry; no OCR, inferred layout, general semantic retrieval or broad upstream corpus qualification.", + "Exact source signature, signed package extraction and native dependency checks preceded execution; failed first public-key lookup remains recorded.", + "No global package/service/client change or model/GPU invocation; whole-task provider usage unknown." ], - "path": "evidence/receipts/native-offhost-app-state-20260920.json" + "path": "evidence/receipts/wsl-document-ingestion-20260920.json" }, { - "id": "native-offhost-restic-20260920", + "id": "wsl-memory-maintenance-20260920", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "ai-memory" ], - "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", + "claim": "Official Linux ai-memory2.3.2 passed65 synthetic native checks across exact scope, Unicode/reserved paths, restart, upstream HTTP backup and native restore; four owned processes exited0.", "limitations": [ - "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", - "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", - "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", - "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", - "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", - "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." + "Isolated fresh synthetic store and39 MCP tool calls; not production activation, native-client integration or prior-version migration.", + "Automatic capture, embeddings, generation, watcher and autowire disabled; no OS-confinement claim.", + "Native backup/restore both exit0; complete private logs retained, fixture model calls0 and whole-task provider usage unknown." ], - "path": "evidence/receipts/native-offhost-restic-20260920.json" + "path": "evidence/receipts/wsl-memory-maintenance-20260920.json" }, { - "path": "adoption/paired/receipt.json", - "id": "native-paired-adoption-20260919", - "kind": "native_model_e2e", + "id": "token-practice-confirmation-20260920", + "kind": "historical_inventory", "component_ids": [ - "codex", - "claude-code", - "duckdb", - "dagu", - "lean", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "rtk", + "context-mode", + "headroom", + "jcodemunch-mcp" ], - "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", + "claim": "Dated direct upstream counter outputs, current release metadata, independent artifact rechecks and reconciled recorded monitoring support explicit baseline selection without claiming causal lifetime provider savings.", "limitations": [ - "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", - "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", - "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", - "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", - "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", - "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", - "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", - "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." - ] + "Historical source-host observations only; not live acceptance on the reader's PC.", + "Upstream retained-history estimates, exact artifact counts and provider consumption are different quantities and must not be summed.", + "Artifact and client rechecks inspected existing retained inputs and streams; no new model task or reinstall was performed in this confirmation.", + "Public native fields are allowlisted unchanged from private outputs; host paths, process identifiers and account details are omitted.", + "Latest monitoring queries returned no matching observations in their six-hour window; this does not mean zero usage or newly confirmed savings.", + "Latest-release equality was checked only for the four selected token tools; accepted specialist compatibility pins are separate." + ], + "path": "evidence/receipts/token-practice-confirmation-20260920.json" }, { - "path": "blueprints/us-equities/point-in-time/receipt.json", - "id": "native-point-in-time-contract-20260919", + "id": "native-token-clean-prefix-20260920", "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "headroom", + "jcodemunch-mcp" ], - "claim": "DuckDB 1.5.5 materialized and selected a synthetic temporal snapshot; late revisions, universe state, feed/adjustment scope and pinned snapshot integrity were exercised through native Python SDK/SQL commands.", + "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", "limitations": [ - "Synthetic observations only; no entitled or accepted market dataset, SEC download, vendor API, model or broker call occurred.", - "Availability timestamps and evidence references are declarations, not independently authenticated vendor publication evidence.", - "Local snapshot ingestion time is separate from source publication and original capture time.", - "Scope is realized observations and effective universe state; it does not model every corporate action, event forecast, symbol mapping or delisting history.", - "Hash checks require the caller to retain a trusted manifest digest independently; local file permissions are not immutable storage or off-host recovery." - ] + "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", + "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", + "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", + "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", + "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", + "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", + "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", + "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." + ], + "path": "evidence/receipts/native-token-clean-prefix-20260920.json" }, { - "id": "native-progress-capacity-20260921", + "id": "current-session-observation-20260920", "kind": "native_cli_e2e", "component_ids": [ + "agentsview", + "ai-memory", + "alertmanager", + "ccusage", + "claude-hud", + "context-mode", + "grafana", + "headroom", + "jcodemunch-mcp", "loki", - "dagu" + "mcporter", + "ntfy", + "opentelemetry-collector-contrib", + "otel-tui", + "prometheus", + "rtk", + "serena", + "socraticode" ], - "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", + "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", "limitations": [ - "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", - "No client restart, service restart or physical reboot was performed or verified.", - "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", - "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", - "No live provider inference, account change, new dependency or upstream version change for this repair." + "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", + "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", + "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", + "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", + "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", + "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", + "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", + "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." ], - "path": "observability/grand-dashboard/capacity-recovery-20260921.json" + "path": "evidence/receipts/current-session-observation-20260920.json" }, { - "id": "native-quality-defaults-20260920", + "id": "foundation-native-20260920", "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "qmd", + "qdrant", + "vllm", + "socraticode", + "serena", + "context-mode", + "jcodemunch-mcp", + "rtk", + "headroom", + "repomix", + "toon", "codex", - "claude-code" + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "omniroute" ], - "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", + "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", "limitations": [ - "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", - "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", - "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", - "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", - "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." + "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", + "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", + "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", + "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", + "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", + "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", + "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", + "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", + "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." ], - "path": "evidence/receipts/native-quality-defaults-20260920.json" + "path": "evidence/receipts/foundation-native-20260920.json" }, { - "id": "native-rag", - "path": "evidence/receipts/native-rag.json", - "kind": "native_model_e2e", + "id": "codex-session-environment-20260920", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "socraticode", - "qdrant", - "vllm", - "huggingface-hub-native" + "context-mode", + "jcodemunch-mcp", + "serena", + "ai-memory", + "socraticode" ], - "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", + "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", "limitations": [ - "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", - "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." - ] - }, - { - "id": "native-research-efficiency-20260920", - "kind": "native_model_e2e", - "component_ids": [ - "codex", - "claude-code", - "qmd" - ], - "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", - "limitations": [ - "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", - "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", - "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", - "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", - "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", - "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", - "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", - "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", - "Local supervision does not prove provider-side cancellation; no run timed out.", - "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." - ], - "path": "blueprints/us-equities/research-efficiency/native-receipt.json" - }, - { - "id": "native-research-runtime-20260919", - "kind": "native_model_e2e", - "component_ids": [ - "claude-code", - "dagu", - "lean", - "duckdb", - "opentelemetry-collector-contrib", - "prometheus", - "loki" - ], - "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", - "limitations": [ - "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", - "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", - "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", - "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", - "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", - "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", - "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", - "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." + "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", + "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", + "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", + "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", + "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", + "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", + "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." ], - "path": "blueprints/us-equities/research-runtime/receipt.json" + "path": "evidence/receipts/codex-session-environment-20260920.json" }, { - "id": "native-returned-results-20260921", + "id": "codex-desktop-live-20260920", "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "rtk", "context-mode", - "qmd", + "jcodemunch-mcp", "serena", "ai-memory", "socraticode", - "qdrant", - "agentsview", - "grafana", - "loki", - "prometheus", - "dagu", - "ntfy", - "omniroute", - "agent-browser", - "promptfoo", + "rtk", "headroom", - "jcodemunch-mcp" + "qmd", + "loki", + "prometheus" ], - "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", + "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", "limitations": [ - "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", - "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", - "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", - "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", - "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", - "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", - "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", - "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", - "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." + "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", + "Tools without native savings ledgers remain unavailable, not zero.", + "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", + "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", + "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", + "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", + "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", + "No fresh Prometheus turn sample in the selected window; no three-way observation join." ], - "path": "evidence/receipts/native-returned-results-20260921.json" + "path": "evidence/receipts/codex-desktop-live-20260920.json" }, { - "id": "native-runtime-role-resolution-20260930", - "kind": "native_model_e2e", + "id": "native-session-defaults-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "omniroute", - "claude-code" + "codex", + "claude-code", + "ai-memory", + "context-mode", + "rtk", + "qmd" ], - "claim": "One host installed separately versioned OpenHands CLI1.16.0/SDK1.50.1 and DeepAgents0.7.21 candidates through native supported interfaces. CLI108 and final SDK184 unchanged upstream tests passed; DeepAgents361 passed with1 expected failure in its separate upstream-lock environment. Actual OmniRoute Sol-Max requests passed one OpenHands native LLM exact-output round-trip and bounded DeepAgents selected-skill/single-specialist research, saved-context repair and fresh-process SQLite continuation. All results are scoped, not a universal framework winner or global default promotion.", + "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", "limitations": [ - "CLI SDK1.21 Jinja cache hard-codes real user home; strict cache isolation remains held.", - "Final SDK native configuration/tests exercise skills/plugins/MCP/condenser interfaces; production MCP, full Conversation/condenser/provider execution and optional extensions are not qualified by them.", - "Original DeepAgents24-step attempt failed; one changed32-step saved-context repair passed. No arbitrary interrupted-tool replay, OS confinement or comparative winner is qualified.", - "Complete provider billing/backend identity and whole-task token savings remain unknown; cached/reasoning counters are subsets.", - "Native Claude Opus/Max peer timed out180s exit124 without a verdict; later peer turns reached account usage limits. Completed earlier reviews are preserved; no new acknowledgement/approval is claimed.", - "Original full output stays private with exact hashes; public excerpts replace private paths and omit raw conversations, marker values, credentials and flow identifiers.", - "Exact executed sources are archived. Initial whitespace/comment cleanup had identical ASTs; the current worker subsequently adopts native secret-aware serialization after CodeQL, verified by native fixture and fresh saved-state checks. No new provider run is claimed." + "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", + "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", + "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", + "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", + "Claude startup events join four starts to four completions but do not identify individual configured commands.", + "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", + "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." ], - "path": "evidence/receipts/native-runtime-role-resolution-20260930.json" + "path": "evidence/receipts/native-session-defaults-20260920.json" }, { - "id": "native-sandbox-network-20260920", - "path": "evidence/receipts/native-sandbox-network-20260920.json", + "id": "native-token-ci-local-20260920", "kind": "native_cli_e2e", "component_ids": [ - "sandbox-runtime" + "rtk", + "qmd", + "repomix", + "toon" ], - "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", + "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", "limitations": [ - "HTTP proxy path tested on this Linux/WSL host", - "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", - "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", - "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." - ] + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" + ], + "path": "evidence/receipts/native-token-ci-local-20260920.json" }, { - "id": "native-sdk-acceptance-20261002", + "id": "native-token-ci-github-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code" + "rtk", + "qmd", + "repomix", + "toon" ], - "claim": "Actual Claude SDK task failed its independent oracle despite successful protocol completion; a separate informed Codex SDK repair passed all four unchanged cases. Unchanged Claude and OpenHands default source suites passed within recorded skip, warning and environment limits.", + "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", "limitations": [ - "Two different model tasks and source-test suites have different evidence scopes; this is not a model-quality or token-efficiency comparison, global SOTA winner claim or full foundation closure.", - "Claude original useful-task acceptance remains FAILED. Codex passes only the four-case informed repair; its requested model/effort are bound, but resolved model/provider identity and billing cost were not returned.", - "Coordinator observed invocation, native exits and process samples. Independent reviewers checked retained source/artifact/outcome bindings without rerunning; hash equality alone is not execution provenance.", - "Public attachments are declared projections, exact resulting candidates and selected native output. Complete permitted streams remain private; raw conversations, auth/session metadata and personal paths are not published.", - "Claude default source suite has six skips, with five collection identities inferred from source/dependencies. OpenHands retains seven optional ToolShield skips, 12 xfails, 83 warnings, default stress/ACP-live exclusions and a preserved failed environment attempt; exact fetched model-map bytes were not retained.", - "OpenHands is supplemental source-test evidence, not a new adopted stack component. Its FACTS provider task remains unrun in this lane; Codex default source-suite execution remains with its separate owner.", - "Researcher/reviewer roles, resume/recovery, selected MCP, generation permission-negative tests, complete target lifecycle and target token routing remain open. Exact before/after process-name samples do not prove complete descendant cleanup.", - "Historical Claude task binding is CLI2.1.287. Current release2.1.288 reconciliation remains with the configuration owner and cannot retroactively change these captures." + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" ], - "path": "evidence/receipts/native-sdk-acceptance-20261002.json" + "path": "evidence/receipts/native-token-ci-github-20260920.json" }, { - "id": "native-sdk-role-mcp-followup-20261002", + "id": "native-tavily-cli-20260920", "kind": "native_cli_e2e", "component_ids": [ + "tavily-cli", + "codex", "claude-code" ], - "claim": "Retained Claude SDK evidence supports minimal inline MCP callback/terminal assertions with synthetic controls and one native deny-rule pair with a disarmed-rule control; the reviewer case completed without a discriminating control, and the researcher case is controlled for missing findings only. Prior researcher failures remain FAIL and complete role qualification remains incomplete.", + "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", "limitations": [ - "Retained independent case ACCEPT verdicts are observations, not qualified role acceptance. Reviewer negative grading has no discriminating control; the original researcher FAIL controls missing findings only, not wrong facts/citations or attribution.", - "Synthetic MCP0/1/1 controls discriminate callback presence and terminal success only. The separate native armed0/disarmed1 pair supports one actual deny-rule observation; definition visibility unknown, no can_use_tool callback configured.", - "Earlier query timestamps unknown; deny-pair UTC intervals captured. Counters retain separate scopes; interrupted whole-query usage/cost unknown. No billed-cost or efficiency claim.", - "Selected QMD/Serena, recovery, containment, complete lifecycle and whole-host qualification remain open; process samples are bounded and staging is not managed-upgrade acceptance.", - "Sanitized projections only; private original hashes, failed cases and corrections retained. The projection step ran no new provider/test/control execution and made no shared edits; registration in manifests/evidence.json is separate from that step." + "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", + "Claude global skill listing is not a Claude model-turn execution of every skill.", + "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", + "Search/Extract results do not independently establish their source claims or a complete research deliverable.", + "No native lifetime or exact provider-token savings counter is established.", + "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." ], - "path": "evidence/receipts/native-sdk-role-mcp-followup-20261002.json" + "path": "evidence/receipts/native-tavily-cli-20260920.json" }, { - "id": "native-sec-access-resolution-20260919", + "id": "native-nautilus-v2-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "nautilus-trader" ], - "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", + "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", "limitations": [ - "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", - "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", - "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", - "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", - "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", - "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", - "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", - "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." + "Release candidate, not production/live-capital acceptance.", + "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", + "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", + "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", + "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", + "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", + "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." ], - "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" + "path": "evidence/receipts/native-nautilus-v2-20260920.json" }, { - "id": "native-sec-new-host-20260924", - "kind": "native_cli_e2e", + "id": "native-harness-defaults-20260920", + "kind": "artifact_measurement", "component_ids": [ - "edgartools" + "codex", + "claude-code" ], - "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", + "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", "limitations": [ - "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", - "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", - "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", - "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", - "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", - "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", - "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." + "Saved instruction bytes are not proof that every future model decision will follow them.", + "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", + "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." ], - "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", - "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" + "path": "evidence/receipts/native-harness-defaults-20260920.json" }, { - "id": "native-security-identity-20260920", - "kind": "native_cli_e2e", + "id": "native-worker-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "alpaca-py", - "duckdb" + "claude-code" ], - "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", + "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", "limitations": [ - "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", - "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", - "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", - "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", - "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", - "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", - "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", - "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." + "One synthetic local fixture and one physical WSL host, not arbitrary application state.", + "Actual native child identities and paths remain private; hashes bind retained streams.", + "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", + "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", + "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", + "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", + "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." ], - "path": "blueprints/us-equities/identity-readiness/native-receipt.json" + "path": "evidence/receipts/native-worker-recovery-20260920.json" }, { - "id": "native-service-reboot-20260920", - "kind": "native_cli_e2e", + "id": "foundation-catalog-ui-20260920", + "kind": "artifact_measurement", "component_ids": [ - "dagu", - "systemd" + "agent-browser" ], - "claim": "A signed disposable Ubuntu guest automatically resumed the same native Dagu run after an orderly kernel reboot, preserved its checkpoint and produced one local effect. A dedicated read-only serial observer and independent journal review confirmed completion before postboot SSH; owned cleanup passed.", + "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", "limitations": [ - "One orderly disposable guest reboot with a synthetic workload; not a physical PC, power loss, production disaster recovery, provider recovery or broker acceptance.", - "The unchanged official Dagu retry tests are a selected upstream subset. The project planner, its original 12-test oracle and the guest experiment are local synthetic integration coverage.", - "Source, disk and process continuity cover this owned guest only; no distributed exactly-once or arbitrary external side-effect guarantee.", - "Public text projections replace owned home prefixes and synthetic UUIDs and normalize CRLF. Original artifact/stream hashes and explicit projection rules are retained; projected bytes are not labelled raw-byte-identical.", - "The full auth-free guest archive contains three hidden bookkeeping files omitted by loose-file artifact upload. Independent inspection used the intact archive.", - "Both prior failed attempts remain failures; retrospective successful workload records did not override their missing acceptance evidence.", - "No model was called and no provider or lifetime token-saving measurement was made." + "Source pin/publication URLs pending parent final source commit and regeneration.", + "No provider/broker execution or broad regression rerun performed.", + "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." ], - "path": "evidence/receipts/native-service-reboot-20260920.json" + "path": "evidence/receipts/foundation-catalog-ui-20260920.json" }, { - "id": "native-session-defaults-20260920", + "id": "native-worker-containment-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "ai-memory", - "context-mode", - "rtk", - "qmd" + "systemd", + "claude-code" ], - "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", + "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", "limitations": [ - "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", - "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", - "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", - "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", - "Claude startup events join four starts to four completions but do not identify individual configured commands.", - "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", - "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." + "Deterministic cgroup proof is not successful native child crash/resume acceptance.", + "Earlier same-child continuation still required explicit direct descendant cleanup.", + "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." ], - "path": "evidence/receipts/native-session-defaults-20260920.json" + "path": "evidence/receipts/native-worker-containment-20260920.json" }, { - "id": "native-simulation-research-dashboard-20260919", + "id": "native-nautilus-ci-20260920", "kind": "native_cli_e2e", "component_ids": [ - "grafana", - "loki" + "nautilus-trader" ], - "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", + "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", "limitations": [ - "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", - "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", - "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", - "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", - "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", - "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", - "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." + "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", + "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", + "Network namespace and available-interface observations are not measured counts of attempted external transports." ], - "path": "blueprints/us-equities/simulation-research/receipt.json" + "path": "evidence/receipts/native-nautilus-ci-20260920.json" }, { - "id": "native-tavily-cli-20260920", + "id": "native-catalog-retrieval-20260920", "kind": "native_cli_e2e", "component_ids": [ - "tavily-cli", - "codex", - "claude-code" + "qmd" ], - "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", + "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", "limitations": [ - "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", - "Claude global skill listing is not a Claude model-turn execution of every skill.", - "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", - "Search/Extract results do not independently establish their source claims or a complete research deliverable.", - "No native lifetime or exact provider-token savings counter is established.", - "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." + "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", + "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", + "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", + "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." ], - "path": "evidence/receipts/native-tavily-cli-20260920.json" + "path": "evidence/receipts/native-catalog-retrieval-20260920.json" }, { "id": "native-tavily-session-20260920", @@ -2815,127 +2357,60 @@ "path": "evidence/receipts/native-tavily-session-20260920.json" }, { - "id": "native-terminal-profiles-20260920", - "kind": "native_cli_e2e", + "id": "native-worker-cgroup-20260920", + "kind": "native_model_e2e", "component_ids": [ - "codex", "claude-code", - "qdrant", - "vllm" - ], - "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", - "limitations": [ - "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", - "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", - "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", - "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", - "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." - ], - "path": "evidence/receipts/native-terminal-profiles-20260920.json" - }, - { - "id": "native-token-ci-github-20260920", - "kind": "native_cli_e2e", - "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "systemd" ], - "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", + "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", + "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", + "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", + "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", + "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." ], - "path": "evidence/receipts/native-token-ci-github-20260920.json" + "path": "evidence/receipts/native-worker-cgroup-20260920.json" }, { - "id": "native-token-ci-local-20260920", + "id": "native-service-reboot-20260920", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "dagu", + "systemd" ], - "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", + "claim": "A signed disposable Ubuntu guest automatically resumed the same native Dagu run after an orderly kernel reboot, preserved its checkpoint and produced one local effect. A dedicated read-only serial observer and independent journal review confirmed completion before postboot SSH; owned cleanup passed.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "One orderly disposable guest reboot with a synthetic workload; not a physical PC, power loss, production disaster recovery, provider recovery or broker acceptance.", + "The unchanged official Dagu retry tests are a selected upstream subset. The project planner, its original 12-test oracle and the guest experiment are local synthetic integration coverage.", + "Source, disk and process continuity cover this owned guest only; no distributed exactly-once or arbitrary external side-effect guarantee.", + "Public text projections replace owned home prefixes and synthetic UUIDs and normalize CRLF. Original artifact/stream hashes and explicit projection rules are retained; projected bytes are not labelled raw-byte-identical.", + "The full auth-free guest archive contains three hidden bookkeeping files omitted by loose-file artifact upload. Independent inspection used the intact archive.", + "Both prior failed attempts remain failures; retrospective successful workload records did not override their missing acceptance evidence.", + "No model was called and no provider or lifetime token-saving measurement was made." ], - "path": "evidence/receipts/native-token-ci-local-20260920.json" + "path": "evidence/receipts/native-service-reboot-20260920.json" }, { - "id": "native-token-clean-prefix-20260920", + "id": "native-offhost-app-state-20260920", "kind": "native_cli_e2e", "component_ids": [ - "headroom", - "jcodemunch-mcp" - ], - "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", - "limitations": [ - "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", - "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", - "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", - "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", - "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", - "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", - "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", - "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." - ], - "path": "evidence/receipts/native-token-clean-prefix-20260920.json" - }, - { - "id": "native-token-focus-clients-20260920", - "path": "evidence/receipts/native-token-focus-clients-20260920.json", - "kind": "native_model_e2e", - "component_ids": [ - "codex", - "claude-code", - "context-mode", - "jcodemunch-mcp" - ], - "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", - "limitations": [ - "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", - "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", - "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", - "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", - "Raw private prompts, client streams, account identifiers and host paths are not published." - ] - }, - { - "id": "native-token-stack-final-20260920", - "kind": "native_model_e2e", - "component_ids": [ - "claude-code", - "codex", - "context-mode", - "jcodemunch-mcp", - "headroom", - "rtk", - "opentelemetry-collector-contrib", - "loki", - "prometheus" + "ai-memory", + "qdrant", + "restic" ], - "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", + "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", "limitations": [ - "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", - "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", - "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", - "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", - "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", - "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", - "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", - "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." + "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", + "Sequential native application snapshots do not establish an atomic cross-application transaction.", + "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", + "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", + "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", + "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", + "No model/provider/broker calls or causal token/cost savings measurement." ], - "path": "evidence/receipts/native-token-stack-final-20260920.json" + "path": "evidence/receipts/native-offhost-app-state-20260920.json" }, { "id": "native-ultracode-20260921", @@ -2957,480 +2432,849 @@ "path": "evidence/receipts/native-ultracode-20260921.json" }, { - "id": "native-worker-cgroup-20260920", - "kind": "native_model_e2e", + "id": "native-dashboard-access-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "systemd" + "dagu", + "qdrant", + "agentsview", + "grafana", + "prometheus", + "ntfy", + "agent-browser", + "omniroute" ], - "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", + "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", "limitations": [ - "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", - "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", - "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", - "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", - "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." + "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", + "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", + "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", + "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", + "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", + "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", + "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." ], - "path": "evidence/receipts/native-worker-cgroup-20260920.json" + "path": "evidence/receipts/native-dashboard-access-20260921.json" }, { - "id": "native-worker-containment-20260920", + "id": "full-stack-convergence-20260921", "kind": "native_cli_e2e", "component_ids": [ - "systemd", - "claude-code" + "agent-browser", + "agentsview", + "ai-memory", + "ccusage", + "claude-code", + "codex", + "context-mode", + "dagu", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "loki", + "omniroute", + "openresearch", + "prometheus", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "toon", + "vllm", + "worktrunk" ], - "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", + "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", "limitations": [ - "Deterministic cgroup proof is not successful native child crash/resume acceptance.", - "Earlier same-child continuation still required explicit direct descendant cleanup.", - "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." + "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", + "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", + "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", + "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", + "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", + "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", + "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", + "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." ], - "path": "evidence/receipts/native-worker-containment-20260920.json" + "path": "evidence/receipts/full-stack-convergence-20260921.json" }, { - "id": "native-worker-recovery-20260920", - "kind": "native_model_e2e", + "id": "memory-landscape-20260921", + "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "codex", "claude-code" ], - "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", + "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", "limitations": [ - "One synthetic local fixture and one physical WSL host, not arbitrary application state.", - "Actual native child identities and paths remain private; hashes bind retained streams.", - "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", - "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", - "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", - "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", - "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." + "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", + "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", + "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", + "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", + "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", + "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", + "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", + "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", + "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." ], - "path": "evidence/receipts/native-worker-recovery-20260920.json" + "path": "evidence/receipts/memory-landscape-20260921.json" }, { - "id": "native-worker-supervision-20260919", - "path": "blueprints/us-equities/worker-supervision/receipt.json", + "id": "memory-landscape-lifecycle-20260921", "kind": "native_cli_e2e", "component_ids": [ - "systemd" + "ai-memory", + "socraticode", + "qdrant", + "vllm", + "serena", + "qmd", + "codex", + "claude-code" ], - "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", + "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", "limitations": [ - "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", - "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", - "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", - "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", - "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", - "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", - "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", - "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", - "Hashes bind retained evidence bytes; they do not independently attest the execution.", - "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", - "Configured resource limits were inspected, not saturation-tested." - ] + "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", + "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", + "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", + "Exact memory session/lifetime savings are not returned and remain null.", + "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." + ], + "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" }, { - "id": "native-workflow-graceful-recovery-20260921", + "id": "alpaca-paper-e2e-20260921", "kind": "native_cli_e2e", "component_ids": [ + "alpaca-py", "claude-code" ], - "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", + "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", "limitations": [ - "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", - "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", - "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", - "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." + "One operational smoke trial, not profitable strategy or continuous trading acceptance.", + "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", + "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." ], - "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" + "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" }, { - "id": "native-workflow-writing-comparison-20260921", + "id": "nautilus-equity-replay-20260921", "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "nautilus-trader" ], - "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", + "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", "limitations": [ - "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", - "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", - "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." + "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", + "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", + "SPY/LEAN corporate-action parity and historical universe availability remain separate." ], - "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" + "path": "evidence/receipts/nautilus-equity-replay-20260921.json" }, { - "id": "native-wsl-restic-synthetic-20260920", + "id": "foundation-convergence-20260921", + "kind": "native_model_e2e", + "component_ids": [ + "codex", + "claude-code", + "context-mode", + "rtk", + "headroom", + "toon" + ], + "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", + "limitations": [ + "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", + "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", + "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", + "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", + "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." + ], + "path": "evidence/receipts/foundation-convergence-20260921.json" + }, + { + "id": "native-progress-capacity-20260921", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "loki", + "dagu" ], - "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", + "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", "limitations": [ - "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", - "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", - "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", - "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", - "No token, storage-efficiency or backup performance claim.", - "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", - "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", - "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", - "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", - "Ten offline oracle/guard tests are distinct from the actual native restic commands." + "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", + "No client restart, service restart or physical reboot was performed or verified.", + "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", + "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", + "No live provider inference, account change, new dependency or upstream version change for this repair." ], - "path": "blueprints/convergence-practice/wsl-restore/receipt.json" + "path": "observability/grand-dashboard/capacity-recovery-20260921.json" }, { - "id": "nautilus-equity-replay-20260921", + "id": "claude-upstream-checks-20260921", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "codex", + "codex-for-claude", + "context-mode", + "dagu", + "difftastic", + "gitleaks", + "grafana", + "headroom", + "jcodemunch-mcp", + "lean", + "loki", + "markitdown", + "mcporter", + "nautilus-trader", + "openresearch", + "opentelemetry-collector-contrib", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", + "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", "limitations": [ - "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", - "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", - "SPY/LEAN corporate-action parity and historical universe availability remain separate." + "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", + "Complete originals remain private; public excerpts are bounded and sanitized.", + "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." ], - "path": "evidence/receipts/nautilus-equity-replay-20260921.json" + "path": "evidence/receipts/claude-upstream-checks-20260921.json" }, { - "id": "new-wsl-embedding-model-20261002", + "id": "foundation-rd-20260921", "kind": "native_model_e2e", "component_ids": [ - "huggingface-hub-native" + "claude-code", + "codex", + "codex-for-claude", + "qmd" ], - "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02 and 2026-10-03, with the generation model swift-iq3s-s2o-64k resident, the preregistered comparison for the new WSL's embedding model gave the slot to E1: qwen3-embedding:0.6b (Q8_0, Ollama library manifest ac6da0dfba84a81fdbfbaf330198c33cd77c4cdfc53e8bc50eb581914a15621d) on Ollama 0.35.0 as qwen3-embedding-8k (num_ctx 8192). On MTEB 2.22.1's CQADupstackUnixRetrieval (test split: 47,382 documents, 1,072 queries) its nDCG@10 was 0.49827 against 0.41394 for EmbeddingGemma on the same server: E1 minus E2 0.084331, 95% paired bootstrap interval over queries 0.067738 to 0.100656 (10,000 resamples, seed 20260927). Nemotron-3-Embed-1B, which needs a second model server, scored 0.5014; E3 minus E1 was 0.003124 with an interval of -0.012194 to 0.018141 that includes zero, so by the second-server rule it does not take the slot. WeMM-Embedding-2B passed the fit gate but ran out of GPU memory in its full run and is out. The reranking condition was not run.", + "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", "limitations": [ - "One public retrieval task (CQADupstack Unix: English technical questions from a StackExchange forum), one workstation, one throwaway distribution, one run per arm: a local integration check, not an acceptance on the destination distribution.", - "Nemotron's tie holds for this task only; multilingual retrieval, longer documents and other domains were not measured.", - "The two Ollama arms are GGUF conversions served by the one model server; a difference from the reference weights is a difference of the systems, not of the models alone.", - "E1's and E2's prompts are MTEB's reference prompts as observed with a stub before the runs (amendment 4a): E1 sends the Qwen3 instruction before queries and nothing before documents; E2 sends EmbeddingGemma's query and document prompts.", - "Gate F reads the model server's listing: in window pb2 the card's memory in use fell between steps while the server kept listing the generation model entirely on the GPU, consistent with the Windows driver moving part of it off the card, so E3 passing gate F does not show co-residency. In window pb1 the readings matched the resident models, so E1's co-residency with the generation model is supported by both readings.", - "E4's first error text was lost: after its evaluation failed out of memory, the script's memory query raised the same sticky CUDA error and the outer handler replaced the text; the outcome is not in doubt, because only the evaluation's handler sets out_of_memory.", - "The reranking condition was not run: no installed retrieval owner can call an external reranker (QMD reranks in-process with its bundled model), and zerank-2 (7.49 GiB of weights) cannot be resident beside the generation model on this card.", - "Recorded, not deciding: evaluation time E1 1,166 s, E2 771 s, E3 460 s (E3 in-process, not comparable with the Ollama arms); resident sizes E1 2,857,191,341 bytes and E2 681,417,113 bytes.", - "manifests/stack.json has no Ollama or MTEB component; component_ids name huggingface-hub-native, the native route for the revision-pinned snapshots of E3 and E4, which the measurement downloaded through the huggingface_hub library at MTEB's registered revisions (its version is in the throwaway's freeze list, which was not retained).", - "The 31 MB prediction files and the run records stay private and are listed by sha256 in files.json; the published per-query nDCG@10 files reproduce the decision statistic.", - "With a server-wide context of 64,000 the embedder loaded at its full context and took 5.78 GB (Part A, A1b); the measured system sets the context per model (qwen3-embedding-8k, 8,192 tokens), never server-wide." + "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", + "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", + "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", + "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", + "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." ], - "path": "evidence/artifacts/new-wsl-local-models-20261002/part-b-receipt.json" + "path": "evidence/receipts/foundation-rd-20260921.json" }, { - "id": "new-wsl-local-generation-model-20261002", + "id": "claude-foundation-finalization-20260921", "kind": "native_model_e2e", "component_ids": [ + "claude-code", "codex", - "claude-code" + "agent-browser", + "repomix" ], - "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02, the preregistered comparison for the new WSL's local generation model gave the slot to S2o: Swift-1.5-Qwen3.8-27B IQ3_S (ukisai/Swift-1.5-Qwen3.8-27B-GSQ-RCO-GGUF at revision d74895bbe5db4bec1e0024e7cc87d59c02d7631a, file sha256 1333c6ea70ef348d4ac6d62732772e8ad6571ac5b3754c14ed54f1a0d904a786, 11,771,546,912 bytes) on Ollama 0.35.0 as swift-iq3s-s2o-64k (context 64,000). On the same 100 BFCL simple_python cases (inspect-evals 0.23.0 on Inspect AI 0.3.273) through the server's chat and responses surfaces, its first-pass valid tool calls were 200 of 200 against 175 of 200 for the control gpt-oss:20b: difference 0.125, 95% paired bootstrap interval over cases 0.065 to 0.19 (10,000 resamples, seed 20260927), not a tie. Both arms were entirely on the GPU with the embedder resident in the order of use, and both passed 10 of 10 client tasks (Codex 0.160.0 and Claude Code 2.1.287). Bonsai PTQ1_0, Bonsai PQ2_0 and Swift on PrismML's llama.cpp server failed the function gate (0 of 3 runs each: the server skips the Codex client's namespace tool type), and qwen3.8:27b was not entirely on the GPU at 64,000 tokens.", + "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", "limitations": [ - "One workstation, one throwaway distribution, one run per case and arm: a local integration check of the systems named, not an acceptance on the destination distribution.", - "First-pass tool-call validity on 100 simple public cases (BFCL simple_python) through two interfaces; nothing about coding quality, long tasks, throughput under concurrent requests or behaviour above 64,000 tokens.", - "The Anthropic-style messages surface was not evaluated through the package (Inspect AI 0.3.273 cannot read this thinking model's answer); it was exercised only by Claude Code in the client tasks, which both arms passed.", - "S2o was slower in these runs: 292 and 303 seconds for 100 cases on chat and responses against 100 and 139 for the control, and 43.1 against 108.9 output tokens per second on single long prompts that were not run as a speed comparison.", - "S2o leaves less GPU memory free: 21,579 of 24,564 MiB in use with the embedder resident while Windows applications held about 2,600 MiB; earlier the same day they held up to about 5,900 MiB, at which the same load would leave under one GB. Co-residency on a busier desktop and on the destination distribution is not measured.", - "The Ollama import is this measurement's system, not a route the publisher documents: the library qwen3.8:27b model's renderer, parser, parameters, template and licence lines with the Swift file as FROM. The publisher's own route (llama.cpp's server, here PrismML's fork) failed the function gate for a reason that lies in that server. The quantization's card says its quality tests used a 512-token context.", - "The arm that took the slot was added by the preregistration's extension (amendment 3) after the owner asked for the newest releases; the deciding measurement as the critic named it had two arms (qwen3.8:27b and gpt-oss:20b), the earlier result for gpt-oss:20b is kept as a historical result, and gpt-oss:20b ran A2 as the control under the same rules.", - "Three deviations are recorded (a void first window, the Codex client's model name with its tag, a reused label); none changed a case, a limit, the metric or the rule, and none was decided on an outcome.", - "Recorded, not deciding: the package's own score (S2o 97 and 95 of 100, the control 83 and 83) and the client tasks (10 of 10 for each arm).", - "manifests/stack.json has no Ollama, Inspect AI or PrismML llama.cpp component, so component_ids name the two clients that ran the client tasks (Codex also ran the function gate); they ran at Codex 0.160.0 and Claude Code 2.1.287, not at the stack's recorded 0.159.3 and 2.1.284.", - "Raw model outputs (the Inspect logs, the client run records, the server logs) stay private and are listed by sha256 in files.json; the published per-case validity files carry case ids, verdicts, reasons and timings, and the decision statistic reproduces from them.", - "The Swift file's licence is the publisher's own (Swift Open License v1.0, with the original Qwen parts under Apache-2.0); the Modelfile's LICENSE block is the library model's Apache-2.0 text. Recorded, not judged." + "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", + "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", + "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", + "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." ], - "path": "evidence/artifacts/new-wsl-local-models-20261002/part-a-receipt.json" + "path": "evidence/receipts/claude-foundation-finalization-20260921.json" }, { - "id": "nextjs-1638-qualification-20261001", + "id": "adaptive-paper-practice-20260921", "kind": "native_cli_e2e", "component_ids": [ - "nextjs" + "nautilus-trader", + "alpaca-py", + "claude-code", + "codex" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-10-01, the application-delivery recipe was qualified at Next.js 16.3.8 (tag v16.3.8, commit b0fad0d45eb4c4430fda5eeeb442e8a5af08a5f6, released 2026-09-30T16:13:46Z), whose release notes list seven security advisories, the most severe GHSA-cjq9-62q9-8jv4 (high: server-side request forgery in Image Optimization). The two-file patch (package.json and pnpm-lock.yaml, sha256 570ac44d237b6641a5087fe57b079aaf61dcb781b6496a721b0224dd17ea60d0) changes next, @next/env and the eight @next/swc-* lock entries, every other lock entry byte-identical. With Node v24.21.0 and pnpm 12.4.2 the frozen install, the peer check, the typecheck and the production build each exited 0 (recorded at 16:07:49Z), after a first frozen install at 12:13Z exited 1 with ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION for the ten packages published on 2026-09-30; no exclusion or policy change was made.", + "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", "limitations": [ - "Bounded recipe checks only: make verify with its PostgreSQL, API and browser stages was not run, so the 2026-09-20 receipts still qualify 16.3.5, not 16.3.6 or 16.3.8.", - "The pnpm store, node_modules and build cache were warm from the earlier attempt; no cold-store install is claimed.", - "This recipe's exposure to the seven advisories was not established; the move removes the vulnerable versions from its lock.", - "Labels 15 to 17 are the version prints of Node and pnpm and a git diff check; they are metadata, not acceptance.", - "No new-host install ran: that is unit U10 on the new distribution. Provider usage of the builder is unknown." + "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", + "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", + "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", + "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." ], - "path": "evidence/receipts/nextjs-1638-qualification-20261001.json" + "path": "evidence/receipts/adaptive-paper-practice-20260921.json" }, { - "id": "notification-types-20260929", + "id": "broad-universe-research-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "alpaca-py", + "duckdb", + "claude-code", + "codex" + ], + "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", + "limitations": [ + "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", + "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", + "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", + "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", + "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." + ], + "path": "evidence/receipts/broad-universe-research-20260921.json" + }, + { + "id": "ultracode-token-routing-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code", + "codex" + ], + "claim": "Claude Code 2.1.278 native Workflow stages re-routed to lean project agents cut the provider-returned first-request prompt from 42,396 tokens (default child) to 12,164 (named MCP grants behind ToolSearch) and 8,048 (source-scout) on one identical task; eight native review runs, two readiness audits, a builder run and probes plus one Codex cross-family review are retained as sanitized usage receipts; Haiku was not routed after an Opus-verified 9/14 versus 14/14 extraction trial; workflowSizeGuideline moved from small to unrestricted with a task sizing rule.", + "limitations": [ + "First-prompt figures come from one tiny task on one host and model; they bound a fixed spawn cost, not a savings rate.", + "The Haiku judgment rests on one packet and one Opus verifier.", + "The strict accepted envelope status was never returned in the deploying project; the commit gate was fix-and-commit after each review's findings were resolved.", + "Local suites are stubbed or synthetic; provider figures reach the receipts only as sanitized child-usage.mjs output, with raw transcripts outside Git.", + "Codex thread and turn identifiers were redacted from the cross-review record." + ], + "path": "evidence/receipts/ultracode-token-routing-20260921.json" + }, + { + "id": "portable-claude-native-qualification-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code", + "codex", + "prometheus" + ], + "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", + "limitations": [ + "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", + "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", + "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", + "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", + "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." + ], + "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" + }, + { + "id": "sota-convergence-20260922", + "kind": "historical_inventory", + "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "apple-container", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codebase-memory-mcp", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "fastapi", + "gitleaks", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "llama-cpp", + "loki", + "markitdown", + "mcp-inspector", + "mcporter", + "nextjs", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "playwright-cli", + "playwright-test", + "poppler", + "postgresql", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "react", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shanraisshan/claude-code-best-practice", + "shellcheck", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" + ], + "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", + "limitations": [ + "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", + "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", + "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", + "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." + ], + "path": "evidence/receipts/sota-convergence-20260922.json" + }, + { + "id": "claude-repository-evidence-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "alpaca-py", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "duckdb", + "edgartools", + "gitleaks", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "lean", + "loki", + "markitdown", + "mcp-inspector", + "mcporter", + "nautilus-trader", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "pandas", + "playwright-cli", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shellcheck", + "skfolio", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" + ], + "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", + "limitations": [ + "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", + "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", + "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", + "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", + "Superseded observations, including the author's own probe and invocation errors, remain recorded." + ], + "path": "evidence/receipts/claude-repository-evidence-20260921.json" + }, + { + "id": "github-automation-newpc-20260922", "kind": "native_cli_e2e", "component_ids": [ + "codex", "claude-code" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", + "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", "limitations": [ - "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", - "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", - "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", - "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", - "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", - "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", - "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", - "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", - "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", + "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", + "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", + "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", + "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", + "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." + ], + "path": "evidence/receipts/github-automation-newpc-20260922.json" + }, + { + "id": "exchange-calendars-native-check-20260922", + "kind": "native_cli_e2e", + "component_ids": [ + "exchange-calendars" + ], + "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", + "limitations": [ + "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", + "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", + "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", + "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", + "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." + ], + "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" + }, + { + "id": "adoption-macos-hosted-smoke-20260922", + "kind": "native_cli_e2e", + "component_ids": [ + "codex", + "claude-code", + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" + ], + "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", + "limitations": [ + "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", + "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", + "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", + "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", + "socraticode is the profile's documented unpinned skip and was not installed." + ], + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" + }, + { + "id": "catalog-freshness-20260923", + "kind": "upstream_provenance", + "component_ids": [ + "claude-code", + "codex", + "llama-cpp", + "mcp-inspector", + "openresearch", + "skfolio" + ], + "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", + "limitations": [ + "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", + "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", + "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", + "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." + ], + "path": "evidence/receipts/catalog-freshness-20260923.json" + }, + { + "id": "adoption-macos-hosted-smoke-20260923", + "kind": "native_cli_e2e", + "component_ids": [ + "codex", + "claude-code", + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" ], - "path": "evidence/receipts/notification-types-20260929.json" + "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", + "limitations": [ + "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", + "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", + "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", + "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." + ], + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" }, { - "id": "ns2604-e2e-20261004", - "kind": "native_model_e2e", + "id": "wsl-retrieval-20260920", + "kind": "historical_inventory", "component_ids": [ - "claude-code", - "codex", - "omniroute" + "ast-grep", + "qmd" ], - "claim": "The historical 2026-10-04 foundation E2E covered 15 units and 80 slots through native executor observations, independent model review and 22 adjudications. Final labels are READY 18, PARTIAL 31, FAIL 2, BY_DESIGN 12 and INTERIM 17, with zero unjudged slots. Readiness is (18 + 12) / 80 = 37.5%, rounded half up to 38%; all 22 executor/reviewer disagreements were adjudicated, with 14 keeping the reviewer's status and 8 taking the executor's. This publication independently checks and sanitizes the retained status chains; it does not repeat host or provider execution. The adjudication prompt as run, claude-opus-5-5 at max effort with evidence-reviewer run records and timestamps, and the separate 33-slot fix list are retained.", + "claim": "Incomplete historical WSL fixture reference: selected receipts report 22 source checks/six commands and 70 QMD lexical checks/17 commands. Offline byte and result consistency can be checked, but missing command argv/cwd, unrecovered raw logs and unsupported historical QMD installation prevent native E2E or adoption acceptance.", "limitations": [ - "Host state is as of 2026-10-04 19:10\u201320:10Z only; later adjudication and source merge timestamp 2026-10-04T20:26:16Z do not extend that observation window. Publication and repair perform artifact inspection and structural checks in the owned sandbox; they do not repeat native host probes.", - "Fixes are pending. The 33 PARTIAL/FAIL slots after adjudication are not accepted as ready: 25 repository-plan and 8 host fixes (evidence/artifacts/ns2604-e2e-20261004/fixes.json). Four INTERIM token slots (context-supply, command-output, output-compression, code-index) are held for PR #684, which has not merged. The two open token slots have separate fixes: ccusage (FAIL, plan) and statusline (PARTIAL, host).", - "This is not an upstream benchmark. Native executor observations, independent model judgments and adjudication are separate from upstream tests, structural checks, independent host replication and measured quality or token improvement.", - "The 17 INTERIM slots are held by design. They remain in the denominator and contribute zero to the readiness numerator; the 12 BY_DESIGN slots are intentional dispositions rather than proof that their tools executed.", - "Adjudication: claude-opus-5-5 at effort max (evidence-reviewer), prompt template as run in evidence/artifacts/ns2604-e2e-20261004/adjudication-prompt.md. Run wf_8bf450a9-d1e (17 agents) started 2026-10-04T20:06:45Z and completed 2026-10-04T20:20:30Z; run wf_cdbf70a0-02c (5 agents) started 2026-10-04T20:08:29Z and completed 2026-10-04T20:19:31Z.", - "Historical source command excerpts and raw conversations remain private. Public reasons are bounded to 60 words, fixes preserve the merge's 900-character bound before sanitization, and citations are limited to four per slot. Hashes establish byte identity, not success or adequacy of every native acceptance claim.", - "Reviewer records report the requested gateway model cx/gpt-6.1-sol-max and max effort; no resolved backend model identity is inferred. Independent model review is review of retained evidence, not independent execution on the host.", - "The coordinator registers all eight published files in manifests/evidence.json in the PR's final registry-only commit, and full repository validation passes at that head. Per-file scans and local receipt tests are structural evidence only." + "Historical reference only; not live verification, native E2E acceptance or adoption evidence. No new host/native/client acceptance follows from these artifacts.", + "Historical command facts omit argv and cwd. Exact raw-log locations are unavailable; no invocation was reconstructed or represented as observed.", + "The unchanged historical install receipt records npm --ignore-scripts --omit=optional. Future installation must use the current supported recipe with NODE_LLAMA_CPP_SKIP_DOWNLOAD=true and required dependency scripts enabled.", + "Both executed runner versions and the initial URI-checker failure are retained byte-for-byte. The future runner adds command provenance capture without changing past evidence.", + "Receipt-reported 22/70 checks and 6/17 commands describe selected local/synthetic fixtures. Five failed-attempt commands remain separate; no upstream-suite, semantic RAG, production, client or service acceptance.", + "Source currency remains September 20; offline completion and review do not refresh releases or native execution. Whole-task provider usage is unknown and no savings claim is made." ], - "path": "evidence/receipts/ns2604-e2e-20261004.json" + "path": "evidence/receipts/wsl-retrieval-20260920.json" }, { - "id": "omniroute-3851-npm-qualification-20260930", - "kind": "compatibility_attempt", + "id": "gitleaks-macos-memory-bound-20260924", + "kind": "native_cli_e2e", "component_ids": [ - "omniroute" + "gitleaks" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", + "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", "limitations": [ - "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", - "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", - "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", - "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", - "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", - "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", - "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", - "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", - "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." + "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", + "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", + "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", + "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", + "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", + "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", + "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." ], - "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" + "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" }, { - "id": "omniroute-claude-callsite-20260930", - "kind": "native_model_e2e", + "id": "env-freshness-wsl-ubuntu-main-20260924", + "kind": "artifact_measurement", "component_ids": [ - "claude-code", - "codex", - "omniroute" + "nautilus-trader", + "alpaca-py", + "duckdb", + "pandas", + "edgartools", + "exchange-calendars", + "vllm" ], - "claim": "A native Claude Opus5.5/Max coordinator discovered and read the project dispatcher, invoked the official Sol-Max Codex SDK worker through native Bash, and the retained original shows one unchanged fixture test with exit0.", + "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", "limitations": [ - "One bounded read-only callsite and existing arithmetic oracle; no universal quality or SDK winner claim.", - "Coordinator tool scope was Bash/Read/Skill for this acceptance; other coordinator tools and optional MCP services are not qualified.", - "Native Claude and external Codex SDK usage remain separate scopes; parent list-price cost is not complete provider billing.", - "The separate Claude SDK Devin bridge remains failed/unqualified; this native Claude-account coordinator run does not promote it.", - "Provider backend identity, overall task usage, failed/interrupted calls, remote cancellation and token savings remain unverified." + "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", + "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", + "One host; each PC publishes its own report under the same schema.", + "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." ], - "path": "evidence/receipts/omniroute-claude-callsite-20260930.json" + "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" }, { - "id": "omniroute-runtime-enhancements-20260930", + "id": "vllm-030-switch-20260925", "kind": "native_model_e2e", "component_ids": [ - "codex", - "omniroute", - "context-mode", - "serena", - "dagu" + "vllm", + "socraticode" ], - "claim": "A scoped native Codex SDK Sol-Max worker completed skill use, selected Context Mode/Serena MCP calls, one Astra-Max native judge and an unchanged oracle through OmniRoute in a successful bounded Dagu graph.", + "claim": "vLLM 0.30.0 now serves the production Nemotron-3-Embed-1B-BF16 embeddings on the NativeStack WSL2 RTX 4090 host. Qualified first on an owned instance against production 0.25.0 (identical model files, flags and route), then switched by a systemd drop-in that changes only the binary path; the live service returned identical embeddings and identical top-10 code-index results after the switch.", "limitations": [ - "One unchanged arithmetic fixture and bounded integration; no universal highest-quality model, framework or SDK ranking.", - "169 enabled skills were visible through native discovery. This run read using-superpowers and exercised three selected MCP calls; it does not qualify every installed skill, tool, language server, plugin or hook.", - "Native hook support and live web search are configured, but their execution is unmeasured here. No scheduler, schedule, hook or global account configuration was installed by this kit.", - "Native parent and child cumulative usage are separate scopes. Cached input and reasoning are subsets; observer response counters corroborate the same usage and must not be added. Failed/interrupted and complete provider usage, billing and token savings remain unknown.", - "Each observed completed stream also has an unclassified flow_error record. Native results completed; transport is not described as error-free, and requested model/provider labels are not backend identity attestation.", - "The separate Claude SDK Devin bridge retains its failed/unqualified status. Earlier native Claude-to-SDK acceptance is a historical separate callsite, not a rerun against this source.", - "The follow-up native Claude cooperation session was stopped after no confirmed SendMessage/final packet; no peer approval or new owner-contact count is claimed.", - "The isolated kit is a scoped private worker configuration. Live owners retain shared worker policy, host-wide catalogs/defaults and dashboard checkpoint ownership." + "One host (NativeStack, RTX 4090, WSL2 Windows driver 616.64) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", + "Retrieval equality covers 8 gate texts and 5 live code-index queries (top-10), not an aggregate retrieval-quality benchmark.", + "0.30.0 relies on its pinned-memory fallback for WSL (PR #56908); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", + "The 0.25.0 prefix is kept for rollback; the base unit still names it and only the drop-in points at 0.30.0." ], - "path": "evidence/receipts/omniroute-runtime-enhancements-20260930.json" + "path": "evidence/receipts/vllm-030-switch-20260925.json" }, { - "id": "omniroute-runtime-workers-20260930", - "kind": "native_model_e2e", + "id": "rtk-050-qualification-20260925", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "omniroute" + "rtk" ], - "claim": "The retained official Codex SDK Sol-Max worker passed one upstream coding fixture, native resume and fresh recovery through the selected OmniRoute Responses lane. Interrupted usage and Claude bridge qualification remain unknown/failed.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", "limitations": [ - "One arithmetic fixture and lifecycle acceptance; no universal SDK or model quality ranking.", - "Actual provider trials invoked the SDK from root, rather than through a Claude coordinator. Native project dispatch skill is supplied and structurally checked; its coordinator invocation remains unmeasured.", - "Native Codex SDK remains the incumbent. The separate frozen three-arm SDK gate remains unresolved.", - "Native gateway requested/returned model labels are not backend attestation.", - "All 136 skills are available in the owned project, with two bodies exercised; full role coverage and optional service acceptance remain incomplete.", - "Native Codex repeated in-process fixtures emit stdout/stderr ResourceWarnings; standalone per-invocation child exit is qualified separately.", - "Complete provider usage, spending, remote cancellation and token savings remain unknown.", - "Public record is sanitized selected actual return fields and independent observations; original private returned artifacts remain outside the checkout." + "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", + "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", + "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", + "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", + "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", + "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", + "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." ], - "path": "evidence/receipts/omniroute-runtime-workers-20260930.json" + "path": "evidence/receipts/rtk-050-qualification-20260925.json" }, { - "id": "omniroute-sdk-worker-0160-20261003", - "kind": "native_model_e2e", + "id": "markitdown-018-qualification-20260925", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "omniroute", - "context-mode" + "markitdown" ], - "claim": "The SDK 0.160.0 B3 review candidate addresses all five PR #628 bot findings and passed twelve of twelve twenty-five-test native loopback fixture invocations, 26 local Claude SDK tests, six observer tests and final Ruff checks. Each reported bug has a retained failing-before-repair command and a passing counterpart. B2 metadata preflight and the earlier builder/coordinator live observations remain historical; no B3 live model task ran. Writing dispatch, live keyed-shell/search qualification and backend effort remain unobserved.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", "limitations": [ - "Authored loopback SSE fixtures, local Claude SDK tests and observer tests are integration/synthetic checks, not unchanged upstream suites or provider-model trials.", - "The pre-B2 builder live task returned the correct data while two native shell attempts failed in its enclosing Codex sandbox and a Context Mode call failed with Transport closed. A separate coordinator, outside a nested Codex sandbox, observed read-only shell success at that candidate. The repaired bytes have no new live-model run; error-free MCP transport and writing (workspace-write) dispatch remain unqualified at 0.160.0.", - "Plugin disabling is the selected native feature gate. Tests observe direct app-server PID termination and absence of clone directories; descendant cleanup and global non-loopback egress are not observed.", - "Metadata preflight submits no inference. No skill was installed in the new private home and no --require-skill was used; inherited/project catalog discovery does not qualify every skill or tool.", - "Requested model/Max effort and live catalog entry are observed; gateway-forwarded effort, backend model identity, complete provider usage, cost, remote cancellation and token savings remain unknown.", - "September 30 receipts and original observations remain historical. This refresh does not rerun the historical coding oracle, Claude callsite, Astra judge, Dagu graph or unchanged upstream SDK suite.", - "Exactly pinned private SDK preflight/PID attributes require review on every pin move. Stable Python SDK and experimental, unsupported-for-production app-server are separate support boundaries.", - "Expected ResourceWarning messages and argparse rejection output remain in private fixture logs. Long-lived SDK pools, alternative approval modes, alternate binary, credential-variable path, workspace-write live execution and scheduled Dagu acceptance remain unqualified.", - "Initial Ruff failure exits are retained from native task returns, but exact full output/timing was not saved. Repository validators prove declared consistency, not the truth of provider or historical claims.", - "Earlier checkout and alternate-index validation failures are retained as before-B2 attempts. The coordinator force-added the project skill to the real index; B2 acceptance uses that actual checkout index. Historical source archive acceptance does not replace current checkout acceptance.", - "If the cleanup bound expires during retained startup or close, cleanup_status is unresolved and the CLI exits nonzero. Continued deferred cleanup is observed only while the embedding event loop remains running; no post-bound standalone cleanup or remote termination guarantee is made.", - "B3 repairs have local regression/configuration acceptance only: no live model tasks, keyed gateway shell trial, standalone search endpoint trial or native Claude connect fault injection. The native SDK retains its own shielded cleanup/transport bounds; wrapper grace does not override them." + "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", + "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", + "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", + "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", + "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", + "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", + "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", + "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." ], - "path": "evidence/receipts/omniroute-sdk-worker-0160-20261003.json" + "path": "evidence/receipts/markitdown-018-qualification-20260925.json" }, { - "id": "openresearch-0215-qualification-20261003", + "id": "ai-memory-240-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "openresearch" + "ai-memory" ], - "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", "limitations": [ - "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", - "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", + "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", + "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", + "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", + "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", + "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", + "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." ], - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" }, { - "id": "otelcol-contrib-0162-qualification-20261003", + "id": "mcporter-0141-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "opentelemetry-collector-contrib" + "mcporter" ], - "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", "limitations": [ - "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", - "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", + "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", + "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", + "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", + "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", + "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." ], - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" }, { - "id": "playwright-cli-0122-qualification-20261003", + "id": "ai-memory-241-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "playwright-cli" + "ai-memory" ], - "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", "limitations": [ - "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", - "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", - "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", + "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", + "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", + "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", + "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", + "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", + "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." ], - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" }, { - "id": "portable-claude-native-qualification-20260921", + "id": "headroom-039-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "prometheus" + "headroom" ], - "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, headroom-ai 0.39.0 was qualified against the pinned 0.37.0 and not switched; production stays on 0.37.0. Tag v0.39.0 is 66f426171bab32692cf93d2b656a8e4be9004186 and contains d971f7c3 (#3748; compare behind_by 0). Its manylinux_2_28_x86_64 wheel (14,199,952 bytes, sha256 8c7594012ce0dcd28202af471fb1bd08c6f226c8e10fc6a682b3fb233e809a74) matched PyPI JSON, the PyPI simple API and the GitHub release asset, and was installed with uv into the new prefix tools/headroom-ai-0.39.0; 555 of 555 headroom/ RECORD digests match the verified wheel and `headroom --version` printed 'headroom, version 0.39.0'. The unchanged upstream test file tests/test_transforms/test_content_detector_timestamp_search.py (blob 23b66a27) passed 6 of 6 on 0.39.0 and 4 of 6 on 0.37.0. Through `headroom mcp serve --proxy-url http://127.0.0.1:1` over stdio, 0.39.0 listed headroom_compress, headroom_retrieve and headroom_stats; compressed the 600-line ISO-timestamped fixture A 16820 -> 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", "limitations": [ - "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", - "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", - "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", - "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", - "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." + "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", + "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", + "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", + "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", + "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", + "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", + "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", + "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." ], - "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" + "path": "evidence/receipts/headroom-039-qualification-20260925.json" }, { - "id": "portable-cli-artifacts", - "kind": "native_cli_e2e", + "id": "vllm-030-switch-laptop-20260926", + "kind": "native_model_e2e", "component_ids": [ - "shellcheck", - "difftastic", - "markitdown", - "ast-grep", - "toon", - "repomix" + "vllm", + "socraticode", + "ai-memory" ], - "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", + "claim": "vLLM 0.30.0 was qualified on this laptop (WSL2, RTX 5090 Laptop GPU 24GB) as a drop-in candidate for the production Nemotron-3-Embed-1B-BF16 embedder (vLLM 0.25.0), then switched into production by a systemd --user drop-in that changes only the ExecStart binary path and PATH. Of the six qualification gates: (a) gate-text cosine, (c) batch invariance and (e) ai-memory vector reconstruction passed their pass bars; (b) mini-corpus retrieval and (d) live-code-index retrieval met top-10 SET identity on every query and trial (b: 40/40, d: 20/20 query-trials) but failed their strict top-10 ORDER bar in 3 of 4 trials each; (f) latency is report-only, with no pass bar. A prod-vs-prod control run (candidate never started) shows the same order-swap behavior already exists in production alone: gate b had 6 of 50 mismatched query-trials for the candidate (including an earlier, superseded run) against 10 of 80 for production compared with itself; gate d had 3 of 20 against 4 of 40; production against itself even had a worse single trial (6 of 10 identical) than any candidate trial. Gate (c)'s batch-invariance minimum cosine (0.9999562552851937) was bit-for-bit identical between production alone and the candidate, on the same minimizing text. The production switch itself re-checked only 30 gate texts (cosine 0.9999999999999998 before vs after) and confirmed dependents (ai-memory's vector stream, SocratiCode search); it did not re-run a post-switch top-10 retrieval check.", "limitations": [ - "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", - "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." + "One host (laptop, RTX 5090 Laptop GPU 24GB, WSL2) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", + "Retrieval equality covers 30 gate texts (a), a 50-paragraph mini-corpus over 10 queries (b), and 5 live code-index queries (d), not an aggregate retrieval-quality benchmark. Gates b and d met top-10 content-SET identity on every query and trial (b: 40/40 query-trials across the 4 recorded trials, plus full set overlap on one earlier superseded run; d: 20/20 query-trials) but did not meet strict top-10 ORDER identity on every trial (that earlier superseded run's own order count was 9 of 10). Counting every recorded run: gate b had 6 of 50 candidate query-trials with an order mismatch against 10 of 80 for a prod-vs-prod control (candidate never started, run twice -- an earlier, superseded control and the current one -- both included since only the second run's own prod_score diagnostic sub-field needed a fix, not its order counts); gate d had 3 of 20 against 4 of 40. Production compared with itself had a worse single trial (6 of 10 identical, i.e. 4 mismatched) than any candidate trial (worst: 7 of 10 identical, 3 mismatched), so this order-swap behavior is pre-existing production batching noise, not attributable to the 0.30.0 upgrade. The swap-gap range is 3.5e-05 to 8.2e-04 across all 23 recorded swaps (candidate run and both control runs combined), far smaller than the ~0.02-0.05 gaps between other adjacent ranks in the same rankings.", + "The reference receipt's own qualification-time number for this style of check (mini_corpus_top10_overlap, '10/10 on each of 10 queries') is a content-SET overlap claim, not a strict-order claim; it does not report whether its own order matched on every query, so gate (b)'s order tracking here is additional detail, not a comparison against a reported order result. The reference receipt's one reported ORDER number (production_switch.code_queries_identical_top10_order, '5/5') comes from its own post-switch production check with 5 live code queries, a different procedure from this run's own gate (d) qualification check (5 queries against the live SocratiCode index, run before any switch); the two are not directly comparable, and this run made no post-switch top-10 check of its own (see production_switch below: only 30 gate texts and a cosine value were re-checked after the switch) -- unlike the reference, which also re-checked 5 code queries' top-10 order after its own switch (that same code_queries_identical_top10_order, '5/5').", + "0.30.0 relies on its pinned-memory fallback for WSL (vllm-project/vllm PR #56908, the same warning the reference receipt's owned instance logged); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", + "The 0.25.0 unit is kept for rollback; only a drop-in override (nemotron-embed-agent-lab.service.d, ExecStart and PATH only) points production at 0.30.0.", + "A diagnostic-only bug in this run's own gate (b) script (prod_scores_by_idx had score and index reversed) made the order_diff_detail[].prod_score sub-field in every candidate-vs-prod gate (b) file (gate_b_result.json and gate_b_trial{1,2,3}.json) and in the first, superseded prod-vs-prod control unreliable; it did not affect any cosine value, top-10 set, or pass/fail boolean -- only that one diagnostic sub-field -- and was fixed before the second, current prod-vs-prod control run. See raw/ERRATUM-gate_b-order_diff_detail-prod_score-bug.txt.", + "results.json's own generated prose has two internal inconsistencies against its own structured fields, corrected in this receipt from the underlying per-trial gate files (raw/gate_b_result.json, gate_b_trial{1,2,3}.json, gate_d_result.json, gate_d_trial{1,2,3}.json): its gate (b) finding text lists strict-order counts as '9, 7, 9 and 10' where the adjacent structured array and the per-file queries_with_identical_order fields agree on '10, 9, 7 and 9' (same four numbers, wrong order in the prose only); its gate (d) finding text says strict order held on '3, 5, 4 and 4' of 5 queries where the adjacent structured array and the per-file queries_identical_count fields agree on '4, 5, 4 and 4'.", + "The laptop's vllm-0.30.0 prefix pre-existed this run (never pip-installed into by this task, per its own instructions), so no direct_url.json or install log exists on this host to independently re-hash its wheel; the pin identity below is the value the workstation's own switch receipt recorded for the same pinned release, reused for cross-host comparison, not independently re-verified here. What IS independently verified on this host: both production (0.25.0) and the candidate (0.30.0) point at the identical, single model directory (same absolute path in both /v1/models responses), and this host's own sha256 of that directory's model.safetensors is recorded below.", + "independent_review: an independent reviewer subagent checked this receipt against the retained raw files (recomputed the reported counts, re-hashed the model file, compared production's before/after flags) and re-ran no gate; that review produced every correction listed above." ], - "path": "evidence/receipts/portable-cli-artifacts.json" + "path": "evidence/receipts/vllm-030-switch-laptop-20260926.json" }, { - "path": "adoption/receipt.json", - "id": "portable-sdk-adoption-20260919", + "id": "codex-01571-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "duckdb" + "codex" ], - "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", "limitations": [ - "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", - "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", - "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", - "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", - "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", - "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", - "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." - ] + "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", + "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", + "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", + "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", + "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", + "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", + "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", + "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", + "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", + "Linux x86_64 only, one host; nothing here is macOS evidence." + ], + "path": "evidence/receipts/codex-01571-qualification-20260926.json" }, { - "id": "portable-userspace-install-20260921", + "id": "mcp-inspector-280-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon", - "codex", - "claude-code" + "mcp-inspector" ], - "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", "limitations": [ - "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", - "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", - "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", - "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", - "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", - "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", - "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", - "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", - "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." + "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", + "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", + "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", + "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", + "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." ], - "path": "evidence/receipts/portable-userspace-install-20260921.json" + "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" }, { "id": "prometheus-3150-qualification-20260926", @@ -3453,174 +3297,127 @@ "path": "evidence/receipts/prometheus-3150-qualification-20260926.json" }, { - "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", - "id": "qdrant-native-state-recovery-20260919", + "id": "tavily-research-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "qdrant", - "restic" + "tavily-cli" ], - "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", "limitations": [ - "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", - "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", - "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", - "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", - "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." - ] - }, - { - "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", - "id": "qmd-bm25-retrieval-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "qmd" + "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", + "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", + "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", + "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", + "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", + "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", + "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", + "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." ], - "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", - "limitations": [ - "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", - "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", - "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", - "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", - "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", - "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", - "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", - "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", - "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", - "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", - "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." - ] + "path": "evidence/receipts/tavily-research-qualification-20260926.json" }, { - "id": "restic-local-public-reference-20260919", - "kind": "native_cli_e2e", + "id": "local-inference-c2-serving-switch-20260926", + "kind": "native_model_e2e", "component_ids": [ - "restic" + "llama-cpp" ], - "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", "limitations": [ - "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", - "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", - "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", - "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", - "Credential loss recovery requires separately approved secure key escrow." + "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", + "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", + "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", + "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", + "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", + "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", + "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." ], - "path": "blueprints/us-equities/hosting/backup/receipt.json" + "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" }, { - "id": "rtk-050-qualification-20260925", - "kind": "native_cli_e2e", + "id": "claude-advisor-usage-scan-20260928", + "kind": "artifact_measurement", "component_ids": [ - "rtk" + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", + "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", "limitations": [ - "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", - "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", - "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", - "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", - "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", - "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", - "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", + "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", + "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", + "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", + "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", + "Whether ccusage or ecosystem-token-report count these entries was not checked." ], - "path": "evidence/receipts/rtk-050-qualification-20260925.json" + "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" }, { - "id": "rtk-051-qualification-20261004", + "id": "claude-host-practice-readback-20260928", "kind": "native_cli_e2e", "component_ids": [ - "rtk" - ], - "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed rtk 0.51.0 from the checksummed Linux release archive and returned rtk 0.51.0 with exit 0. rtk verify returned 151/151 inline self-tests with exit 0; 24 hook payloads matched 0.50.0 output and exits (16 rewritten, 0 differing), and 26 permission-deny hook decisions matched with no auto-allows. Direct git/proxy calls succeeded and the existing tracking database was read and later updated. This receipt republishes bounded sanitized facts from the historical host records; it is not a new host or model run.", - "limitations": [ - "No macOS execution; the Darwin archive is artifact-checked only. No upstream cargo test suite was run in these records; rtk verify is the native inline self-test, and the 115-test parser run (14 skipped) is local integration.", - "rtk gain, session and cc-economics are tool self-reports, not provider counts, invoice data or causal savings. Cumulative snapshots are not added together.", - "No fresh live-client acceptance or rtk init re-run was recorded. The --shell compatibility review is source-based; the host hook comparison covered only its 24 payloads and 26 deny entries. Existing exact-output exceptions and dated replay gates remain scoped to their original evidence.", - "gh attestation verification returned HTTP 404 (exit 1); no signature verification or source rebuild was recorded. Later upstream fixes and issue #4404 are follow-ups, not included in this stable pin.", - "NativeStack runs AgentsView 0.44.0 ahead of the repository pin. The 2026-09-27 qualification hold stands: synthetic_ccusage_parity failed, fresh_four_native_lanes is blocked, and the v0.44.0 MCP reported zero Codex counters. The recorded recipe rewire and qualification must pass in a separate follow-up before a repository pin move.", - "RTK replay is unavailable at 0.51.0: vendored child-usage.mjs and the test_token_measurement.py/test_skill_usage.py replay gates require exactly rtk 0.50.0. Skipped replay tests are not coverage; the kernel and gates remain unchanged.", - "The repair-round placeholder guard probes allowed the --shell form rtk test --shell sh 'cat ~/.ssh/config' (exit 0), while rtk proxy cat ~/.ssh/config was blocked (exit 2). These strings were guard input only; no credential reader was executed. This finding belongs to PR #685; the guard is unchanged in this pin move.", - "2026-10-04 control correction after PR #693 CI run 37226622626: v0.51.0 intentionally folds grep file lists (feac25d), so the former byte-unchanged grep control is superseded by counted prefix-plus-tail reconstruction of the exact native path set, byte-identical proxy recovery and a CR-filename verbatim guard fixture (3223a80). The diff half is unchanged. The repaired native fixture passes nine checks over 11 cases / 33 arms; this is local integration of the installed Linux CLI, not new host or upstream Cargo-suite acceptance. Agent-facing expansion of folded paths is unmeasured; an E2E observation of a wrong expanded path leads to adding grep -l/-rl to hook exclusions. Sources and retained red-then-green observations: docs/decisions/2026-10-04-rtk-file-list-control.md.", - "2026-10-04 PR #698 follow-up from the pre-rebase review head 45a7218c0 (rebased onto 38ac9aca1; no branch keeps it): the grep inverse now preserves native engine order, and a CR-free explicit-operand t6c sibling proves that the same grep -l shape folds without the 3223a80 guard signal. Native distinctness and the CR-case LF record count have isolating rejection controls with separate predicate-deletion red runs and restored green runs. The installed Linux CLI passes ten checks across 12 cases / 36 arms / 76 fixture commands plus one version command. Historical shell_sites line 1477 is retained; a dated appended entry corrects the direct-argv locator. Minimal sanitized original red/green outputs from job 035 and new job 042 outputs are retained under evidence/artifacts/rtk-051-file-list-control-20261004/ (README.md and native-controls.json), with the dated decision at docs/decisions/2026-10-04-rtk-file-list-control.md. This is local integration, not a WSL rerun, upstream Cargo-suite, new-host or native-model acceptance; model interpretation remains unmeasured." - ], - "path": "evidence/receipts/rtk-051-qualification-20261004.json" - }, - { - "id": "runtime-sdk-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "codex" + "claude-code", + "claude-hud", + "headroom", + "mcporter", + "jcodemunch-mcp", + "agent-browser", + "qmd" ], - "claim": "Retained coordinator results for the same-host Codex SDK/CLI 0.160.0 pair report strict-hash installation, matching bundled/npm-platform binaries and completed native-account SDK, gateway SDK and gateway CLI marker canaries. Sanitized outputs, native CLI usage, scripts, hashes, mtimes and discriminating replay controls are now retained; missing original SDK invocation/source and process start/end evidence limit this to a compatibility attempt. The separate A4 record adds fail-closed Linux package-resolution/executable-tree repairs, offline integration controls and a fresh isolated bootstrap of the shipped Codex pin; it does not upgrade the SDK/gateway canary evidence class.", + "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", "limitations": [ - "Existing-host compatibility observations and completed marker canaries only; incomplete original command/timing provenance prevents native_cli_e2e acceptance. Not new-host or model-quality acceptance.", - "Gateway backend model and effort were not read from the call log; configured/requested routes and efforts do not prove backend selection.", - "The shared host launcher, daemon and production prefix still run 0.159.3 until a separate coordinated switch.", - "The 0.159.3 queue, Hindsight and October 1 SDK receipts retain their original scope; they do not qualify 0.160.0.", - "Sanitized native canary stdout/stderr, CLI events/last message and their hashes are retained. SDK caller exit codes 0 are coordinator-verified, not fields in the supplied facts. Gateway backend billed usage and monetary cost remain unrecorded.", - "Original process start/end times and SDK outer executable/cwd are unrecorded. Source mtimes are filesystem observations only. The native heredoc is reconstructed from facts and the retained gateway example, not attested as the original source.", - "SDK last and total usage snapshots match for each canary and must be counted once; cached input and reasoning output are subsets, not additional tokens.", - "No unchanged upstream test suite, shared daemon restart, whole-system cleanup/recovery acceptance, package signature or provenance attestation verification is recorded here. The separate A4 bootstrap record retains local migration/publication fault injection and an isolated native installation.", - "The move is inside the seven-day cooldown recorded in docs/decisions/2026-09-25-workstation-sota-refresh.md, as the prior 0.159.2 and 0.159.3 moves were (docs/decisions/2026-09-27-model-currency.md).", - "This repository change records existing coordinator qualification; it performs no new model run or shared-host switch.", - "The CLI script prints the inner Codex exit but does not propagate it as its own final shell exit; the recorded inner exit 0 is supported by the coordinator facts and completed native events." - ], - "path": "evidence/receipts/runtime-sdk-20261003.json" - }, - { - "id": "runtime-tools", - "path": "evidence/receipts/runtime-tools.json", - "kind": "native_cli_e2e", - "component_ids": [ - "gitleaks", - "sandbox-runtime" + "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", + "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", + "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", + "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", + "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", + "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", + "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." ], - "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", - "limitations": [ - "No claim of full security certification.", - "Sandbox network denial configured but not separately exercised." - ] + "path": "evidence/receipts/claude-host-practice-readback-20260928.json" }, { - "id": "sec-catalyst-dataset-native-20260920", + "id": "socraticode-1150-qualification-20260927", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "socraticode" ], - "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", "limitations": [ - "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", - "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", - "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", - "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", - "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", - "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", - "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", - "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", - "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." + "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", + "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", + "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", + "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", + "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", + "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", + "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", + "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", + "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", + "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", + "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." ], - "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" + "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" }, { - "id": "sec-financial-data-20260919", - "kind": "compatibility_attempt", + "id": "ccusage-20026-qualification-20260927", + "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "ccusage" ], - "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", "limitations": [ - "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", - "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", - "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", - "Current API snapshots do not reconstruct historical point-in-time knowledge.", - "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", - "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." + "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", + "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", + "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", + "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", + "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", + "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", + "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", + "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", + "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", + "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", + "New hosts receive this pin only after the next release tag." ], - "path": "blueprints/us-equities/financial-data/receipt.json" + "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" }, { "id": "skills-listing-restore-20260928", @@ -3666,27 +3463,104 @@ "path": "evidence/receipts/skills-m4-host-removal-20260928.json" }, { - "id": "socraticode-1150-qualification-20260927", + "id": "claude-model-effort-probes-20260929", "kind": "native_cli_e2e", "component_ids": [ - "socraticode" + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", + "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", "limitations": [ - "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", - "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", - "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", - "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", - "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", - "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", - "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", - "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", - "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", - "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", - "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", + "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", + "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", + "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", + "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." ], - "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" + "path": "evidence/receipts/claude-model-effort-probes-20260929.json" + }, + { + "id": "claude-max-default-effort-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", + "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", + "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", + "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", + "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", + "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", + "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", + "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." + ], + "path": "evidence/receipts/claude-max-default-effort-20260929.json" + }, + { + "id": "claude-project-effort-flag-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", + "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", + "The Ultracode reminder is an indicator, not proof of workflow orchestration.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." + ], + "path": "evidence/receipts/claude-project-effort-flag-20260929.json" + }, + { + "id": "claude-spend-attribution-20260929", + "kind": "artifact_measurement", + "component_ids": [ + "claude-code", + "ccusage" + ], + "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", + "limitations": [ + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", + "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", + "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", + "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", + "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", + "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", + "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", + "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", + "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", + "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." + ], + "path": "evidence/receipts/claude-spend-attribution-20260929.json" + }, + { + "id": "wsl-terminal-defaults-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code", + "codex" + ], + "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, and 2.1.283 in a second distro; Codex 0.157.1; bash 5.2.21; Windows Terminal 1.24.11911.0) the repository now carries the terminal defaults that had been set by hand on the host. Merging the linux-wsl2 Claude Code overlay into the live settings with the repository's merge tool changed nothing (the merge equalled the live file), exactly one Notification group holds the bell command, and its matcher equals the overlay's (the acceptance script checks the matcher because the merge alone cannot see it). The rendered Codex template loads under `codex --strict-config` (the run stops at authentication, never at configuration); a wrong type for `[tui] notifications` and an unknown top-level key are refused, and an unknown key inside `[tui]` is not. The static `adoption_status.py --login-shell` model agreed with the real bash login search in all 512 combinations of three startup files over eight states, a FIFO made bash block (the model calls it unusable and unread), and a control that takes an empty file as absent disagreed in 26. In the second distro, the two per-project Claude profiles of the Windows Terminal settings dropped `suppressApplicationTitle` and gained the quiet bell, the audible-and-taskbar bell style and `COLORTERM` through the profile environment key, with every other profile and setting unchanged; the overlay merged into that distro's Claude settings changed only `$schema`, `hooks` and `preferredNotifChannel`, and its installed hook command printed exactly one BEL. The host practice repository's terminal-profile check now scans the live settings file and passed with 0 findings (the pre-change settings file fails it with 8 findings on the two per-project profiles), and its 22 single-defect controls each failed for exactly their rule.", + "limitations": [ + "One workstation and one Ubuntu 24.04 distro plus one second distro (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own evidence, and none of the new files is in the pinned release: a new host gets them only after a release carries them and the manifest is re-pinned.", + "No Windows Terminal tab was opened or measured after the second distro's profile change, and no session of that distro was started or observed after its overlay. Claude Code applies edits to `hooks` to a running session without a restart (settings reference, \"When edits take effect\"), so open sessions there should pick the overlay up; that was not observed, and an audible or taskbar bell for the alert path was not observed by the user in this work.", + "The profile example was checked as JSON against the policy. It declares no `guid`, so Windows Terminal derives a stable one from the folder and profile names (read in its source at the installed tag); it was not loaded into Windows Terminal or installed on any host. The host's deployed fragment is the practice repository's own file.", + "The `--login-shell` check reads file metadata only and models bash's login search from the source of bash 5.3 (shell.c execute_profile_file, builtins/evalfile.c) and the installed 5.2.21 on Linux; it does not run a login shell, read a startup file (so a non-empty file's hand-off is unknown, reported as null), or cover /etc/profile, ~/.bashrc, another shell, --noprofile, POSIX mode, an sh-mode login or macOS's bash 3.2. A special file is reported unusable: bash reads a device as empty and blocks on a FIFO, and both end the search; an unusable ~/.profile is reached but not read, so profile_read is false; HOME is the environment's, else the passwd entry's, else \"/\", the way bash falls back.", + "The Codex acceptance is a configuration load: no Codex notification was produced in this work, `async-question` does not exist at the macOS pin's tag (inert there) and Codex 0.155.1 was not run. Codex does not validate keys inside `[tui]`, so the repository's test pins that table's setting names. A `request_user_input` question notifies as `plan-mode-prompt` at both tags (tool_requests.rs L449-458), so `async-question` adds only the asynchronous questions 0.155.1 lacks.", + "The second distro's `tui` is `fullscreen` by its own setting; `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` was not set, as the upstream documentation makes it a reactive fix and no stale rendering was observed or measured.", + "The host practice repository has no remote (commits fcd291f, 396d1c1, 9500656, c14e8c3, 9f615ad and d0c7d9c); its check and controls are recorded here as results only. The Windows Terminal settings patch and the second distro's merge were host operations on private files, recorded as values.", + "The second distro's Claude Code is 2.1.283, one release before this host's. A scan of the installed binaries (this host's 2.1.282, 2.1.283 and 2.1.284, and that distro's 2.1.283) found the `notifications_disabled` and `terminalSequence` literals and `worker_permission_prompt` emitted from the same two team-inbox call sites in each (the second distro's binary is byte-identical to this host's 2.1.283 by SHA-256 prefix, and its occurrence counts by `grep -a -o` equal this host's scan), so the whole matcher is live there. The changelog dates `terminalSequence` to 2.1.141 and has no entry for `notifications_disabled`, which the settings reference documents. The hook was run in that distro.", + "The merge de-duplicates hooks by command anywhere in the event, so it never changes the matcher of a Notification hook that already runs the bell command: after a later matcher change the old group must be edited or removed first. The acceptance script checks the group count and the matcher for that reason, and a unit test proves it refuses a catch-all group and an older matcher.", + "The Codex `[tui] notifications` list is in the template that a macOS host also renders. Codex keeps its own per-terminal channel there, so needed kinds still notify natively and the turn-complete one stops; at the macOS pin `async-question` does not exist and is inert. This was decided and documented, and not observed on a Mac.", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): codex_tui_strict_check.py counts a run as loaded only with Codex's session banner and exits 1 unless the template loaded and both configuration controls were refused; overlay_noop_check.py also requires disableAllHooks not to be true and labels its verdict as a check of the user settings file only; login_shell_bash_truth.py and the 512-combination test now also compare first_read; the platform page's advice about profiles.defaults was corrected (Windows Terminal ranks a profile's own value, then profiles.defaults, then a fragment's profile). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + ], + "path": "evidence/receipts/wsl-terminal-defaults-20260929.json" }, { "id": "socraticode-1160-qualification-20260929", @@ -3710,152 +3584,112 @@ "path": "evidence/receipts/socraticode-1160-qualification-20260929.json" }, { - "id": "sota-convergence-20260922", - "kind": "historical_inventory", + "id": "omniroute-3851-npm-qualification-20260930", + "kind": "compatibility_attempt", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "apple-container", - "ast-grep", - "beads", - "ccusage", - "claude-code", - "claude-hud", - "codebase-memory-mcp", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "fastapi", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "llama-cpp", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nextjs", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "playwright-cli", - "playwright-test", - "poppler", - "postgresql", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "react", - "repomix", - "restic", - "rtk", - "sandbox-runtime", - "serena", - "shanraisshan/claude-code-best-practice", - "shellcheck", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "omniroute" ], - "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", "limitations": [ - "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", - "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", - "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", - "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." + "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", + "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", + "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", + "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", + "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", + "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", + "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", + "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", + "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." ], - "path": "evidence/receipts/sota-convergence-20260922.json" + "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" }, { - "id": "syft-1540-qualification-20261003", + "id": "codex-01592-qualification-20260930", "kind": "native_cli_e2e", "component_ids": [ - "syft" + "codex" ], - "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", "limitations": [ - "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", - "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", - "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", + "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", + "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", + "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", + "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", + "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", + "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", + "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", + "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", + "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", + "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", + "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", + "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", + "Linux x86_64 only, one host; nothing here is macOS evidence." ], - "path": "evidence/receipts/syft-1540-qualification-20261003.json" + "path": "evidence/receipts/codex-01592-qualification-20260930.json" }, { - "path": "blueprints/us-equities/supply-chain/receipt.json", - "id": "syft-sdk-inventory-20260919", + "id": "notification-types-20260929", "kind": "native_cli_e2e", "component_ids": [ - "syft" + "claude-code" ], - "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", "limitations": [ - "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", - "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", - "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", - "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", - "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", - "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", - "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", - "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", - "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", - "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." - ] + "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", + "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", + "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", + "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", + "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", + "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", + "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", + "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", + "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + ], + "path": "evidence/receipts/notification-types-20260929.json" }, { - "id": "synthetic-catalyst-contract-20260920", + "id": "login-shell-contract-20260929", "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "claude-code", + "codex" ], - "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", "limitations": [ - "Protocol thresholds are exploratory choices, not fitted or proven optimal.", - "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", - "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", - "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", - "No provider calls, broker orders, new model turn or net token-savings measurement." + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", + "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", + "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", + "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", + "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", + "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", + "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", + "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", + "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." ], - "path": "blueprints/us-equities/catalyst-experiment/receipt.json" + "path": "evidence/receipts/login-shell-contract-20260929.json" }, { - "id": "tavily-research-qualification-20260926", - "kind": "native_cli_e2e", + "id": "cross-family-review-terminal-lane-20260930", + "kind": "native_model_e2e", "component_ids": [ - "tavily-cli" + "codex", + "omniroute", + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", + "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", "limitations": [ - "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", - "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", - "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", - "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", - "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", - "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", - "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", - "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", + "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", + "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", + "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", + "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", + "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", + "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." ], - "path": "evidence/receipts/tavily-research-qualification-20260926.json" + "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" }, { "id": "terminal-experience-20260928", @@ -3882,480 +3716,497 @@ "path": "evidence/receipts/terminal-experience-20260928.json" }, { - "id": "token-native-retained-functional-20260920", - "path": "evidence/receipts/token-native-retained-functional-20260920.json", - "kind": "native_cli_e2e", + "id": "codex-shell-snapshot-cleanup-20260930", + "kind": "artifact_measurement", "component_ids": [ - "context-hub", - "headroom", - "mcp-inspector", - "promptfoo", - "worktrunk" + "codex" ], - "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", + "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", "limitations": [ - "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", - "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", - "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", - "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", - "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", - "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." - ] + "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", + "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", + "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", + "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." + ], + "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" }, { - "id": "token-practice-artifacts-20260920", + "id": "agent-browser-lna-20260930", "kind": "artifact_measurement", "component_ids": [ "agent-browser", - "ast-grep", - "edgartools", - "markitdown", - "qmd", - "repomix", - "rtk", - "socraticode", - "syft", - "toon" + "playwright-test" ], - "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", + "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", "limitations": [ - "Counts describe retained original host artifacts. This public aggregate omits the private originals; CI validates aggregate integrity, not an independent recount of those private bytes.", - "Most pairs select or transform information lossily. Shorter output does not establish equivalent answer quality or lower complete task usage.", - "Pairs overlap, including shared HTML sources and retrieval services. Do not sum them or attribute the same difference independently to dependencies.", - "Exact provider savings remain null. Tokenizer counts are not provider billing, subscription savings or causal per-repository effects.", - "The Syft table preserves checked package name/version/type columns while omitting other SBOM metadata; this is a view selection, not equivalent full SBOM content." + "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", + "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", + "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", + "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." ], - "path": "evidence/receipts/token-practice-artifacts-20260920.json" + "path": "evidence/receipts/agent-browser-lna-20260930.json" }, { - "id": "token-practice-catalog-toon-20260920", + "id": "guard-k3-verification-20260930", "kind": "artifact_measurement", "component_ids": [ - "toon" + "claude-code" ], - "claim": "A reversible full-catalog TOON conversion had a smaller native heuristic estimate but a larger exact token count than compact JSON; the guard retained compact JSON.", + "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", "limitations": [ - "This is one later artifact comparison, separate from the ten original token-practice pairs. Do not sum it with cumulative native counters or provider usage.", - "Native tokenx estimates and exact o200k_base counts use different estimators and JSON representations; they are not interchangeable savings metrics.", - "The public aggregate omits the private captured output files. Published hashes establish identity, not independent CI recount of the private bytes.", - "Exact provider savings remain unknown. The successful strict round trip establishes data equivalence for this conversion only.", - "Command templates replace host-specific source and output locations with portable placeholders." + "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", + "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", + "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", + "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", + "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1068,7 +1064,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.80.0", + "version": "0.79.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1083,21 +1079,20 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "worktrunk-0800-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" ], - "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", + "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.162.0", + "version": "0.161.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1117,15 +1112,13 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "otelcol-contrib-0162-qualification-20261003" + "claude-repository-evidence-20260921" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" + "https://github.com/open-telemetry/opentelemetry-collector-contrib" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "prometheus", @@ -1408,10 +1401,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.54.0", + "version": "1.52.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", + "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1420,14 +1413,13 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921", - "syft-1540-qualification-20261003" + "claude-repository-evidence-20260921" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.54.0" + "https://github.com/anchore/syft/releases/tag/v1.52.0" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." + "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." }, { "id": "alpaca-py", @@ -1690,7 +1682,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.327", + "version": "1.108.319", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1703,7 +1695,7 @@ } } ], - "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1716,14 +1708,13 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "jcodemunch-1108327-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", - "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", + "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", + "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 64c410699cc9c3ccad67558329513854ad46d16f Mon Sep 17 00:00:00 2001 From: Scout Date: Sun, 4 Oct 2026 23:44:44 -0400 Subject: [PATCH 25/50] Reapply this branch's manifests/evidence.json manifests/stack.json edits on the merge base (hot-file protocol: every hot-file edit in the last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 5904 ++++++++++++++++++++------------------- manifests/stack.json | 79 +- 2 files changed, 3118 insertions(+), 2865 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 3952640a2..064da3094 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -2,518 +2,791 @@ "schema_version": 1, "receipts": [ { - "id": "memory-lifecycle-probe-20260921", + "id": "adaptive-paper-practice-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "nautilus-trader", + "alpaca-py", + "claude-code", + "codex" ], - "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", + "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", "limitations": [ - "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", - "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", - "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", - "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", - "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", - "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." + "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", + "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", + "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", + "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." ], - "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" + "path": "evidence/receipts/adaptive-paper-practice-20260921.json" }, { - "id": "catalog-runtime-review-20260921", - "kind": "native_model_e2e", + "id": "adoption-macos-hosted-smoke-20260922", + "kind": "native_cli_e2e", "component_ids": [ "codex", "claude-code", - "dagu" + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" ], - "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", + "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", "limitations": [ - "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", - "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", - "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." + "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", + "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", + "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", + "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", + "socraticode is the profile's documented unpinned skip and was not installed." ], - "path": "evidence/receipts/catalog-runtime-review-20260921.json" + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" }, { - "id": "catalog-clean-install-20260921", + "id": "adoption-macos-hosted-smoke-20260923", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "codex", + "claude-code", + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" ], - "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", + "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", "limitations": [ - "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", - "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", - "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." + "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", + "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", + "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", + "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." ], - "path": "evidence/receipts/catalog-clean-install-20260921.json" + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" }, { - "id": "dashboard-gap-resolution-20260921", - "kind": "native_cli_e2e", + "id": "agent-browser-lna-20260930", + "kind": "artifact_measurement", "component_ids": [ - "ai-memory", - "codex", - "claude-code", - "agentsview", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo", - "vllm" + "agent-browser", + "playwright-test" ], - "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", + "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", "limitations": [ - "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", - "Fresh PreCompact event and active Desktop session end remain unforced.", - "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", - "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", - "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", - "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." + "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", + "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", + "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", + "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." ], - "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" + "path": "evidence/receipts/agent-browser-lna-20260930.json" }, { - "id": "dashboard-render-e2e-20260921", + "id": "ai-memory-240-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qdrant", - "socraticode", - "serena", - "agentsview", - "dagu", - "omniroute", - "agent-browser", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo" + "ai-memory" ], - "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", "limitations": [ - "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", - "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", - "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", - "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", - "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", - "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", - "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", + "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", + "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", + "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", + "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", + "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", + "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." ], - "path": "evidence/receipts/dashboard-render-e2e-20260921.json" + "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" }, { - "id": "hf-memory-models-20260921", + "id": "ai-memory-241-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "vllm", - "grafana" + "ai-memory" ], - "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", + "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", "limitations": [ - "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", - "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", - "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", - "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", - "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", - "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", + "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", + "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", + "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", + "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", + "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", + "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." ], - "path": "evidence/receipts/hf-memory-models-20260921.json" + "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" }, { - "id": "native-memory-rag-alignment-20260921", + "path": "blueprints/us-equities/state-recovery/memory/receipt.json", + "id": "ai-memory-native-state-recovery-20260919", "kind": "native_cli_e2e", "component_ids": [ "ai-memory", - "socraticode", - "qdrant", - "qmd", - "vllm", - "grafana", - "loki" + "restic" ], - "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", + "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", "limitations": [ - "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", - "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", - "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", - "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", - "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", - "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", - "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." - ], - "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" + "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", + "38 pages table rows include historical versions, not 38 current pages.", + "Native backup excludes raw/, model caches, logs and external native session transcripts.", + "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", + "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", + "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." + ] }, { - "id": "native-returned-results-20260921", + "path": "blueprints/us-equities/order-contract/receipt.json", + "id": "alpaca-offline-order-contract-20260919", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "rtk", - "context-mode", - "qmd", - "serena", - "ai-memory", - "socraticode", - "qdrant", - "agentsview", - "grafana", - "loki", - "prometheus", - "dagu", - "ntfy", - "omniroute", - "agent-browser", - "promptfoo", - "headroom", - "jcodemunch-mcp" + "alpaca-py" ], - "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", + "claim": "Installed alpaca-py request models silently dropped synthetic advanced fields; this explicit broker-disconnected basic-intent boundary rejected those inputs and eight additional negative cases while preserving canonical decimal strings.", "limitations": [ - "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", - "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", - "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", - "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", - "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", - "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", - "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", - "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", - "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." - ], - "path": "evidence/receipts/native-returned-results-20260921.json" + "Local contract is not wired into unrelated SDK calls or existing workers; explicit future adapter adoption is required.", + "No broker account, key, asset lookup, risk approval, live/paper order or provider wire behavior was exercised.", + "Whole-share basic create-intent subset only; advanced, replacement, cancellation, retries, order journals and reconciliation remain gated.", + "Input representation cap and symbol/client-ID syntax are local conservative policies, not provider or risk authorization.", + "Python SDK float conversion is observed; the canonical exact decimal envelope is deliberately not serialized through those float fields.", + "JavaScript advanced support is pinned-source evidence only; no alternative SDK was installed or executed.", + "Python audit events and the Linux namespace substantiate this scoped probe, not a universal sandbox or macOS acceptance.", + "Canonical content hashes do not establish client-ID uniqueness, deduplication or safe retry semantics.", + "No token-saving claim or model inference belongs to this deterministic task." + ] }, { - "id": "native-workflow-writing-comparison-20260921", + "id": "alpaca-paper-e2e-20260921", "kind": "native_cli_e2e", "component_ids": [ + "alpaca-py", "claude-code" ], - "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", + "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", "limitations": [ - "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", - "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", - "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." + "One operational smoke trial, not profitable strategy or continuous trading acceptance.", + "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", + "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." ], - "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" + "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" }, { - "id": "native-workflow-graceful-recovery-20260921", - "kind": "native_cli_e2e", + "id": "artifact-reductions", + "path": "evidence/receipts/artifact-reductions.json", + "kind": "artifact_measurement", "component_ids": [ - "claude-code" + "rtk", + "socraticode", + "openresearch", + "context-mode" ], - "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", + "claim": "Recorded exact selected-text reductions, distinct from model usage.", "limitations": [ - "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", - "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", - "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", - "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." - ], - "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" + "Lossy selections compare retained text to full-file/paper counterfactuals.", + "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." + ] }, { - "id": "portable-userspace-install-20260921", + "id": "broad-universe-research-20260921", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon", - "codex", - "claude-code" + "alpaca-py", + "duckdb", + "claude-code", + "codex" ], - "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", + "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", "limitations": [ - "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", - "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", - "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", - "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", - "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", - "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", - "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", - "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", - "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." + "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", + "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", + "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", + "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", + "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." ], - "path": "evidence/receipts/portable-userspace-install-20260921.json" + "path": "evidence/receipts/broad-universe-research-20260921.json" }, { - "id": "claude-selective-context-pilot-20260921", - "kind": "native_model_e2e", + "id": "canary-proof-verification-20261001", + "kind": "artifact_measurement", "component_ids": [ "claude-code", - "context-mode" + "codex", + "systemd" ], - "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", + "claim": "The canary proof tool (tools/credentials/canary_proof.py, 1,834 lines, with the contained scan worker tools/credentials/canary_scan_worker.py, 2,114 lines) passed its synthetic acceptance on the workstation on 2026-10-01 on main with the K4 guard: its unit suite ran 143 tests, OK, with none skipped (including 12 cases that start transient systemd user scopes); its mutation runner killed 138 of 138 mutants by failures of their named permanent tests after 90 passing unmutated runs; and the credential, guard, Codex worker-lane and pre-commit suites ran 531 tests with one failure by design (the installed host copy of the guard). The tool plants a unique synthetic canary, lets named consumers use it through the key runner, and searches the named sinks with ripgrep in a worker that runs in a finite systemd user scope; its classifier refuses unless every required check has a fresh, complete result bound to the run. Reviews: a read-only GPT-6 verification found seven paths to a false clean verdict and four high findings, and an Opus build review found one blocking gap in the contract's acceptance cases; one repair round by a GPT-6 runtime worker fixed them, each with a permanent test and a mutant; an Opus re-check confirmed 37 of 42 dispositions and found one more false-clean path (a Git object store with no HEAD, refs or .git name, reached directly) and a record-validation defect, which one bounded fix round closed with tests and mutants. No end-to-end proof has run: it is the new distribution's acceptance after its guard install.", "limitations": [ - "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", - "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", - "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", - "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", - "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", - "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", - "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", - "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." + "Synthetic acceptance only: every sink, canary, Git store, SQLite database and journal in these runs is a fixture the tests build under a temporary directory; no real consumer, transcript, log, journal or credential was used, and no proof claim is made before the end-to-end run.", + "Containment evidence is workstation scope enforcement: the real-scope classes start transient systemd user scopes on this host (12 cases, all passing); hosted CI runners skip them where no user scope exists.", + "Scanner: ripgrep 14.1.0 is the executed version; the runtime also accepts 15.2.0 on a source-reviewed output grammar that no run has executed.", + "Size: the implementation (3,948 coordinator and worker lines) and the permanent test file (3,632 lines) exceed the contract's ceilings (1,800 and 2,800); the coordinator accepted the deviation for the required coverage and containment logic, and the reviews' dead-code findings were removed.", + "Residuals from the Opus re-check, recorded in the decision record: a completed but too-early or stale final is labelled requested_incomplete; the WAL/SHM-without-valid-main guard, Walk.covered's exclusion, time, special-file and symlinked-parent branches, and several O12 changes have no test of their own; three mutants are missing (END count/aux, --text, a count-based Git reconcile); bind_scope's refusal paths and the real scope_populated parser are untested; the scan's exit code still comes from events it does not validate.", + "Evidence classes differ: the unit, mutation and suite runs were made by the coordinator on the final head outside any sandbox; the reviews are read-only cross-family reads, not proofs." ], - "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" + "path": "evidence/receipts/canary-proof-verification-20261001.json" }, { - "id": "native-dashboard-data-20260921", + "id": "catalog-clean-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qmd", - "qdrant", - "agentsview", - "grafana", - "loki", - "rtk", - "context-mode", - "headroom", - "jcodemunch-mcp", - "promptfoo", - "serena", - "systemd" + "codex" ], - "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", + "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", "limitations": [ - "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", - "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", - "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", - "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", - "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", - "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", - "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", - "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", - "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." + "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", + "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", + "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." ], - "path": "evidence/receipts/native-dashboard-data-20260921.json" + "path": "evidence/receipts/catalog-clean-install-20260921.json" }, { - "id": "foundation-closure-20260921", - "kind": "native_cli_e2e", + "id": "catalog-freshness-20260923", + "kind": "upstream_provenance", "component_ids": [ "claude-code", "codex", - "affaan-m/ECC", - "context-mode" + "llama-cpp", + "mcp-inspector", + "openresearch", + "skfolio" ], - "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", + "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", "limitations": [ - "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", - "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", - "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", - "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", - "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", - "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", - "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", - "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." + "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", + "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", + "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", + "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." ], - "path": "evidence/receipts/foundation-closure-20260921.json" + "path": "evidence/receipts/catalog-freshness-20260923.json" }, { - "id": "native-quality-defaults-20260920", - "kind": "native_cli_e2e", + "id": "catalog-runtime-review-20260921", + "kind": "native_model_e2e", "component_ids": [ "codex", - "claude-code" + "claude-code", + "dagu" ], - "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", + "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", "limitations": [ - "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", - "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", - "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", - "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", - "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." + "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", + "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", + "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." ], - "path": "evidence/receipts/native-quality-defaults-20260920.json" + "path": "evidence/receipts/catalog-runtime-review-20260921.json" }, { - "id": "native-terminal-profiles-20260920", + "id": "ccusage-20026-qualification-20260927", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "qdrant", - "vllm" + "ccusage" ], - "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", "limitations": [ - "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", - "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", - "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", - "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", - "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." + "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", + "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", + "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", + "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", + "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", + "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", + "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", + "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", + "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", + "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", + "New hosts receive this pin only after the next release tag." ], - "path": "evidence/receipts/native-terminal-profiles-20260920.json" + "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" }, { - "id": "native-claude-profile-20260920", - "kind": "native_cli_e2e", + "id": "claude-advisor-usage-scan-20260928", + "kind": "artifact_measurement", + "component_ids": [ + "claude-code" + ], + "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", + "limitations": [ + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", + "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", + "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", + "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", + "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", + "Whether ccusage or ecosystem-token-report count these entries was not checked." + ], + "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" + }, + { + "id": "claude-foundation-finalization-20260921", + "kind": "native_model_e2e", "component_ids": [ "claude-code", "codex", - "affaan-m/ECC", - "context-mode", - "rtk" + "agent-browser", + "repomix" ], - "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", + "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", "limitations": [ - "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", - "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", - "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", - "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", - "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", - "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", - "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", - "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", - "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." + "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", + "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", + "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", + "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." ], - "path": "evidence/receipts/native-claude-profile-20260920.json" + "path": "evidence/receipts/claude-foundation-finalization-20260921.json" }, { - "id": "native-offhost-restic-20260920", + "id": "claude-host-practice-readback-20260928", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "claude-code", + "claude-hud", + "headroom", + "mcporter", + "jcodemunch-mcp", + "agent-browser", + "qmd" ], - "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", + "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", "limitations": [ - "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", - "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", - "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", - "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", - "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", - "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." + "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", + "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", + "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", + "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", + "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", + "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", + "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." ], - "path": "evidence/receipts/native-offhost-restic-20260920.json" + "path": "evidence/receipts/claude-host-practice-readback-20260928.json" }, { - "id": "native-dagu-retry-tests-20260920", + "id": "claude-hud-0100-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "dagu" + "claude-hud" ], - "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", "limitations": [ - "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", - "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", - "No broker/provider operations or token savings were measured.", - "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" }, { - "id": "native-token-stack-final-20260920", - "kind": "native_model_e2e", + "id": "claude-hud-0100-qualification-20261004", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", + "claude-hud" + ], + "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed claude-hud 0.10.0 from tag v0.10.0 through native Claude plugin commands after an initial marketplace-source mismatch failed. Native marketplace remove/add and plugin install succeeded; plugin list showed version 0.10.0 enabled at user scope. Direct and configured statusline commands rendered a sample payload with exit 0. This is historical plugin and sample-render evidence, not a new interactive terminal session or model run.", + "limitations": [ + "No macOS execution and no upstream test suite run. There are no release assets for this tag; the supported installation remains a native Claude Code plugin, not a tarball bootstrap kind.", + "First marketplace add failed with exit 1 due to the old source entry; native remove/add/install recovered it. Sample statusline rendering does not establish a fresh interactive Claude session or provider usage.", + "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" + }, + { + "id": "claude-max-default-effort-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", + "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", + "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", + "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", + "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", + "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", + "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", + "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." + ], + "path": "evidence/receipts/claude-max-default-effort-20260929.json" + }, + { + "id": "claude-model-effort-probes-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", + "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", + "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", + "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", + "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." + ], + "path": "evidence/receipts/claude-model-effort-probes-20260929.json" + }, + { + "id": "claude-project-effort-flag-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", + "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", + "The Ultracode reminder is an indicator, not proof of workflow orchestration.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." + ], + "path": "evidence/receipts/claude-project-effort-flag-20260929.json" + }, + { + "id": "claude-repository-evidence-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "alpaca-py", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codex", + "codex-for-claude", + "context-hub", "context-mode", - "jcodemunch-mcp", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "duckdb", + "edgartools", + "gitleaks", + "grafana", "headroom", - "rtk", - "opentelemetry-collector-contrib", + "huggingface-hub-native", + "jcodemunch-mcp", + "lean", "loki", - "prometheus" + "markitdown", + "mcp-inspector", + "mcporter", + "nautilus-trader", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "pandas", + "playwright-cli", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shellcheck", + "skfolio", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", + "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", "limitations": [ - "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", - "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", - "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", - "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", - "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", - "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", - "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", - "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." + "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", + "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", + "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", + "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", + "Superseded observations, including the author's own probe and invocation errors, remain recorded." ], - "path": "evidence/receipts/native-token-stack-final-20260920.json" + "path": "evidence/receipts/claude-repository-evidence-20260921.json" }, { - "id": "native-rag", - "path": "evidence/receipts/native-rag.json", + "id": "claude-selective-context-pilot-20260921", "kind": "native_model_e2e", "component_ids": [ - "codex", "claude-code", - "socraticode", - "qdrant", - "vllm", - "huggingface-hub-native" + "context-mode" ], - "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", + "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", "limitations": [ - "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", - "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." - ] + "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", + "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", + "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", + "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", + "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", + "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", + "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", + "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." + ], + "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" }, { - "id": "native-memory", - "path": "evidence/receipts/native-memory.json", - "kind": "native_model_e2e", + "id": "claude-spend-attribution-20260929", + "kind": "artifact_measurement", "component_ids": [ + "claude-code", + "ccusage" + ], + "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", + "limitations": [ + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", + "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", + "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", + "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", + "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", + "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", + "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", + "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", + "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", + "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." + ], + "path": "evidence/receipts/claude-spend-attribution-20260929.json" + }, + { + "id": "claude-spend-window-20261004", + "kind": "artifact_measurement", + "component_ids": [ + "claude-code", + "ccusage", + "context-mode" + ], + "claim": "Retained Claude-only ccusage daily costs rise from $2,823.79 and $2,427.25 on October 1/2 to $5,940.56 on October 3. The supplied executor window comparison reproduces exactly from count-only scanner outputs: IET per 24 h rises 2.121 times, counted call rows 2.419 times, and subagents started 2.824 times, while mean context per call falls from 271,790 to 216,230 tokens. The unfiltered retained session-view export is $12,404.88 and its workflow share is 61.402%; removing 17 rows with pre-10-03 last activity leaves $11,151.92, with coordinator-tree shares 63.296% and 33.787%. These are session-selection views, not spend since 10-03. Net pre-first-call attachment growth excluding UI is about 2.9 KB (0.8K rough tokens), rather than the positive-only 4.3 KB (1.2K) estimate. These are scoped observations, not subscription charges or a quality comparison. Adding the retained advisor-cohort estimate gives 830.270M and 1,777.960M IET per 24 h (2.141 times); all 689 A and 1,209 B advisor iterations in those cohorts used Fable. Fable is $2,092.87, or 35.230% of priced Claude dollars on 10-03. The user subsequently selected an Opus 5.5 advisor.", + "limitations": [ + "API-equivalent prices are not the subscription meter. ccusage leaves claude-sonnet-5-5 unpriced; its dollars therefore do not price every counted Claude model.", + "ccusage days are local time and Prometheus days are UTC. These scopes and the scanner windows must not be summed or equated.", + "Prometheus keeps one week; this retained export starts with the UTC day 2026-09-27 and ends with 2026-10-03.", + "The attr byte shares use unfitted weights, so they show direction only; receipt context shares exclude UI records before normalization.", + "The hook_success records are UI-only and are not counted as context. Pre-first-call attachment sizes are serialized metadata bytes, not exact model input or tokenization.", + "NativeStack only, because NativeStack2604's telemetry has no listener. This scope is the coordinator's stated observation boundary, not a new listener check.", + "10-04 is a partial day. The scanner ends at 14:00Z; no full-day projection is a measured total.", + "This is a re-derivation of retained native outputs and scanner aggregates, not a new provider/model run, an upstream acceptance test, or a quality/savings A/B.", + "window_compare.py includes synthetic zero-usage rows in its call counts and uses per-field maximum deduplication. Its subagent calls-per-file statistic spans each selected file, whereas its call and IET windows filter call timestamps.", + "Window hook text is not retained in the aggregate inputs. Historical hook-text estimates are reported as estimates; current installed carrier and upstream static hook sizes are distinct observations and do not establish historical hook outputs.", + "The unfiltered session export includes pre-10-03 activity: 17 rows worth $1,252.96 have lastActivity before 2026-10-03T04:00Z. The raw and activity-selected shares have different denominators. Filtering lastActivity does not restrict the dates of every token in a session total; neither view is established as spend since 10-03.", + "The reproduction artifact extends the supplied analysis with advisor-cohort rows. Original executor output is unchanged. Its private raw output includes source identifiers; only sanitized aggregates are retained here.", + "Advisor iterations are absent from calls.tsv and retained only as per-file tot values in files.jsonl. Grouping them by file first_ts reproduces the reviewed cohorts, but files can cross window boundaries. Executor-plus-advisor-cohort IET is an estimate with mixed timestamp scopes, not an exact call-window total; advisor iterations have no recorded effort here.", + "IET applies the same coefficients to every model: input 1, cache read 0.1, five-minute and unclassified cache writes 1.25, one-hour cache writes 2, and output 5, with thinking already in output. There is no model-specific base-price multiplier. Advisor aggregates lack cache-write duration splits and weight all cache writes at 1.25. Thus IET model shares and window ratios are relative-index measures, not dollar shares or actual spend ratios; Fable dollars from ccusage remain separate. Historical Fable usage precedes the new Opus advisor decision." + ], + "path": "evidence/receipts/claude-spend-window-20261004.json" + }, + { + "id": "claude-upstream-checks-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "agent-browser", + "agentsview", "ai-memory", + "alertmanager", + "ast-grep", + "beads", + "ccusage", + "claude-code", "codex", - "claude-code" + "codex-for-claude", + "context-mode", + "dagu", + "difftastic", + "gitleaks", + "grafana", + "headroom", + "jcodemunch-mcp", + "lean", + "loki", + "markitdown", + "mcporter", + "nautilus-trader", + "openresearch", + "opentelemetry-collector-contrib", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", + "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", "limitations": [ - "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", - "No historical archive backfill or LLM/embedding consolidation pipeline enabled." - ] + "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", + "Complete originals remain private; public excerpts are bounded and sanitized.", + "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." + ], + "path": "evidence/receipts/claude-upstream-checks-20260921.json" }, { - "id": "native-context-memory", - "path": "evidence/receipts/native-context-memory.json", - "kind": "native_model_e2e", + "id": "codex-01571-qualification-20260926", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", + "limitations": [ + "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", + "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", + "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", + "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", + "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", + "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", + "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", + "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", + "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", + "Linux x86_64 only, one host; nothing here is macOS evidence." + ], + "path": "evidence/receipts/codex-01571-qualification-20260926.json" + }, + { + "id": "codex-01592-qualification-20260930", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", + "limitations": [ + "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", + "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", + "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", + "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", + "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", + "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", + "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", + "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", + "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", + "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", + "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", + "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", + "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", + "Linux x86_64 only, one host; nothing here is macOS evidence." + ], + "path": "evidence/receipts/codex-01592-qualification-20260930.json" + }, + { + "id": "codex-01593-hindsight-native-memory-20261001", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "Fresh native Codex automatic capture and independent recollection from the selected Hindsight bank passed in both headless exec and daemon-backed interactive resume/queue paths.", + "limitations": [ + "Two invented canaries and their record budgets are explicitly synthetic, not project policy, market data or trading acceptance.", + "This is supported native command/API execution with synthetic inputs and independent observation, not an executed upstream Docker or Cargo test suite.", + "Headless exec and daemon-backed TUI are distinct paths; each has its own fresh provider-backed observations below.", + "Knowledge-page search completed but did not contain either canary. Native Hindsight reflect supplied the correct values; page population or cron refresh is not qualified here.", + "Backend seed/survey completion was not established. Native status reported synced=false with active operations; the coordinator separately owns seed-job recovery.", + "Native model token usage excludes Hindsight backend extraction/reflection usage. Backend usage and monetary cost are unknown.", + "No production-quality or token-efficiency comparison is claimed, and no unrelated session or authentication store was read." + ], + "path": "evidence/receipts/codex-01593-hindsight-native-memory-20261001.json" + }, + { + "id": "codex-01593-native-queue-20261001", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "Fresh provider-backed native queue delivery succeeded while the owned daemon-backed thread was idle, while a preceding turn was busy, and after its TUI disconnected and resumed. Three official Hindsight hook definitions were individually trusted through the native UI.", + "limitations": [ + "Synthetic messaging inputs qualify these native operations, not production task quality or the whole ecosystem.", + "No upstream Cargo test suite was run; upstream test sources were reviewed and native commands were exercised.", + "No daemon restart was attempted during live qualification, and no unrelated session was inspected or interrupted.", + "Queue delivery to a concurrently running embedded receiver, cross-family bridge delivery, cross-account isolation, remote hosts, and Hindsight retrieval/retention are outside this receipt.", + "Hindsight capture remained disabled during hook trust. Hook trust is not memory acceptance.", + "Provider monetary cost is unknown. Native usage counters do not establish improvement against another configuration." + ], + "path": "evidence/receipts/codex-01593-native-queue-20261001.json" + }, + { + "id": "codex-desktop-live-20260920", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", "context-mode", + "jcodemunch-mcp", "serena", - "rtk" + "ai-memory", + "socraticode", + "rtk", + "headroom", + "qmd", + "loki", + "prometheus" ], - "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", + "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", "limitations": [ - "Earlier Serena/RTK run uses its original CLI version.", - "PreCompact was not induced; current Desktop catalog is distinct from child native clients." - ] + "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", + "Tools without native savings ledgers remain unavailable, not zero.", + "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", + "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", + "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", + "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", + "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", + "No fresh Prometheus turn sample in the selected window; no three-way observation join." + ], + "path": "evidence/receipts/codex-desktop-live-20260920.json" }, { - "id": "runtime-tools", - "path": "evidence/receipts/runtime-tools.json", + "id": "codex-session-environment-20260920", "kind": "native_cli_e2e", "component_ids": [ - "gitleaks", - "sandbox-runtime" + "codex", + "context-mode", + "jcodemunch-mcp", + "serena", + "ai-memory", + "socraticode" ], - "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", + "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", "limitations": [ - "No claim of full security certification.", - "Sandbox network denial configured but not separately exercised." - ] + "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", + "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", + "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", + "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", + "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", + "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", + "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." + ], + "path": "evidence/receipts/codex-session-environment-20260920.json" }, { - "id": "artifact-reductions", - "path": "evidence/receipts/artifact-reductions.json", + "id": "codex-shell-snapshot-cleanup-20260930", "kind": "artifact_measurement", "component_ids": [ - "rtk", - "socraticode", - "openresearch", - "context-mode" + "codex" ], - "claim": "Recorded exact selected-text reductions, distinct from model usage.", + "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", "limitations": [ - "Lossy selections compare retained text to full-file/paper counterfactuals.", - "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." - ] + "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", + "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", + "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", + "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." + ], + "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" }, { "id": "component-history", @@ -564,61 +837,116 @@ ] }, { - "id": "native-cli-gaps", - "path": "evidence/receipts/native-cli-gaps.json", + "id": "cross-family-review-terminal-lane-20260930", "kind": "native_model_e2e", "component_ids": [ - "qmd", - "codebase-memory-mcp", - "agent-browser" + "codex", + "omniroute", + "claude-code" ], - "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", + "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", "limitations": [ - "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", - "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." - ] + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", + "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", + "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", + "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", + "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", + "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", + "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." + ], + "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" }, { - "id": "worktrunk-list", - "path": "evidence/receipts/worktrunk-list.json", + "id": "current-session-observation-20260920", "kind": "native_cli_e2e", "component_ids": [ - "worktrunk" + "agentsview", + "ai-memory", + "alertmanager", + "ccusage", + "claude-hud", + "context-mode", + "grafana", + "headroom", + "jcodemunch-mcp", + "loki", + "mcporter", + "ntfy", + "opentelemetry-collector-contrib", + "otel-tui", + "prometheus", + "rtk", + "serena", + "socraticode" ], - "claim": "Native wt list enumerated the actual publication worktree set.", + "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", "limitations": [ - "Model-free repository inventory, not multi-agent correctness." - ] + "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", + "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", + "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", + "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", + "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", + "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", + "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", + "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." + ], + "path": "evidence/receipts/current-session-observation-20260920.json" }, { - "id": "desktop-direct-rag", - "kind": "native_model_e2e", + "id": "dashboard-gap-resolution-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "socraticode", - "qdrant", - "vllm", - "ai-memory" + "ai-memory", + "codex", + "claude-code", + "agentsview", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo", + "vllm" ], - "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", + "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", "limitations": [ - "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", - "No whole-task provider usage/savings attribution is claimed." + "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", + "Fresh PreCompact event and active Desktop session end remain unforced.", + "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", + "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", + "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", + "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." ], - "path": "evidence/receipts/desktop-direct-rag.json" + "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" }, { - "id": "vllm-compatibility", - "kind": "compatibility_attempt", + "id": "dashboard-render-e2e-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "vllm", - "socraticode" + "ai-memory", + "qdrant", + "socraticode", + "serena", + "agentsview", + "dagu", + "omniroute", + "agent-browser", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo" ], - "claim": "Latest vLLM0.29.0 native install succeeded but GPU startup failed on WSL; publisher-validated0.25.0 restored and direct retrieval passed.", + "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", "limitations": [ - "This is a host-specific failure, not a claim0.29is universally unusable.", - "The resolver success does not establish GPU/runtime compatibility." + "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", + "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", + "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", + "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", + "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", + "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", + "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." ], - "path": "evidence/receipts/vllm-compatibility.json" + "path": "evidence/receipts/dashboard-render-e2e-20260921.json" }, { "id": "desktop-cli-workflows", @@ -637,72 +965,20 @@ "path": "evidence/receipts/desktop-cli-workflows.json" }, { - "id": "portable-cli-artifacts", - "kind": "native_cli_e2e", - "component_ids": [ - "shellcheck", - "difftastic", - "markitdown", - "ast-grep", - "toon", - "repomix" - ], - "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", - "limitations": [ - "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", - "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." - ], - "path": "evidence/receipts/portable-cli-artifacts.json" - }, - { - "id": "native-observability", - "kind": "native_cli_e2e", - "component_ids": [ - "codex", - "claude-code", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana", - "alertmanager", - "ntfy" - ], - "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", - "limitations": [ - "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", - "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", - "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", - "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", - "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", - "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." - ], - "path": "observability/receipt.json" - }, - { - "id": "native-observability-followup", + "id": "desktop-direct-rag", "kind": "native_model_e2e", "component_ids": [ - "codex", - "context-mode", - "ai-memory", "socraticode", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana" + "qdrant", + "vllm", + "ai-memory" ], - "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", + "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", "limitations": [ - "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", - "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", - "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", - "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", - "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", - "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." + "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", + "No whole-task provider usage/savings attribution is claimed." ], - "path": "observability/followup-receipt.json" + "path": "evidence/receipts/desktop-direct-rag.json" }, { "id": "desktop-restart-acceptance", @@ -730,817 +1006,746 @@ "path": "observability/restart-receipt.json" }, { - "id": "sec-financial-data-20260919", - "kind": "compatibility_attempt", + "id": "env-freshness-wsl-ubuntu-main-20260924", + "kind": "artifact_measurement", "component_ids": [ - "duckdb" + "nautilus-trader", + "alpaca-py", + "duckdb", + "pandas", + "edgartools", + "exchange-calendars", + "vllm" ], - "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", + "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", "limitations": [ - "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", - "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", - "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", - "Current API snapshots do not reconstruct historical point-in-time knowledge.", - "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", - "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." + "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", + "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", + "One host; each PC publishes its own report under the same schema.", + "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." ], - "path": "blueprints/us-equities/financial-data/receipt.json" + "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" }, { - "id": "restic-local-public-reference-20260919", + "id": "exchange-calendars-native-check-20260922", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "exchange-calendars" ], - "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", + "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", "limitations": [ - "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", - "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", - "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", - "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", - "Credential loss recovery requires separately approved secure key escrow." + "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", + "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", + "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", + "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", + "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." ], - "path": "blueprints/us-equities/hosting/backup/receipt.json" + "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" }, { - "id": "native-research-runtime-20260919", - "kind": "native_model_e2e", + "id": "foundation-catalog-ui-20260920", + "kind": "artifact_measurement", "component_ids": [ - "claude-code", - "dagu", - "lean", - "duckdb", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "agent-browser" ], - "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", + "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", "limitations": [ - "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", - "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", - "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", - "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", - "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", - "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", - "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", - "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." + "Source pin/publication URLs pending parent final source commit and regeneration.", + "No provider/broker execution or broad regression rerun performed.", + "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." ], - "path": "blueprints/us-equities/research-runtime/receipt.json" + "path": "evidence/receipts/foundation-catalog-ui-20260920.json" }, { - "path": "blueprints/us-equities/state-recovery/memory/receipt.json", - "id": "ai-memory-native-state-recovery-20260919", + "id": "foundation-closure-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "restic" + "claude-code", + "codex", + "affaan-m/ECC", + "context-mode" ], - "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", + "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", "limitations": [ - "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", - "38 pages table rows include historical versions, not 38 current pages.", - "Native backup excludes raw/, model caches, logs and external native session transcripts.", - "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", - "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", - "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." - ] - }, - { - "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", - "id": "qdrant-native-state-recovery-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "qdrant", - "restic" + "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", + "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", + "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", + "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", + "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", + "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", + "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", + "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." ], - "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", - "limitations": [ - "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", - "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", - "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", - "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", - "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." - ] + "path": "evidence/receipts/foundation-closure-20260921.json" }, { - "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", - "id": "qmd-bm25-retrieval-20260919", - "kind": "native_cli_e2e", + "id": "foundation-convergence-20260921", + "kind": "native_model_e2e", "component_ids": [ - "qmd" + "codex", + "claude-code", + "context-mode", + "rtk", + "headroom", + "toon" ], - "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", + "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", "limitations": [ - "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", - "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", - "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", - "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", - "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", - "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", - "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", - "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", - "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", - "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", - "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." - ] + "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", + "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", + "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", + "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", + "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." + ], + "path": "evidence/receipts/foundation-convergence-20260921.json" }, { - "path": "blueprints/us-equities/convergence-review/receipt.json", - "id": "native-claude-convergence-review-20260919", - "kind": "native_model_e2e", + "id": "foundation-native-20260920", + "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "qmd", + "qdrant", + "vllm", + "socraticode", + "serena", + "context-mode", + "jcodemunch-mcp", + "rtk", + "headroom", + "repomix", + "toon", + "codex", "claude-code", "opentelemetry-collector-contrib", "prometheus", - "loki" + "loki", + "omniroute" ], - "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", + "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", "limitations": [ - "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", - "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", - "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", - "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", - "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", - "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." - ] - }, - { - "path": "blueprints/us-equities/supply-chain/receipt.json", - "id": "syft-sdk-inventory-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "syft" + "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", + "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", + "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", + "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", + "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", + "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", + "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", + "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", + "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." ], - "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", - "limitations": [ - "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", - "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", - "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", - "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", - "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", - "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", - "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", - "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", - "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", - "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." - ] + "path": "evidence/receipts/foundation-native-20260920.json" }, { - "path": "adoption/receipt.json", - "id": "portable-sdk-adoption-20260919", - "kind": "native_cli_e2e", + "id": "foundation-rd-20260921", + "kind": "native_model_e2e", "component_ids": [ + "claude-code", "codex", - "duckdb" + "codex-for-claude", + "qmd" ], - "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", + "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", "limitations": [ - "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", - "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", - "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", - "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", - "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", - "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", - "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." - ] + "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", + "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", + "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", + "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", + "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." + ], + "path": "evidence/receipts/foundation-rd-20260921.json" }, { - "path": "adoption/paired/receipt.json", - "id": "native-paired-adoption-20260919", - "kind": "native_model_e2e", + "id": "full-stack-convergence-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "codex", + "agent-browser", + "agentsview", + "ai-memory", + "ccusage", "claude-code", - "duckdb", + "codex", + "context-mode", "dagu", - "lean", - "opentelemetry-collector-contrib", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "loki", + "omniroute", + "openresearch", "prometheus", - "loki" + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "toon", + "vllm", + "worktrunk" ], - "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", + "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", "limitations": [ - "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", - "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", - "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", - "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", - "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", - "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", - "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", - "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." - ] + "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", + "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", + "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", + "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", + "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", + "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", + "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", + "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." + ], + "path": "evidence/receipts/full-stack-convergence-20260921.json" }, { - "path": "blueprints/us-equities/architecture/receipt.json", - "id": "native-architecture-review-20260919", - "kind": "native_model_e2e", + "id": "github-automation-newpc-20260922", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "claude-code" ], - "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", + "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", "limitations": [ - "The models reviewed supplied evidence and did not independently inspect primary sources. Their critiques are advisory and were adjudicated; agreement does not establish correctness or trading performance.", - "This is a native architecture-review task, not another LEAN/Dagu backtest run, full MCP/RAG acceptance, broker integration, hosted deployment or universal SOTA census.", - "The44,214 combined native reported tokens exclude coordinator and source-research workers. They are usage, not causal tokens saved or a billing measurement across identical tokenizers.", - "Astra cached input is included in input and reasoning output in output. Claude thinking is included in output; duplicate per-model/iteration/stream views are not added again.", - "Native model selection and terminal usage are not independent provider attestation. Full account/session/process identifiers and raw event streams remain private.", - "The offline Alpaca observation detects synthetic field loss only; no client/network/order, valid advanced-order fixture, entitlement or execution adapter was tested.", - "New machines must reproduce their own selected native profile and sign-in; these local WSL receipts do not establish macOS or unattended-host acceptance." - ] + "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", + "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", + "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", + "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", + "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", + "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." + ], + "path": "evidence/receipts/github-automation-newpc-20260922.json" }, { - "path": "blueprints/us-equities/execution-realism/receipt.json", - "id": "native-lean-execution-sensitivity-20260919", + "id": "gitleaks-macos-memory-bound-20260924", "kind": "native_cli_e2e", "component_ids": [ - "lean" + "gitleaks" ], - "claim": "Native LEAN completed three fixed-order historical simulations with distinct upstream fee/slippage assumptions; serialized fill cash reconciles to native rounded summaries and all mounted engine/data input hashes remained unchanged.", + "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", "limitations": [ - "Exact arithmetic over serialized native event values; exported five-decimal fill prices and cent-rounded summaries do not expose all internal precision.", - "Illustrative fees and slippage are assumptions, not calibrated market or Alpaca execution observations.", - "Full-quantity market fills remain assumed; participation, partial fills, impact, latency, queueing, cancellation and broker reconciliation remain unaccepted.", - "Bundled five-day data do not establish PIT/corporate-action/universe quality or investment returns.", - "The normal dotnet build/restore route timed out twice; only the installed native C# compiler route is accepted.", - "Mounted input hashes do not prove every file was read; successful request logs list 13 paths plus possible separately read metadata.", - "No broker connection, account entitlement, deployment, strategy promotion, provider usage or token saving is established." - ] + "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", + "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", + "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", + "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", + "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", + "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", + "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." + ], + "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" }, { - "path": "blueprints/us-equities/point-in-time/receipt.json", - "id": "native-point-in-time-contract-20260919", - "kind": "native_cli_e2e", + "id": "guard-k3-verification-20260930", + "kind": "artifact_measurement", "component_ids": [ - "duckdb" + "claude-code" ], - "claim": "DuckDB 1.5.5 materialized and selected a synthetic temporal snapshot; late revisions, universe state, feed/adjustment scope and pinned snapshot integrity were exercised through native Python SDK/SQL commands.", + "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", "limitations": [ - "Synthetic observations only; no entitled or accepted market dataset, SEC download, vendor API, model or broker call occurred.", - "Availability timestamps and evidence references are declarations, not independently authenticated vendor publication evidence.", - "Local snapshot ingestion time is separate from source publication and original capture time.", - "Scope is realized observations and effective universe state; it does not model every corporate action, event forecast, symbol mapping or delisting history.", - "Hash checks require the caller to retain a trusted manifest digest independently; local file permissions are not immutable storage or off-host recovery." - ] + "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", + "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", + "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", + "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", "limitations": [ - "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", - "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", - "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", - "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", - "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", - "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", - "No broker, trading strategy, actual feed or net token-saving acceptance." - ] + "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", + "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", + "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", + "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", + "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", + "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", + "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", + "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." + ], + "path": "evidence/receipts/headroom-039-qualification-20260925.json" }, { - "id": "native-worker-supervision-20260919", - "path": "blueprints/us-equities/worker-supervision/receipt.json", + "id": "hf-memory-models-20260921", "kind": "native_cli_e2e", "component_ids": [ - "systemd" + "ai-memory", + "socraticode", + "vllm", + "grafana" ], - "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", + "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", "limitations": [ - "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", - "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", - "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", - "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", - "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", - "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", - "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", - "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", - "Hashes bind retained evidence bytes; they do not independently attest the execution.", - "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", - "Configured resource limits were inspected, not saturation-tested." - ] + "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", + "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", + "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", + "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", + "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", + "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." + ], + "path": "evidence/receipts/hf-memory-models-20260921.json" }, { - "id": "native-grand-dashboard-20260919", - "path": "observability/grand-dashboard/receipt.json", + "id": "jcodemunch-1108327-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "grafana", - "loki", - "prometheus", - "dagu" + "jcodemunch-mcp" ], - "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", "limitations": [ - "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", - "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", - "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", - "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", - "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", - "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", - "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", - "Recorded worker/decision state is not a live process registry.", - "No broker execution, exact-once accounting, universal coverage or net token savings.", - "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." - ] + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" }, { - "id": "native-convergence-review-20260919", - "path": "blueprints/us-equities/convergence-program/review-receipt.json", + "id": "local-inference-c2-serving-switch-20260926", "kind": "native_model_e2e", "component_ids": [ - "codex", - "claude-code", - "dagu" + "llama-cpp" ], - "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", "limitations": [ - "Models checked packet/report consistency, not original sources or underlying native artifacts.", - "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", - "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", - "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", - "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", - "Usage belongs to this pair only; not whole-goal consumption or causal savings." - ] - }, - { - "id": "native-historical-leverage-stress-20260919", - "path": "blueprints/us-equities/historical-simulation/receipt.json", - "kind": "native_cli_e2e", - "component_ids": [ - "lean" + "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", + "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", + "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", + "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", + "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", + "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", + "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." ], - "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", - "limitations": [ - "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", - "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", - "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", - "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", - "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", - "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", - "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", - "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", - "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", - "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", - "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", - "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", - "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", - "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", - "No paper/live orders or automatic promotion." - ] + "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" }, { - "id": "native-chronological-controls-20260919", + "id": "login-shell-contract-20260929", "kind": "native_cli_e2e", "component_ids": [ - "skfolio", - "pandas", - "lean" + "claude-code", + "codex" ], - "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", "limitations": [ - "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", - "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", - "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", - "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", - "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", - "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", - "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", - "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", + "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", + "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", + "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", + "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", + "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", + "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", + "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", + "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." ], - "path": "blueprints/us-equities/research-evaluation/receipt.json" + "path": "evidence/receipts/login-shell-contract-20260929.json" }, { - "id": "native-edgartools-catalyst-20260919", + "id": "mac-memory-patch-20260920", + "path": "evidence/receipts/mac-memory-patch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "ai-memory" ], - "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", + "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", "limitations": [ - "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", - "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", - "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", - "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", - "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", - "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", - "Native text/byte counts are not provider token savings.", - "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." - ], - "path": "blueprints/us-equities/catalyst-provenance/receipt.json" + "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", + "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", + "No provider or whole-task token savings measurement." + ] }, { - "id": "native-simulation-research-dashboard-20260919", + "id": "mac-native-application-migration-20260920", "kind": "native_cli_e2e", "component_ids": [ - "grafana", - "loki" + "fastapi", + "postgresql" ], - "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", + "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", "limitations": [ - "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", - "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", - "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", - "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", - "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", - "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", - "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." + "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", + "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", + "No model calls; whole-task provider usage unknown." ], - "path": "blueprints/us-equities/simulation-research/receipt.json" + "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" }, { - "id": "native-sec-access-resolution-20260919", + "id": "mac-native-container-storage-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "apple-container", + "postgresql" ], - "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", + "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", "limitations": [ - "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", - "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", - "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", - "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", - "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", - "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", - "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", - "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." + "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", + "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", + "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", + "Images remain cached; only owned empty failed container, test database container and test volume were removed.", + "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." ], - "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" + "path": "blueprints/convergence-practice/container-storage/receipt.json" }, { - "id": "native-sec-new-host-20260924", + "id": "mac-native-document-ingestion-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "poppler" ], - "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", + "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", "limitations": [ - "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", - "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", - "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", - "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", - "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", - "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", - "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." + "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", + "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", + "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", + "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", + "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." ], - "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", - "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" + "path": "blueprints/convergence-practice/document-ingestion/receipt.json" }, { - "id": "sec-catalyst-dataset-native-20260920", + "id": "markitdown-018-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "markitdown" ], - "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", "limitations": [ - "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", - "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", - "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", - "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", - "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", - "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", - "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", - "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", - "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." + "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", + "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", + "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", + "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", + "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", + "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", + "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", + "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." ], - "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" + "path": "evidence/receipts/markitdown-018-qualification-20260925.json" }, { - "id": "native-corporate-actions-20260920", + "id": "mcp-inspector-280-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "lean" + "mcp-inspector" ], - "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", "limitations": [ - "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", - "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", - "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", - "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", - "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", - "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." + "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", + "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", + "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", + "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", + "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." ], - "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" + "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" }, { - "id": "native-alpaca-historical-20260920", + "id": "mcp-inspector-290-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "lean" + "mcp-inspector" ], - "claim": "Native Alpaca-py0.44.0 GET transport acquired25 AAPL SIP/raw daily bars and2 corporate actions over5 HTTP200 pages. Terminal pagination and private artifacts verified;25 raw closes and both numeric action values match the frozen LEAN probe. Dividend currency and original historical availability remain unestablished.", + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", "limitations": [ - "One retrospective AAPL sample only; no all-equities universe, delisting completeness, intraday mover coverage or original point-in-time availability.", - "Cash amount and split ratio numerically match; missing dividend currency prevents fully qualified cash-unit reconciliation. No holdings, dividend cash posting, total return, financing or strategy performance modeled.", - "Historical SIP response does not establish real-time access, unlimited history, Elite margin/order entitlement or broker execution. No orders or account resets.", - "Five bounded authenticated GET requests; no IEX downgrade, retries after access refusal, paid data or SDK upgrade.", - "Prior LEAN direct probe passed, but its separate upstream NUnit host aborted before executing tests; this wave does not repair or supersede that failure.", - "No new model task or whole-task causal token-savings experiment in this wave." + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "blueprints/us-equities/authenticated-data/native-receipt.json" + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" }, { - "id": "native-security-identity-20260920", + "id": "mcporter-0141-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "duckdb" + "mcporter" ], - "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", "limitations": [ - "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", - "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", - "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", - "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", - "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", - "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", - "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", - "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." + "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", + "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", + "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", + "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", + "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", + "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." ], - "path": "blueprints/us-equities/identity-readiness/native-receipt.json" + "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" }, { - "id": "token-practice-artifacts-20260920", - "kind": "artifact_measurement", + "id": "mcporter-0142-qualification-20261003", + "kind": "compatibility_attempt", "component_ids": [ - "agent-browser", - "ast-grep", - "edgartools", - "markitdown", - "qmd", - "repomix", - "rtk", - "socraticode", - "syft", - "toon" + "mcporter" ], - "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", "limitations": [ - "Counts describe retained original host artifacts. This public aggregate omits the private originals; CI validates aggregate integrity, not an independent recount of those private bytes.", - "Most pairs select or transform information lossily. Shorter output does not establish equivalent answer quality or lower complete task usage.", - "Pairs overlap, including shared HTML sources and retrieval services. Do not sum them or attribute the same difference independently to dependencies.", - "Exact provider savings remain null. Tokenizer counts are not provider billing, subscription savings or causal per-repository effects.", - "The Syft table preserves checked package name/version/type columns while omitting other SBOM metadata; this is a view selection, not equivalent full SBOM content." + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/token-practice-artifacts-20260920.json" + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" }, { - "id": "token-practice-native-pairs-20260920", - "kind": "native_model_e2e", + "id": "mcporter-0142-qualification-20261004", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode" + "mcporter" ], - "claim": "Four native coding trials passed shared visible, hidden and file-scope acceptance gates; one fixed-order Context Mode non-use/explicit-use pair per client produced mixed observed task-usage differences.", + "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed mcporter 0.14.2 and returned version 0.14.2 with exit 0. Registry provenance matched openclaw/mcporter release.yml at v0.14.2, and a scratch npm audit verified 43 registry signatures and 15 attestations. Ad-hoc stdio jcodemunch session statistics and context-mode ctx_stats calls returned exit 0. Configured-daemon calls failed on a stale rendezvous and were not recovered. This receipt republishes sanitized historical host observations, not a new host execution.", "limitations": [ - "One baseline-first pair per client is not randomized, repeated or cache-matched. Native cache warmth and plugin tool availability were not fully controlled.", - "Observed differences are not causal per-repository savings, a whole-stack saving rate or evidence that either model is generally better.", - "Codex cached input and reasoning output are subsets. Claude ordinary input, cache creation, cache reads and output are separate categories; thinking is included in output.", - "Final cumulative session counters are used once. Coordinator, reviewers, audit tooling and report production are outside these four task totals.", - "Billed cost is unknown. Token counts and cached reads do not establish subscription charges or money saved.", - "Private transcripts, session identifiers and commands are not published. Hashes bind retained evidence, not independent attestation of provider execution." + "No macOS execution and no upstream test suite run. The npm tarball hash is artifact evidence and does not pin the transitive dependency tree or rolldown platform binding.", + "Configured-server list/call failures are retained. The stale daemon was not recovered and keep-alive transport acceptance is not claimed; dist/daemon/client.js was recorded byte-identical across 0.14.1 and 0.14.2.", + "npm audit signatures --global failed with EAUDITGLOBAL (exit 1); only the later scratch-project audit succeeded. The ad-hoc MCP statistics are self-reports, not provider counts or savings.", + "The Mac keeps its separately qualified MCPorter 0.13.13 pin until a Mac qualifies 0.14.2. The platform-independent tarball artifact check is not Mac execution or Mac qualification." ], - "path": "evidence/receipts/token-practice-native-pairs-20260920.json" + "path": "evidence/receipts/mcporter-0142-qualification-20261004.json" }, { - "id": "token-practice-coverage-20260920", - "kind": "historical_inventory", + "id": "memory-landscape-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", "ai-memory", - "ast-grep", - "ccusage", - "claude-code", - "claude-hud", - "codebase-memory-mcp", "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "davila7/claude-code-templates", - "difftastic", - "gitleaks", - "headroom", - "huggingface-hub-native", - "markitdown", - "mcp-inspector", - "mcporter", - "openresearch", - "playwright-cli", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "rtk", - "sandbox-runtime", - "serena", - "shanraisshan/claude-code-best-practice", - "shellcheck", - "socraticode", - "toon", - "vllm", - "worktrunk", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana", - "alertmanager", - "ntfy", - "duckdb", - "restic", - "dagu", - "lean", - "syft", - "alpaca-py", - "systemd", - "pandas", - "skfolio", - "edgartools" + "claude-code" ], - "claim": "A dated 52-component audit distinguishes native artifact/task pairs, bounded functionality, current queries, configuration validation, historical-only evidence, host failures and non-executable guidance.", + "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", "limitations": [ - "This historical coverage inventory records the dated audit only; it is not 52 fresh end-to-end passes or new-host acceptance.", - "Seventy captured operations include four retained failed attempts; successful corrections do not erase the initial OTel environment and Dagu environment-filter failures.", - "Two Linux Playwright invocations failed with ENOENT; the Windows installation does not establish Linux availability.", - "Guidance repositories are not executable tools. Current state, backup and cache queries or configuration validation do not prove complete lifecycle behavior.", - "Native RTK, TOON, Context Mode and Headroom counters have different scopes and estimators. They cannot be summed with artifact differences or provider usage.", - "Exact causal per-component provider saving values remain unknown rather than zero." + "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", + "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", + "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", + "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", + "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", + "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", + "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", + "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", + "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." ], - "path": "evidence/receipts/token-practice-coverage-20260920.json" + "path": "evidence/receipts/memory-landscape-20260921.json" }, { - "id": "token-practice-catalog-toon-20260920", - "kind": "artifact_measurement", + "id": "memory-landscape-lifecycle-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "toon" + "ai-memory", + "socraticode", + "qdrant", + "vllm", + "serena", + "qmd", + "codex", + "claude-code" ], - "claim": "A reversible full-catalog TOON conversion had a smaller native heuristic estimate but a larger exact token count than compact JSON; the guard retained compact JSON.", + "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", "limitations": [ - "This is one later artifact comparison, separate from the ten original token-practice pairs. Do not sum it with cumulative native counters or provider usage.", - "Native tokenx estimates and exact o200k_base counts use different estimators and JSON representations; they are not interchangeable savings metrics.", - "The public aggregate omits the private captured output files. Published hashes establish identity, not independent CI recount of the private bytes.", - "Exact provider savings remain unknown. The successful strict round trip establishes data equivalence for this conversion only.", - "Command templates replace host-specific source and output locations with portable placeholders." + "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", + "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", + "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", + "Exact memory session/lifetime savings are not returned and remain null.", + "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." ], - "path": "evidence/receipts/token-practice-catalog-toon-20260920.json" + "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" }, { - "id": "token-practice-native-counters-20260920", - "kind": "historical_inventory", + "id": "memory-lifecycle-probe-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "context-mode", - "headroom", - "rtk", - "toon" + "ai-memory" ], - "claim": "Dated native counter snapshots retain RTK output, the capped Headroom ledger result, per-conversion TOON estimates and three separate Context Mode runtime scopes without treating them as exact provider savings.", + "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", "limitations": [ - "This historical snapshot is a dated report only, not a live dashboard or new-host execution acceptance.", - "RTK counters estimate retained command history and default to 90-day retention; selected-project values are a subset of the global result. Do not add snapshots or assume a forever ledger.", - "Headroom 0.37.0 caps the report at 30 days despite naming a field lifetime; zero ledger calls do not establish zero offline guard use or provider usage.", - "Context Mode uses byte/event heuristics and separate runtime state. Illustrative cost estimates are not bills, and persisted files must not be added to a direct MCP connection snapshot.", - "TOON statistics are tokenx heuristics for one conversion, not a native cumulative ledger. The compact-JSON exact counterexample is represented by the separate catalog receipt and must not be counted twice.", - "Raw private files, host paths, full command outputs and session identifiers are omitted. Sanitized fields and aggregate hashes do not independently attest provider activity." + "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", + "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", + "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", + "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", + "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", + "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." ], - "path": "evidence/receipts/token-practice-native-counters-20260920.json" + "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" }, { - "id": "token-practice-gap-followup-20260920", + "id": "native-ai-memory-maintenance-20260920", + "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "playwright-cli", - "agentsview", - "ccusage", - "claude-hud", - "openresearch", - "codex-for-claude", - "codex" + "ai-memory" ], - "claim": "Six separately scoped follow-ups exercised a pinned Linux browser fixture, a single-session archive query, offline usage parsing, a synthetic HUD renderer, public-paper retrieval and one read-only native bridge backend task.", + "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", "limitations": [ - "These later bounded results do not turn the earlier dated 52-component audit into 52 full end-to-end passes. Individual scopes below remain authoritative.", - "Three failed attempts remain: file-protocol navigation rejection, implicit archive auto-start message failure and archive restart-lock failure. Successful recovery does not erase them.", - "Playwright used an existing Chrome installation and a fixture-only loopback HTTP endpoint. Its Playwright dependencies are alpha builds; no default browser download or arbitrary-site acceptance was tested.", - "The archive was restricted to one explicit project session. Full private transcripts, authentication material and session identifiers are omitted; automatic archive discovery did not pass.", - "HUD acceptance is a synthetic renderer fixture, not a live interactive account display. OpenResearch acceptance is public-paper retrieval, not an agent research workflow or research-quality assessment.", - "The ccusage reports overlap and must not be added. Upstream parser categories and totals are not bills or a matched provider savings comparison. The first date-only query returned an empty window.", - "The bridge trial is additional observed provider usage, not savings. It used one backend task without an outer Claude interaction or matched baseline; cached input is a subset of native input.", - "Tracked source remained unchanged; native MCP startup created untracked metadata. All owned temporary services were stopped. Public aggregate hashes bind retained evidence but do not independently reproduce private logs." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", + "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", + "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", + "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", + "Forward-only migrations may require restoring the retained private backup to downgrade." ], - "path": "evidence/receipts/token-practice-gap-followup-20260920.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-lifecycle-sample-20260920", + "id": "native-alpaca-historical-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "alpaca-py", + "lean" ], - "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", + "claim": "Native Alpaca-py0.44.0 GET transport acquired25 AAPL SIP/raw daily bars and2 corporate actions over5 HTTP200 pages. Terminal pagination and private artifacts verified;25 raw closes and both numeric action values match the frozen LEAN probe. Dividend currency and original historical availability remain unestablished.", "limitations": [ - "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", - "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", - "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", - "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", - "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", - "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." + "One retrospective AAPL sample only; no all-equities universe, delisting completeness, intraday mover coverage or original point-in-time availability.", + "Cash amount and split ratio numerically match; missing dividend currency prevents fully qualified cash-unit reconciliation. No holdings, dividend cash posting, total return, financing or strategy performance modeled.", + "Historical SIP response does not establish real-time access, unlimited history, Elite margin/order entitlement or broker execution. No orders or account resets.", + "Five bounded authenticated GET requests; no IEX downgrade, retries after access refusal, paid data or SDK upgrade.", + "Prior LEAN direct probe passed, but its separate upstream NUnit host aborted before executing tests; this wave does not repair or supersede that failure.", + "No new model task or whole-task causal token-savings experiment in this wave." ], - "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" + "path": "blueprints/us-equities/authenticated-data/native-receipt.json" }, { - "id": "synthetic-catalyst-contract-20260920", + "id": "native-application-delivery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "nextjs", + "react", + "fastapi", + "postgresql" ], - "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", + "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", "limitations": [ - "Protocol thresholds are exploratory choices, not fitted or proven optimal.", - "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", - "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", - "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", - "No provider calls, broker orders, new model turn or net token-savings measurement." + "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", + "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", + "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", + "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", + "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", + "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", + "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", + "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." ], - "path": "blueprints/us-equities/catalyst-experiment/receipt.json" + "path": "blueprints/convergence-practice/application-delivery/receipt.json" }, { - "id": "native-research-efficiency-20260920", + "path": "blueprints/us-equities/architecture/receipt.json", + "id": "native-architecture-review-20260919", "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki" + ], + "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", + "limitations": [ + "The models reviewed supplied evidence and did not independently inspect primary sources. Their critiques are advisory and were adjudicated; agreement does not establish correctness or trading performance.", + "This is a native architecture-review task, not another LEAN/Dagu backtest run, full MCP/RAG acceptance, broker integration, hosted deployment or universal SOTA census.", + "The44,214 combined native reported tokens exclude coordinator and source-research workers. They are usage, not causal tokens saved or a billing measurement across identical tokenizers.", + "Astra cached input is included in input and reasoning output in output. Claude thinking is included in output; duplicate per-model/iteration/stream views are not added again.", + "Native model selection and terminal usage are not independent provider attestation. Full account/session/process identifiers and raw event streams remain private.", + "The offline Alpaca observation detects synthetic field loss only; no client/network/order, valid advanced-order fixture, entitlement or execution adapter was tested.", + "New machines must reproduce their own selected native profile and sign-in; these local WSL receipts do not establish macOS or unattended-host acceptance." + ] + }, + { + "id": "native-catalog-retrieval-20260920", + "kind": "native_cli_e2e", + "component_ids": [ "qmd" ], - "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", + "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", "limitations": [ - "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", - "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", - "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", - "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", - "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", - "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", - "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", - "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", - "Local supervision does not prove provider-side cancellation; no run timed out.", - "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." + "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", + "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", + "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", + "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." ], - "path": "blueprints/us-equities/research-efficiency/native-receipt.json" + "path": "evidence/receipts/native-catalog-retrieval-20260920.json" + }, + { + "id": "native-chronological-controls-20260919", + "kind": "native_cli_e2e", + "component_ids": [ + "skfolio", + "pandas", + "lean" + ], + "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", + "limitations": [ + "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", + "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", + "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", + "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", + "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", + "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", + "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", + "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." + ], + "path": "blueprints/us-equities/research-evaluation/receipt.json" }, { "id": "native-ci-security-20260920", @@ -1572,88 +1777,92 @@ "path": "blueprints/convergence-practice/native-worker/receipt.json" }, { - "id": "upstream-native-tools-20260920", - "path": "evidence/receipts/upstream-native-tools-20260920.json", - "kind": "native_cli_e2e", + "path": "blueprints/us-equities/convergence-review/receipt.json", + "id": "native-claude-convergence-review-20260919", + "kind": "native_model_e2e", "component_ids": [ - "beads", - "skills-ref", - "otel-tui" + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Three supplemental upstream tools installed on the source Linux/WSL host: Beads persisted task claims and dependency transitions, skills-ref validated and rendered a selected skill, and otel-tui ingested and displayed one synthetic loopback trace.", + "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "Bounded native CLI/TUI acceptance on Linux/WSL; no new native Codex or Claude provider task was run for these additions.", - "Beads used one owned Git fixture with embedded Dolt, explicit task scope, skipped agent-instruction generation and skipped hooks. It does not replace ai-memory.", - "skills-ref is upstream's reference/demo implementation; successful portable-format validation does not certify production client extensions or tool semantics.", - "otel-tui received one synthetic local trace; no production or native-provider telemetry session was evaluated and no persistent exporter was installed.", - "None of these three tools exposes a verified cumulative token-savings counter. Exact causal lifetime provider savings remain null.", - "Public command forms substitute portable variables for private host paths; private raw operation logs are not published." + "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", + "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", + "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", + "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", + "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", + "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." + ] + }, + { + "id": "native-claude-hud-interactive-20260920", + "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", + "kind": "compatibility_attempt", + "component_ids": [ + "claude-hud" ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", + "limitations": [ + "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", + "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", + "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." + ] }, { - "id": "native-ai-memory-maintenance-20260920", - "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", + "id": "native-claude-profile-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "claude-code", + "codex", + "affaan-m/ECC", + "context-mode", + "rtk" ], - "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", + "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", - "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", - "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", - "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", - "Forward-only migrations may require restoring the retained private backup to downgrade." + "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", + "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", + "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", + "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", + "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", + "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", + "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", + "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", + "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "evidence/receipts/native-claude-profile-20260920.json" }, { - "id": "native-linux-zizmor-20260920", - "path": "evidence/receipts/native-linux-zizmor-20260920.json", - "kind": "native_cli_e2e", + "id": "native-claude-session-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "zizmor" + "claude-code" ], - "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", + "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", - "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", - "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", - "No provider task was run and zizmor supplies no verified lifetime token-savings counter." + "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", + "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", + "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", + "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "evidence/receipts/native-claude-session-recovery-20260920.json" }, { - "id": "native-dagu-job-recovery-20260920", - "kind": "native_cli_e2e", + "id": "native-cli-gaps", + "path": "evidence/receipts/native-cli-gaps.json", + "kind": "native_model_e2e", "component_ids": [ - "dagu" + "qmd", + "codebase-memory-mcp", + "agent-browser" ], - "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", + "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", "limitations": [ - "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", - "Initial native schema failure and earlier Mac success are retained; no savings comparison." - ], - "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" + "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", + "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." + ] }, { "id": "native-codex-session-recovery-20260920", @@ -1670,708 +1879,845 @@ "path": "evidence/receipts/native-codex-session-recovery-20260920.json" }, { - "id": "native-gpu-patch-20260920", + "id": "native-context-memory", + "path": "evidence/receipts/native-context-memory.json", "kind": "native_model_e2e", "component_ids": [ - "llama-cpp" + "codex", + "claude-code", + "context-mode", + "serena", + "rtk" ], - "claim": "One pinned Qwen3.8-27B Q4_K_M local CUDA partial-offload repair passed independent source review and all12 original planner tests on WSL RTX4090.", + "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", "limitations": [ - "One visible fixture, one trial, configured32GPUlayers; exact layer placement count unavailable at native log verbosity.", - "Generation took179.191seconds near the180second cap. This is not an interactive default or frontier-model comparison.", - "Minimum whole-device sampled freeVRAM8223MiB includes other allocations; not an isolated process-peak benchmark.", - "Native model and archives were downloaded and hash-verified; archive attestations verified. CUDA licensing reviewed for local use, not redistribution.", - "No host recovery, concurrent serving, provider billing or whole-task savings qualification." - ], - "path": "evidence/receipts/native-gpu-patch-20260920.json" + "Earlier Serena/RTK run uses its original CLI version.", + "PreCompact was not induced; current Desktop catalog is distinct from child native clients." + ] }, { - "id": "native-claude-session-recovery-20260920", + "id": "native-convergence-review-20260919", + "path": "blueprints/us-equities/convergence-program/review-receipt.json", "kind": "native_model_e2e", "component_ids": [ - "claude-code" + "codex", + "claude-code", + "dagu" ], - "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", + "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", "limitations": [ - "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", - "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", - "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", - "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." - ], - "path": "evidence/receipts/native-claude-session-recovery-20260920.json" + "Models checked packet/report consistency, not original sources or underlying native artifacts.", + "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", + "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", + "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", + "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", + "Usage belongs to this pair only; not whole-goal consumption or causal savings." + ] }, { - "id": "token-native-retained-functional-20260920", - "path": "evidence/receipts/token-native-retained-functional-20260920.json", + "id": "native-corporate-actions-20260920", "kind": "native_cli_e2e", "component_ids": [ - "context-hub", - "headroom", - "mcp-inspector", - "promptfoo", - "worktrunk" + "lean" ], - "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", + "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", "limitations": [ - "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", - "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", - "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", - "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", - "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", - "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." - ] + "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", + "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", + "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", + "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", + "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", + "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." + ], + "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" }, { - "id": "native-jcodemunch-20260920", - "path": "evidence/receipts/native-jcodemunch-20260920.json", + "id": "native-dagu-job-recovery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "jcodemunch-mcp" + "dagu" ], - "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", + "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", "limitations": [ - "Single bounded code-reading task, not a native provider A/B trial.", - "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", - "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", - "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", - "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", - "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", - "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." - ] + "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", + "Initial native schema failure and earlier Mac success are retained; no savings comparison." + ], + "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" }, { - "id": "native-headroom-mcp-20260920", - "path": "evidence/receipts/native-headroom-mcp-20260920.json", + "id": "native-dagu-retry-tests-20260920", "kind": "native_cli_e2e", "component_ids": [ - "headroom" + "dagu" ], - "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", + "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", "limitations": [ - "Owned synthetic acceptance artifacts demonstrate artifact reduction, not lifetime production or provider-token savings", - "MCP summary is not a lossless replacement of the original; its exact full retrieval consumes the original token count", - "Upstream Headroom CLI has no compress subcommand; on-demand compression/retrieval is exposed through MCP or SDK", - "No automatic agent-traffic interception was configured", - "Global native upstream savings ledger remains0; isolated fixture ledger is not merged into it", - "No new provider task or automatic native-client traffic interception is established by this direct MCP fixture." - ] + "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", + "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", + "No broker/provider operations or token savings were measured.", + "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." + ], + "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" }, { - "id": "native-token-focus-clients-20260920", - "path": "evidence/receipts/native-token-focus-clients-20260920.json", - "kind": "native_model_e2e", + "id": "native-dashboard-access-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "jcodemunch-mcp" + "dagu", + "qdrant", + "agentsview", + "grafana", + "prometheus", + "ntfy", + "agent-browser", + "omniroute" ], - "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", + "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", "limitations": [ - "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", - "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", - "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", - "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", - "Raw private prompts, client streams, account identifiers and host paths are not published." - ] + "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", + "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", + "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", + "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", + "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", + "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", + "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." + ], + "path": "evidence/receipts/native-dashboard-access-20260921.json" }, { - "id": "native-sandbox-network-20260920", - "path": "evidence/receipts/native-sandbox-network-20260920.json", + "id": "native-dashboard-data-20260921", "kind": "native_cli_e2e", "component_ids": [ - "sandbox-runtime" + "ai-memory", + "socraticode", + "qmd", + "qdrant", + "agentsview", + "grafana", + "loki", + "rtk", + "context-mode", + "headroom", + "jcodemunch-mcp", + "promptfoo", + "serena", + "systemd" ], - "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", + "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", "limitations": [ - "HTTP proxy path tested on this Linux/WSL host", - "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", - "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", - "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." - ] + "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", + "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", + "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", + "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", + "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", + "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", + "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", + "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", + "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." + ], + "path": "evidence/receipts/native-dashboard-data-20260921.json" }, { - "id": "native-claude-hud-interactive-20260920", - "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", - "kind": "compatibility_attempt", + "id": "native-edgartools-catalyst-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "claude-hud" + "edgartools" ], - "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", + "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", "limitations": [ - "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", - "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", - "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." - ] + "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", + "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", + "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", + "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", + "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", + "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", + "Native text/byte counts are not provider token savings.", + "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." + ], + "path": "blueprints/us-equities/catalyst-provenance/receipt.json" }, { - "id": "native-application-delivery-20260920", + "id": "native-exact-nanosecond-replay-20260919", + "path": "blueprints/us-equities/nanosecond-replay/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "nextjs", - "react", - "fastapi", - "postgresql" - ], - "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", - "limitations": [ - "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", - "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", - "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", - "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", - "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", - "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", - "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", - "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." + "duckdb", + "pandas" ], - "path": "blueprints/convergence-practice/application-delivery/receipt.json" + "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", + "limitations": [ + "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", + "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", + "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", + "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", + "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", + "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", + "No broker, trading strategy, actual feed or net token-saving acceptance." + ] }, { - "id": "mac-native-document-ingestion-20260920", - "kind": "native_cli_e2e", + "id": "native-gpu-patch-20260920", + "kind": "native_model_e2e", "component_ids": [ - "poppler" + "llama-cpp" ], - "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", + "claim": "One pinned Qwen3.8-27B Q4_K_M local CUDA partial-offload repair passed independent source review and all12 original planner tests on WSL RTX4090.", "limitations": [ - "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", - "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", - "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", - "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", - "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." + "One visible fixture, one trial, configured32GPUlayers; exact layer placement count unavailable at native log verbosity.", + "Generation took179.191seconds near the180second cap. This is not an interactive default or frontier-model comparison.", + "Minimum whole-device sampled freeVRAM8223MiB includes other allocations; not an isolated process-peak benchmark.", + "Native model and archives were downloaded and hash-verified; archive attestations verified. CUDA licensing reviewed for local use, not redistribution.", + "No host recovery, concurrent serving, provider billing or whole-task savings qualification." ], - "path": "blueprints/convergence-practice/document-ingestion/receipt.json" + "path": "evidence/receipts/native-gpu-patch-20260920.json" }, { - "id": "native-wsl-restic-synthetic-20260920", + "id": "native-grand-dashboard-20260919", + "path": "observability/grand-dashboard/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "grafana", + "loki", + "prometheus", + "dagu" ], - "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", + "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", "limitations": [ - "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", - "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", - "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", - "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", - "No token, storage-efficiency or backup performance claim.", - "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", - "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", - "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", - "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", - "Ten offline oracle/guard tests are distinct from the actual native restic commands." - ], - "path": "blueprints/convergence-practice/wsl-restore/receipt.json" + "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", + "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", + "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", + "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", + "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", + "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", + "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", + "Recorded worker/decision state is not a live process registry.", + "No broker execution, exact-once accounting, universal coverage or net token savings.", + "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." + ] }, { - "id": "mac-native-container-storage-20260920", - "kind": "native_cli_e2e", + "id": "native-harness-defaults-20260920", + "kind": "artifact_measurement", "component_ids": [ - "apple-container", - "postgresql" + "codex", + "claude-code" ], - "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", + "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", "limitations": [ - "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", - "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", - "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", - "Images remain cached; only owned empty failed container, test database container and test volume were removed.", - "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." + "Saved instruction bytes are not proof that every future model decision will follow them.", + "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", + "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." ], - "path": "blueprints/convergence-practice/container-storage/receipt.json" + "path": "evidence/receipts/native-harness-defaults-20260920.json" }, { - "id": "mac-native-application-migration-20260920", + "id": "native-headroom-mcp-20260920", + "path": "evidence/receipts/native-headroom-mcp-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "fastapi", - "postgresql" + "headroom" ], - "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", + "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", "limitations": [ - "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", - "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", - "No model calls; whole-task provider usage unknown." - ], - "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" + "Owned synthetic acceptance artifacts demonstrate artifact reduction, not lifetime production or provider-token savings", + "MCP summary is not a lossless replacement of the original; its exact full retrieval consumes the original token count", + "Upstream Headroom CLI has no compress subcommand; on-demand compression/retrieval is exposed through MCP or SDK", + "No automatic agent-traffic interception was configured", + "Global native upstream savings ledger remains0; isolated fixture ledger is not merged into it", + "No new provider task or automatic native-client traffic interception is established by this direct MCP fixture." + ] }, { - "id": "velanext-native-quality-tools-20260920", + "id": "native-historical-leverage-stress-20260919", + "path": "blueprints/us-equities/historical-simulation/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "gitleaks", - "worktrunk" + "lean" ], - "claim": "On VelaNext, exact gitleaks8.30.1 detected one inert test credential and accepted the clean control with redacted reports. Worktrunk0.78.0 created/listed/removed owned worktrees while refusing dirty removal without loss.", + "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", "limitations": [ - "Isolated synthetic Linux/WSL fixtures; no arbitrary repository safety/security certification or Mac acceptance inferred.", - "Original executed runner and attempt retained. Second attempt follows exact-pin/archive/binary/version binding and timeout-evidence hardening;20 offline guards passed on Mac and WSL.", - "GitHub attestation endpoints returned404. Publisher checksum, GitHub archive digest and exact pinned license checks passed; no attestation claim.", - "No accounts, shared services, project hooks or model calls changed by qualification. Global promotion, when performed, is separate host deployment evidence.", - "Whole coordinator/worker provider usage is unknown; no token or monetary savings claim." - ], - "path": "blueprints/convergence-practice/wsl-native-tools/receipt.json" + "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", + "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", + "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", + "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", + "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", + "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", + "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", + "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", + "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", + "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", + "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", + "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", + "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", + "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", + "No paper/live orders or automatic promotion." + ] }, { - "id": "mac-memory-patch-20260920", - "path": "evidence/receipts/mac-memory-patch-20260920.json", + "id": "native-jcodemunch-20260920", + "path": "evidence/receipts/native-jcodemunch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "jcodemunch-mcp" ], - "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", + "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", "limitations": [ - "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", - "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", - "No provider or whole-task token savings measurement." + "Single bounded code-reading task, not a native provider A/B trial.", + "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", + "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", + "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", + "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", + "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", + "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." ] }, { - "path": "evidence/receipts/wsl-application-20260920.json", - "id": "wsl-application-20260920", + "path": "blueprints/us-equities/execution-realism/receipt.json", + "id": "native-lean-execution-sensitivity-20260919", "kind": "native_cli_e2e", "component_ids": [ - "nextjs", - "react", - "fastapi", - "postgresql", - "playwright-test" + "lean" ], - "claim": "Clean isolated WSL runtime restored the same locked application, passed12 API checks, migration reversal, schema/types, production build and real browser flow; exact row/history persisted after PostgreSQL/API/Next restart.", + "claim": "Native LEAN completed three fixed-order historical simulations with distinct upstream fee/slippage assumptions; serialized fill cash reconciles to native rounded summaries and all mounted engine/data input hashes remained unchanged.", "limitations": [ - "Synthetic loopback application; no production deployment, user authentication or another-host acceptance.", - "Official exact Ubuntu packages were extracted task-only with signed metadata/SHA verification; no package scripts or system database changes.", - "Historical application inputs remain frozen; Makelevel/TIME_WAIT recipe fixes were qualified separately with five real make/socket tests on Mac and WSL.", - "No model calls by application commands; whole-task usage remains unknown." + "Exact arithmetic over serialized native event values; exported five-decimal fill prices and cent-rounded summaries do not expose all internal precision.", + "Illustrative fees and slippage are assumptions, not calibrated market or Alpaca execution observations.", + "Full-quantity market fills remain assumed; participation, partial fills, impact, latency, queueing, cancellation and broker reconciliation remain unaccepted.", + "Bundled five-day data do not establish PIT/corporate-action/universe quality or investment returns.", + "The normal dotnet build/restore route timed out twice; only the installed native C# compiler route is accepted.", + "Mounted input hashes do not prove every file was read; successful request logs list 13 paths plus possible separately read metadata.", + "No broker connection, account entitlement, deployment, strategy promotion, provider usage or token saving is established." ] }, { - "id": "wsl-transport-recovery-20260920", + "id": "native-lifecycle-sample-20260920", "kind": "native_cli_e2e", "component_ids": [ - "dagu" + "edgartools", + "duckdb" ], - "claim": "An owned nonmultiplexed SSH client was terminated; fresh reconnect observed the same native Dagu job running with one unchanged checkpoint, then native completion without stop or retry.", + "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", "limitations": [ - "Controlled client termination and a deliberately detached deterministic job; not a real network outage, host restart, model-session recovery or distributed exactly-once guarantee.", - "First harness attempt misclassified native SSH exit255 and stopped the job; its narrower same-run finalizer retry is retained separately from corrected survival acceptance.", - "Original12-test oracle passed before and after; observed owned processes/listener retired; whole-task provider usage remains unknown." + "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", + "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", + "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", + "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", + "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", + "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." ], - "path": "evidence/receipts/wsl-transport-recovery-20260920.json" + "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" }, { - "id": "wsl-document-ingestion-20260920", + "id": "native-linux-zizmor-20260920", + "path": "evidence/receipts/native-linux-zizmor-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "poppler" + "zizmor" ], - "claim": "Native Poppler26.09.0 built in a clean WSL prefix and passed the frozen3-page,24-cell,8-positive/4-absent document protocol; four extraction/retrieval artifacts exactly match Mac output.", + "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", "limitations": [ - "Designed born-digital Latin fixture with explicit table geometry; no OCR, inferred layout, general semantic retrieval or broad upstream corpus qualification.", - "Exact source signature, signed package extraction and native dependency checks preceded execution; failed first public-key lookup remains recorded.", - "No global package/service/client change or model/GPU invocation; whole-task provider usage unknown." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", + "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", + "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", + "No provider task was run and zizmor supplies no verified lifetime token-savings counter." ], - "path": "evidence/receipts/wsl-document-ingestion-20260920.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "wsl-memory-maintenance-20260920", + "id": "native-memory", + "path": "evidence/receipts/native-memory.json", + "kind": "native_model_e2e", + "component_ids": [ + "ai-memory", + "codex", + "claude-code" + ], + "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", + "limitations": [ + "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", + "No historical archive backfill or LLM/embedding consolidation pipeline enabled." + ] + }, + { + "id": "native-memory-lifecycle-20260919", + "path": "blueprints/us-equities/memory-lifecycle/receipt.json", "kind": "native_cli_e2e", "component_ids": [ "ai-memory" ], - "claim": "Official Linux ai-memory2.3.2 passed65 synthetic native checks across exact scope, Unicode/reserved paths, restart, upstream HTTP backup and native restore; four owned processes exited0.", + "claim": "A disposable, network-isolated native ai-memory fixture passed 23 lifecycle/routing checks across 31 MCP calls; exact-path TTL behavior and explicit sweep limits retained.", "limitations": [ - "Isolated fresh synthetic store and39 MCP tool calls; not production activation, native-client integration or prior-version migration.", - "Automatic capture, embeddings, generation, watcher and autowire disabled; no OS-confinement claim.", - "Native backup/restore both exit0; complete private logs retained, fixture model calls0 and whole-task provider usage unknown." - ], - "path": "evidence/receipts/wsl-memory-maintenance-20260920.json" + "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", + "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", + "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", + "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", + "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", + "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", + "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", + "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", + "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", + "Isolated fixture, not the live memory store or all client hooks.", + "TTL is default-search visibility until sweep, not immediate access revocation.", + "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." + ] }, { - "id": "token-practice-confirmation-20260920", - "kind": "historical_inventory", + "id": "native-memory-rag-alignment-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "context-mode", - "headroom", - "jcodemunch-mcp" + "ai-memory", + "socraticode", + "qdrant", + "qmd", + "vllm", + "grafana", + "loki" ], - "claim": "Dated direct upstream counter outputs, current release metadata, independent artifact rechecks and reconciled recorded monitoring support explicit baseline selection without claiming causal lifetime provider savings.", + "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", "limitations": [ - "Historical source-host observations only; not live acceptance on the reader's PC.", - "Upstream retained-history estimates, exact artifact counts and provider consumption are different quantities and must not be summed.", - "Artifact and client rechecks inspected existing retained inputs and streams; no new model task or reinstall was performed in this confirmation.", - "Public native fields are allowlisted unchanged from private outputs; host paths, process identifiers and account details are omitted.", - "Latest monitoring queries returned no matching observations in their six-hour window; this does not mean zero usage or newly confirmed savings.", - "Latest-release equality was checked only for the four selected token tools; accepted specialist compatibility pins are separate." + "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", + "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", + "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", + "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", + "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", + "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", + "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." ], - "path": "evidence/receipts/token-practice-confirmation-20260920.json" + "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" }, { - "id": "native-token-clean-prefix-20260920", + "id": "native-nautilus-ci-20260920", "kind": "native_cli_e2e", "component_ids": [ - "headroom", - "jcodemunch-mcp" + "nautilus-trader" ], - "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", + "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", "limitations": [ - "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", - "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", - "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", - "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", - "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", - "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", - "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", - "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." + "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", + "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", + "Network namespace and available-interface observations are not measured counts of attempted external transports." ], - "path": "evidence/receipts/native-token-clean-prefix-20260920.json" + "path": "evidence/receipts/native-nautilus-ci-20260920.json" }, { - "id": "current-session-observation-20260920", + "id": "native-nautilus-v2-20260920", "kind": "native_cli_e2e", "component_ids": [ - "agentsview", - "ai-memory", - "alertmanager", - "ccusage", - "claude-hud", - "context-mode", - "grafana", - "headroom", - "jcodemunch-mcp", - "loki", - "mcporter", - "ntfy", - "opentelemetry-collector-contrib", - "otel-tui", - "prometheus", - "rtk", - "serena", - "socraticode" + "nautilus-trader" ], - "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", + "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", "limitations": [ - "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", - "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", - "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", - "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", - "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", - "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", - "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", - "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." + "Release candidate, not production/live-capital acceptance.", + "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", + "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", + "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", + "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", + "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", + "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." ], - "path": "evidence/receipts/current-session-observation-20260920.json" + "path": "evidence/receipts/native-nautilus-v2-20260920.json" }, { - "id": "foundation-native-20260920", + "id": "native-observability", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qmd", - "qdrant", - "vllm", - "socraticode", - "serena", - "context-mode", - "jcodemunch-mcp", - "rtk", - "headroom", - "repomix", - "toon", "codex", "claude-code", + "agent-browser", "opentelemetry-collector-contrib", "prometheus", "loki", - "omniroute" + "grafana", + "alertmanager", + "ntfy" ], - "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", + "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", "limitations": [ - "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", - "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", - "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", - "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", - "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", - "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", - "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", - "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", - "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." + "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", + "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", + "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", + "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", + "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", + "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." ], - "path": "evidence/receipts/foundation-native-20260920.json" + "path": "observability/receipt.json" }, { - "id": "codex-session-environment-20260920", - "kind": "native_cli_e2e", + "id": "native-observability-followup", + "kind": "native_model_e2e", "component_ids": [ "codex", "context-mode", - "jcodemunch-mcp", - "serena", "ai-memory", - "socraticode" + "socraticode", + "agent-browser", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "grafana" ], - "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", + "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", "limitations": [ - "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", - "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", - "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", - "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", - "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", - "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", - "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." + "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", + "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", + "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", + "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", + "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", + "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." ], - "path": "evidence/receipts/codex-session-environment-20260920.json" + "path": "observability/followup-receipt.json" }, { - "id": "codex-desktop-live-20260920", + "id": "native-offhost-app-state-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "context-mode", - "jcodemunch-mcp", - "serena", "ai-memory", - "socraticode", - "rtk", - "headroom", - "qmd", - "loki", - "prometheus" + "qdrant", + "restic" ], - "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", + "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", "limitations": [ - "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", - "Tools without native savings ledgers remain unavailable, not zero.", - "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", - "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", - "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", - "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", - "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", - "No fresh Prometheus turn sample in the selected window; no three-way observation join." + "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", + "Sequential native application snapshots do not establish an atomic cross-application transaction.", + "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", + "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", + "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", + "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", + "No model/provider/broker calls or causal token/cost savings measurement." ], - "path": "evidence/receipts/codex-desktop-live-20260920.json" + "path": "evidence/receipts/native-offhost-app-state-20260920.json" }, { - "id": "native-session-defaults-20260920", + "id": "native-offhost-restic-20260920", "kind": "native_cli_e2e", + "component_ids": [ + "restic" + ], + "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", + "limitations": [ + "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", + "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", + "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", + "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", + "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", + "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." + ], + "path": "evidence/receipts/native-offhost-restic-20260920.json" + }, + { + "path": "adoption/paired/receipt.json", + "id": "native-paired-adoption-20260919", + "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", - "ai-memory", - "context-mode", - "rtk", - "qmd" + "duckdb", + "dagu", + "lean", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", + "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", "limitations": [ - "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", - "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", - "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", - "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", - "Claude startup events join four starts to four completions but do not identify individual configured commands.", - "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", - "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." + "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", + "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", + "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", + "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", + "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", + "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", + "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", + "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." + ] + }, + { + "path": "blueprints/us-equities/point-in-time/receipt.json", + "id": "native-point-in-time-contract-20260919", + "kind": "native_cli_e2e", + "component_ids": [ + "duckdb" ], - "path": "evidence/receipts/native-session-defaults-20260920.json" + "claim": "DuckDB 1.5.5 materialized and selected a synthetic temporal snapshot; late revisions, universe state, feed/adjustment scope and pinned snapshot integrity were exercised through native Python SDK/SQL commands.", + "limitations": [ + "Synthetic observations only; no entitled or accepted market dataset, SEC download, vendor API, model or broker call occurred.", + "Availability timestamps and evidence references are declarations, not independently authenticated vendor publication evidence.", + "Local snapshot ingestion time is separate from source publication and original capture time.", + "Scope is realized observations and effective universe state; it does not model every corporate action, event forecast, symbol mapping or delisting history.", + "Hash checks require the caller to retain a trusted manifest digest independently; local file permissions are not immutable storage or off-host recovery." + ] }, { - "id": "native-token-ci-local-20260920", + "id": "native-progress-capacity-20260921", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "loki", + "dagu" ], - "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", + "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", + "No client restart, service restart or physical reboot was performed or verified.", + "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", + "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", + "No live provider inference, account change, new dependency or upstream version change for this repair." ], - "path": "evidence/receipts/native-token-ci-local-20260920.json" + "path": "observability/grand-dashboard/capacity-recovery-20260921.json" }, { - "id": "native-token-ci-github-20260920", + "id": "native-quality-defaults-20260920", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "codex", + "claude-code" ], - "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", + "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", + "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", + "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", + "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", + "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." ], - "path": "evidence/receipts/native-token-ci-github-20260920.json" + "path": "evidence/receipts/native-quality-defaults-20260920.json" }, { - "id": "native-tavily-cli-20260920", - "kind": "native_cli_e2e", + "id": "native-rag", + "path": "evidence/receipts/native-rag.json", + "kind": "native_model_e2e", "component_ids": [ - "tavily-cli", "codex", - "claude-code" + "claude-code", + "socraticode", + "qdrant", + "vllm", + "huggingface-hub-native" ], - "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", + "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", "limitations": [ - "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", - "Claude global skill listing is not a Claude model-turn execution of every skill.", - "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", - "Search/Extract results do not independently establish their source claims or a complete research deliverable.", - "No native lifetime or exact provider-token savings counter is established.", - "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." + "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", + "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." + ] + }, + { + "id": "native-research-efficiency-20260920", + "kind": "native_model_e2e", + "component_ids": [ + "codex", + "claude-code", + "qmd" ], - "path": "evidence/receipts/native-tavily-cli-20260920.json" + "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", + "limitations": [ + "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", + "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", + "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", + "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", + "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", + "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", + "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", + "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", + "Local supervision does not prove provider-side cancellation; no run timed out.", + "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." + ], + "path": "blueprints/us-equities/research-efficiency/native-receipt.json" }, { - "id": "native-nautilus-v2-20260920", - "kind": "native_cli_e2e", + "id": "native-research-runtime-20260919", + "kind": "native_model_e2e", "component_ids": [ - "nautilus-trader" + "claude-code", + "dagu", + "lean", + "duckdb", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", + "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", "limitations": [ - "Release candidate, not production/live-capital acceptance.", - "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", - "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", - "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", - "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", - "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", - "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." + "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", + "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", + "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", + "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", + "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", + "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", + "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", + "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." ], - "path": "evidence/receipts/native-nautilus-v2-20260920.json" + "path": "blueprints/us-equities/research-runtime/receipt.json" }, { - "id": "native-harness-defaults-20260920", - "kind": "artifact_measurement", + "id": "native-returned-results-20260921", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code" + "claude-code", + "rtk", + "context-mode", + "qmd", + "serena", + "ai-memory", + "socraticode", + "qdrant", + "agentsview", + "grafana", + "loki", + "prometheus", + "dagu", + "ntfy", + "omniroute", + "agent-browser", + "promptfoo", + "headroom", + "jcodemunch-mcp" ], - "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", + "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", "limitations": [ - "Saved instruction bytes are not proof that every future model decision will follow them.", - "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", - "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." + "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", + "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", + "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", + "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", + "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", + "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", + "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", + "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", + "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." ], - "path": "evidence/receipts/native-harness-defaults-20260920.json" + "path": "evidence/receipts/native-returned-results-20260921.json" }, { - "id": "native-worker-recovery-20260920", + "id": "native-runtime-role-resolution-20260930", "kind": "native_model_e2e", "component_ids": [ + "omniroute", "claude-code" ], - "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", + "claim": "One host installed separately versioned OpenHands CLI1.16.0/SDK1.50.1 and DeepAgents0.7.21 candidates through native supported interfaces. CLI108 and final SDK184 unchanged upstream tests passed; DeepAgents361 passed with1 expected failure in its separate upstream-lock environment. Actual OmniRoute Sol-Max requests passed one OpenHands native LLM exact-output round-trip and bounded DeepAgents selected-skill/single-specialist research, saved-context repair and fresh-process SQLite continuation. All results are scoped, not a universal framework winner or global default promotion.", "limitations": [ - "One synthetic local fixture and one physical WSL host, not arbitrary application state.", - "Actual native child identities and paths remain private; hashes bind retained streams.", - "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", - "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", - "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", - "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", - "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." + "CLI SDK1.21 Jinja cache hard-codes real user home; strict cache isolation remains held.", + "Final SDK native configuration/tests exercise skills/plugins/MCP/condenser interfaces; production MCP, full Conversation/condenser/provider execution and optional extensions are not qualified by them.", + "Original DeepAgents24-step attempt failed; one changed32-step saved-context repair passed. No arbitrary interrupted-tool replay, OS confinement or comparative winner is qualified.", + "Complete provider billing/backend identity and whole-task token savings remain unknown; cached/reasoning counters are subsets.", + "Native Claude Opus/Max peer timed out180s exit124 without a verdict; later peer turns reached account usage limits. Completed earlier reviews are preserved; no new acknowledgement/approval is claimed.", + "Original full output stays private with exact hashes; public excerpts replace private paths and omit raw conversations, marker values, credentials and flow identifiers.", + "Exact executed sources are archived. Initial whitespace/comment cleanup had identical ASTs; the current worker subsequently adopts native secret-aware serialization after CodeQL, verified by native fixture and fresh saved-state checks. No new provider run is claimed." ], - "path": "evidence/receipts/native-worker-recovery-20260920.json" + "path": "evidence/receipts/native-runtime-role-resolution-20260930.json" }, { - "id": "foundation-catalog-ui-20260920", - "kind": "artifact_measurement", + "id": "native-sandbox-network-20260920", + "path": "evidence/receipts/native-sandbox-network-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "agent-browser" + "sandbox-runtime" ], - "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", + "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", "limitations": [ - "Source pin/publication URLs pending parent final source commit and regeneration.", - "No provider/broker execution or broad regression rerun performed.", - "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." - ], - "path": "evidence/receipts/foundation-catalog-ui-20260920.json" + "HTTP proxy path tested on this Linux/WSL host", + "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", + "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", + "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." + ] }, { - "id": "native-worker-containment-20260920", + "id": "native-sdk-acceptance-20261002", "kind": "native_cli_e2e", "component_ids": [ - "systemd", + "codex", "claude-code" ], - "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", + "claim": "Actual Claude SDK task failed its independent oracle despite successful protocol completion; a separate informed Codex SDK repair passed all four unchanged cases. Unchanged Claude and OpenHands default source suites passed within recorded skip, warning and environment limits.", "limitations": [ - "Deterministic cgroup proof is not successful native child crash/resume acceptance.", - "Earlier same-child continuation still required explicit direct descendant cleanup.", - "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." + "Two different model tasks and source-test suites have different evidence scopes; this is not a model-quality or token-efficiency comparison, global SOTA winner claim or full foundation closure.", + "Claude original useful-task acceptance remains FAILED. Codex passes only the four-case informed repair; its requested model/effort are bound, but resolved model/provider identity and billing cost were not returned.", + "Coordinator observed invocation, native exits and process samples. Independent reviewers checked retained source/artifact/outcome bindings without rerunning; hash equality alone is not execution provenance.", + "Public attachments are declared projections, exact resulting candidates and selected native output. Complete permitted streams remain private; raw conversations, auth/session metadata and personal paths are not published.", + "Claude default source suite has six skips, with five collection identities inferred from source/dependencies. OpenHands retains seven optional ToolShield skips, 12 xfails, 83 warnings, default stress/ACP-live exclusions and a preserved failed environment attempt; exact fetched model-map bytes were not retained.", + "OpenHands is supplemental source-test evidence, not a new adopted stack component. Its FACTS provider task remains unrun in this lane; Codex default source-suite execution remains with its separate owner.", + "Researcher/reviewer roles, resume/recovery, selected MCP, generation permission-negative tests, complete target lifecycle and target token routing remain open. Exact before/after process-name samples do not prove complete descendant cleanup.", + "Historical Claude task binding is CLI2.1.287. Current release2.1.288 reconciliation remains with the configuration owner and cannot retroactively change these captures." ], - "path": "evidence/receipts/native-worker-containment-20260920.json" + "path": "evidence/receipts/native-sdk-acceptance-20261002.json" }, { - "id": "native-nautilus-ci-20260920", + "id": "native-sdk-role-mcp-followup-20261002", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "claude-code" ], - "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", + "claim": "Retained Claude SDK evidence supports minimal inline MCP callback/terminal assertions with synthetic controls and one native deny-rule pair with a disarmed-rule control; the reviewer case completed without a discriminating control, and the researcher case is controlled for missing findings only. Prior researcher failures remain FAIL and complete role qualification remains incomplete.", "limitations": [ - "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", - "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", - "Network namespace and available-interface observations are not measured counts of attempted external transports." + "Retained independent case ACCEPT verdicts are observations, not qualified role acceptance. Reviewer negative grading has no discriminating control; the original researcher FAIL controls missing findings only, not wrong facts/citations or attribution.", + "Synthetic MCP0/1/1 controls discriminate callback presence and terminal success only. The separate native armed0/disarmed1 pair supports one actual deny-rule observation; definition visibility unknown, no can_use_tool callback configured.", + "Earlier query timestamps unknown; deny-pair UTC intervals captured. Counters retain separate scopes; interrupted whole-query usage/cost unknown. No billed-cost or efficiency claim.", + "Selected QMD/Serena, recovery, containment, complete lifecycle and whole-host qualification remain open; process samples are bounded and staging is not managed-upgrade acceptance.", + "Sanitized projections only; private original hashes, failed cases and corrections retained. The projection step ran no new provider/test/control execution and made no shared edits; registration in manifests/evidence.json is separate from that step." ], - "path": "evidence/receipts/native-nautilus-ci-20260920.json" + "path": "evidence/receipts/native-sdk-role-mcp-followup-20261002.json" }, { - "id": "native-catalog-retrieval-20260920", + "id": "native-sec-access-resolution-20260919", "kind": "native_cli_e2e", "component_ids": [ - "qmd" + "edgartools" ], - "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", + "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", "limitations": [ - "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", - "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", - "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", - "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." + "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", + "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", + "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", + "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", + "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", + "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", + "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", + "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." ], - "path": "evidence/receipts/native-catalog-retrieval-20260920.json" + "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" }, { - "id": "native-tavily-session-20260920", + "id": "native-sec-new-host-20260924", "kind": "native_cli_e2e", "component_ids": [ - "tavily-cli" + "edgartools" ], - "claim": "The current Desktop task received eight Tavily skill entries, loaded the Search/Extract skills, ran both upstream commands and extracted the official IBKR adapter prerequisites.", + "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", "limitations": [ - "Host-supplied active-task skill discovery is distinct from the prior fresh native-process probes. Only Search and Extract were exercised in this task.", - "The broad search returned three official IBKR sources but missed the intended Nautilus adapter guide; direct known-URL extraction supplied the needed evidence.", - "Extracted current documentation is a source check, not an executed broker connection or version-pinned adapter behavior.", - "No provider usage, per-skill performance comparison or lifetime token-saving counter is claimed." + "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", + "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", + "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", + "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", + "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", + "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", + "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." ], - "path": "evidence/receipts/native-tavily-session-20260920.json" + "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", + "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" }, { - "id": "native-worker-cgroup-20260920", - "kind": "native_model_e2e", + "id": "native-security-identity-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "systemd" + "alpaca-py", + "duckdb" ], - "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", + "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", "limitations": [ - "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", - "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", - "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", - "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", - "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." + "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", + "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", + "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", + "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", + "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", + "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", + "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", + "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." ], - "path": "evidence/receipts/native-worker-cgroup-20260920.json" + "path": "blueprints/us-equities/identity-readiness/native-receipt.json" }, { "id": "native-service-reboot-20260920", @@ -2393,888 +2739,698 @@ "path": "evidence/receipts/native-service-reboot-20260920.json" }, { - "id": "native-offhost-app-state-20260920", + "id": "native-session-defaults-20260920", "kind": "native_cli_e2e", "component_ids": [ + "codex", + "claude-code", "ai-memory", - "qdrant", - "restic" + "context-mode", + "rtk", + "qmd" ], - "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", + "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", "limitations": [ - "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", - "Sequential native application snapshots do not establish an atomic cross-application transaction.", - "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", - "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", - "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", - "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", - "No model/provider/broker calls or causal token/cost savings measurement." + "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", + "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", + "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", + "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", + "Claude startup events join four starts to four completions but do not identify individual configured commands.", + "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", + "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." ], - "path": "evidence/receipts/native-offhost-app-state-20260920.json" + "path": "evidence/receipts/native-session-defaults-20260920.json" }, { - "id": "native-ultracode-20260921", + "id": "native-simulation-research-dashboard-20260919", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "context-mode" + "grafana", + "loki" ], - "claim": "Claude Code 2.1.278 executed a Fable 5.1/xhigh native Workflow with Sonnet 5/medium and Opus 5/high workers returning results. The same coordinator resumed at high effort and completed a native same-host message round trip, source verification and one-shot idle notification with a separate Sonnet session. Native agent and restored workflow dashboards rendered the completed work.", + "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", "limitations": [ - "Read-only task contracts are not OS isolation; no writing-worker, mid-run cancellation, cross-host or reboot qualification.", - "Initial worker classifications were inaccurate and corrected after independent source review; both worker outputs exceeded their requested word contracts and one schema retry occurred.", - "Native worker identity was observed in child messages; choices are not a comparative quality or token-cost benchmark.", - "Same-host messaging and idle notification only; permission-mismatch behavior, delivery failures, retries and persistent scheduling were not tested.", - "Updated maintenance configuration is not proof of its next timed execution; no new recurring Claude loop was created.", - "Two native success events share cumulative model usage; no causal savings or exhaustive provider-accounting claim.", - "Native PTY rendering and process observations were recorded by the coordinator; message and workflow traces received independent read-only audit. Private raw logs and identifiers remain outside Git." + "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", + "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", + "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", + "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", + "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", + "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", + "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." ], - "path": "evidence/receipts/native-ultracode-20260921.json" + "path": "blueprints/us-equities/simulation-research/receipt.json" }, { - "id": "native-dashboard-access-20260921", + "id": "native-tavily-cli-20260920", "kind": "native_cli_e2e", "component_ids": [ - "dagu", - "qdrant", - "agentsview", - "grafana", - "prometheus", - "ntfy", - "agent-browser", - "omniroute" + "tavily-cli", + "codex", + "claude-code" ], - "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", + "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", "limitations": [ - "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", - "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", - "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", - "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", - "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", - "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", - "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." + "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", + "Claude global skill listing is not a Claude model-turn execution of every skill.", + "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", + "Search/Extract results do not independently establish their source claims or a complete research deliverable.", + "No native lifetime or exact provider-token savings counter is established.", + "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." ], - "path": "evidence/receipts/native-dashboard-access-20260921.json" + "path": "evidence/receipts/native-tavily-cli-20260920.json" }, { - "id": "full-stack-convergence-20260921", + "id": "native-tavily-session-20260920", "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "ccusage", - "claude-code", - "codex", - "context-mode", - "dagu", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "loki", - "omniroute", - "openresearch", - "prometheus", - "qdrant", - "qmd", - "repomix", - "rtk", - "serena", - "socraticode", - "toon", - "vllm", - "worktrunk" + "tavily-cli" ], - "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", + "claim": "The current Desktop task received eight Tavily skill entries, loaded the Search/Extract skills, ran both upstream commands and extracted the official IBKR adapter prerequisites.", "limitations": [ - "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", - "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", - "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", - "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", - "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", - "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", - "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", - "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." + "Host-supplied active-task skill discovery is distinct from the prior fresh native-process probes. Only Search and Extract were exercised in this task.", + "The broad search returned three official IBKR sources but missed the intended Nautilus adapter guide; direct known-URL extraction supplied the needed evidence.", + "Extracted current documentation is a source check, not an executed broker connection or version-pinned adapter behavior.", + "No provider usage, per-skill performance comparison or lifetime token-saving counter is claimed." ], - "path": "evidence/receipts/full-stack-convergence-20260921.json" + "path": "evidence/receipts/native-tavily-session-20260920.json" }, { - "id": "memory-landscape-20260921", + "id": "native-terminal-profiles-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", "codex", - "claude-code" + "claude-code", + "qdrant", + "vllm" ], - "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", + "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", "limitations": [ - "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", - "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", - "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", - "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", - "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", - "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", - "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", - "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", - "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." + "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", + "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", + "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", + "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", + "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." ], - "path": "evidence/receipts/memory-landscape-20260921.json" + "path": "evidence/receipts/native-terminal-profiles-20260920.json" }, { - "id": "memory-landscape-lifecycle-20260921", + "id": "native-token-ci-github-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qdrant", - "vllm", - "serena", + "rtk", "qmd", - "codex", - "claude-code" + "repomix", + "toon" ], - "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", + "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", "limitations": [ - "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", - "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", - "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", - "Exact memory session/lifetime savings are not returned and remain null.", - "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" ], - "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" + "path": "evidence/receipts/native-token-ci-github-20260920.json" }, { - "id": "alpaca-paper-e2e-20260921", + "id": "native-token-ci-local-20260920", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "claude-code" + "rtk", + "qmd", + "repomix", + "toon" ], - "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", + "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", "limitations": [ - "One operational smoke trial, not profitable strategy or continuous trading acceptance.", - "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", - "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" ], - "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" + "path": "evidence/receipts/native-token-ci-local-20260920.json" }, { - "id": "nautilus-equity-replay-20260921", + "id": "native-token-clean-prefix-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "headroom", + "jcodemunch-mcp" ], - "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", + "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", "limitations": [ - "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", - "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", - "SPY/LEAN corporate-action parity and historical universe availability remain separate." + "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", + "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", + "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", + "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", + "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", + "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", + "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", + "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." ], - "path": "evidence/receipts/nautilus-equity-replay-20260921.json" + "path": "evidence/receipts/native-token-clean-prefix-20260920.json" }, { - "id": "foundation-convergence-20260921", + "id": "native-token-focus-clients-20260920", + "path": "evidence/receipts/native-token-focus-clients-20260920.json", "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", "context-mode", - "rtk", - "headroom", - "toon" - ], - "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", - "limitations": [ - "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", - "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", - "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", - "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", - "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." - ], - "path": "evidence/receipts/foundation-convergence-20260921.json" - }, - { - "id": "native-progress-capacity-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "loki", - "dagu" + "jcodemunch-mcp" ], - "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", + "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", "limitations": [ - "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", - "No client restart, service restart or physical reboot was performed or verified.", - "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", - "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", - "No live provider inference, account change, new dependency or upstream version change for this repair." - ], - "path": "observability/grand-dashboard/capacity-recovery-20260921.json" + "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", + "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", + "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", + "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", + "Raw private prompts, client streams, account identifiers and host paths are not published." + ] }, { - "id": "claude-upstream-checks-20260921", - "kind": "native_cli_e2e", + "id": "native-token-stack-final-20260920", + "kind": "native_model_e2e", "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "ast-grep", - "beads", - "ccusage", "claude-code", "codex", - "codex-for-claude", "context-mode", - "dagu", - "difftastic", - "gitleaks", - "grafana", - "headroom", "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcporter", - "nautilus-trader", - "openresearch", - "opentelemetry-collector-contrib", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", + "headroom", "rtk", - "serena", - "socraticode", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "opentelemetry-collector-contrib", + "loki", + "prometheus" ], - "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", + "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", "limitations": [ - "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", - "Complete originals remain private; public excerpts are bounded and sanitized.", - "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." + "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", + "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", + "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", + "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", + "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", + "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", + "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", + "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." ], - "path": "evidence/receipts/claude-upstream-checks-20260921.json" + "path": "evidence/receipts/native-token-stack-final-20260920.json" }, { - "id": "foundation-rd-20260921", - "kind": "native_model_e2e", + "id": "native-ultracode-20260921", + "kind": "native_cli_e2e", "component_ids": [ "claude-code", - "codex", - "codex-for-claude", - "qmd" + "context-mode" ], - "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", + "claim": "Claude Code 2.1.278 executed a Fable 5.1/xhigh native Workflow with Sonnet 5/medium and Opus 5/high workers returning results. The same coordinator resumed at high effort and completed a native same-host message round trip, source verification and one-shot idle notification with a separate Sonnet session. Native agent and restored workflow dashboards rendered the completed work.", "limitations": [ - "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", - "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", - "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", - "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", - "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." + "Read-only task contracts are not OS isolation; no writing-worker, mid-run cancellation, cross-host or reboot qualification.", + "Initial worker classifications were inaccurate and corrected after independent source review; both worker outputs exceeded their requested word contracts and one schema retry occurred.", + "Native worker identity was observed in child messages; choices are not a comparative quality or token-cost benchmark.", + "Same-host messaging and idle notification only; permission-mismatch behavior, delivery failures, retries and persistent scheduling were not tested.", + "Updated maintenance configuration is not proof of its next timed execution; no new recurring Claude loop was created.", + "Two native success events share cumulative model usage; no causal savings or exhaustive provider-accounting claim.", + "Native PTY rendering and process observations were recorded by the coordinator; message and workflow traces received independent read-only audit. Private raw logs and identifiers remain outside Git." ], - "path": "evidence/receipts/foundation-rd-20260921.json" + "path": "evidence/receipts/native-ultracode-20260921.json" }, { - "id": "claude-foundation-finalization-20260921", + "id": "native-worker-cgroup-20260920", "kind": "native_model_e2e", "component_ids": [ "claude-code", - "codex", - "agent-browser", - "repomix" + "systemd" ], - "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", + "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", "limitations": [ - "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", - "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", - "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", - "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." + "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", + "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", + "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", + "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", + "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." ], - "path": "evidence/receipts/claude-foundation-finalization-20260921.json" + "path": "evidence/receipts/native-worker-cgroup-20260920.json" }, { - "id": "adaptive-paper-practice-20260921", + "id": "native-worker-containment-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "claude-code", - "codex" + "systemd", + "claude-code" ], - "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", + "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", "limitations": [ - "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", - "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", - "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", - "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." + "Deterministic cgroup proof is not successful native child crash/resume acceptance.", + "Earlier same-child continuation still required explicit direct descendant cleanup.", + "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." ], - "path": "evidence/receipts/adaptive-paper-practice-20260921.json" + "path": "evidence/receipts/native-worker-containment-20260920.json" }, { - "id": "broad-universe-research-20260921", - "kind": "native_cli_e2e", + "id": "native-worker-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "alpaca-py", - "duckdb", - "claude-code", - "codex" + "claude-code" ], - "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", + "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", "limitations": [ - "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", - "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", - "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", - "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", - "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." + "One synthetic local fixture and one physical WSL host, not arbitrary application state.", + "Actual native child identities and paths remain private; hashes bind retained streams.", + "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", + "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", + "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", + "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", + "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." ], - "path": "evidence/receipts/broad-universe-research-20260921.json" + "path": "evidence/receipts/native-worker-recovery-20260920.json" }, { - "id": "ultracode-token-routing-20260921", + "id": "native-worker-supervision-20260919", + "path": "blueprints/us-equities/worker-supervision/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex" + "systemd" ], - "claim": "Claude Code 2.1.278 native Workflow stages re-routed to lean project agents cut the provider-returned first-request prompt from 42,396 tokens (default child) to 12,164 (named MCP grants behind ToolSearch) and 8,048 (source-scout) on one identical task; eight native review runs, two readiness audits, a builder run and probes plus one Codex cross-family review are retained as sanitized usage receipts; Haiku was not routed after an Opus-verified 9/14 versus 14/14 extraction trial; workflowSizeGuideline moved from small to unrestricted with a task sizing rule.", + "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", "limitations": [ - "First-prompt figures come from one tiny task on one host and model; they bound a fixed spawn cost, not a savings rate.", - "The Haiku judgment rests on one packet and one Opus verifier.", - "The strict accepted envelope status was never returned in the deploying project; the commit gate was fix-and-commit after each review's findings were resolved.", - "Local suites are stubbed or synthetic; provider figures reach the receipts only as sanitized child-usage.mjs output, with raw transcripts outside Git.", - "Codex thread and turn identifiers were redacted from the cross-review record." - ], - "path": "evidence/receipts/ultracode-token-routing-20260921.json" + "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", + "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", + "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", + "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", + "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", + "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", + "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", + "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", + "Hashes bind retained evidence bytes; they do not independently attest the execution.", + "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", + "Configured resource limits were inspected, not saturation-tested." + ] }, { - "id": "portable-claude-native-qualification-20260921", + "id": "native-workflow-graceful-recovery-20260921", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "prometheus" + "claude-code" ], - "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", + "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", "limitations": [ - "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", - "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", - "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", - "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", - "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." + "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", + "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", + "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", + "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." ], - "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" + "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" }, { - "id": "sota-convergence-20260922", - "kind": "historical_inventory", + "id": "native-workflow-writing-comparison-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "apple-container", - "ast-grep", - "beads", - "ccusage", - "claude-code", - "claude-hud", - "codebase-memory-mcp", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "fastapi", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "llama-cpp", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nextjs", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "playwright-cli", - "playwright-test", - "poppler", - "postgresql", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "react", - "repomix", - "restic", - "rtk", - "sandbox-runtime", - "serena", - "shanraisshan/claude-code-best-practice", - "shellcheck", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "claude-code" ], - "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", + "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", "limitations": [ - "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", - "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", - "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", - "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." + "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", + "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", + "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." ], - "path": "evidence/receipts/sota-convergence-20260922.json" + "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" }, { - "id": "claude-repository-evidence-20260921", + "id": "native-wsl-restic-synthetic-20260920", "kind": "native_cli_e2e", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "alpaca-py", - "ast-grep", - "beads", - "ccusage", - "claude-code", - "claude-hud", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "duckdb", - "edgartools", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nautilus-trader", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "pandas", - "playwright-cli", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "restic", - "rtk", - "sandbox-runtime", - "serena", - "shellcheck", - "skfolio", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "restic" ], - "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", + "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", "limitations": [ - "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", - "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", - "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", - "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", - "Superseded observations, including the author's own probe and invocation errors, remain recorded." + "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", + "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", + "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", + "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", + "No token, storage-efficiency or backup performance claim.", + "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", + "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", + "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", + "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", + "Ten offline oracle/guard tests are distinct from the actual native restic commands." ], - "path": "evidence/receipts/claude-repository-evidence-20260921.json" + "path": "blueprints/convergence-practice/wsl-restore/receipt.json" }, { - "id": "github-automation-newpc-20260922", + "id": "nautilus-equity-replay-20260921", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code" + "nautilus-trader" ], - "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", + "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", "limitations": [ - "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", - "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", - "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", - "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", - "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", - "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." + "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", + "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", + "SPY/LEAN corporate-action parity and historical universe availability remain separate." ], - "path": "evidence/receipts/github-automation-newpc-20260922.json" + "path": "evidence/receipts/nautilus-equity-replay-20260921.json" }, { - "id": "exchange-calendars-native-check-20260922", - "kind": "native_cli_e2e", + "id": "new-wsl-embedding-model-20261002", + "kind": "native_model_e2e", "component_ids": [ - "exchange-calendars" + "huggingface-hub-native" ], - "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", + "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02 and 2026-10-03, with the generation model swift-iq3s-s2o-64k resident, the preregistered comparison for the new WSL's embedding model gave the slot to E1: qwen3-embedding:0.6b (Q8_0, Ollama library manifest ac6da0dfba84a81fdbfbaf330198c33cd77c4cdfc53e8bc50eb581914a15621d) on Ollama 0.35.0 as qwen3-embedding-8k (num_ctx 8192). On MTEB 2.22.1's CQADupstackUnixRetrieval (test split: 47,382 documents, 1,072 queries) its nDCG@10 was 0.49827 against 0.41394 for EmbeddingGemma on the same server: E1 minus E2 0.084331, 95% paired bootstrap interval over queries 0.067738 to 0.100656 (10,000 resamples, seed 20260927). Nemotron-3-Embed-1B, which needs a second model server, scored 0.5014; E3 minus E1 was 0.003124 with an interval of -0.012194 to 0.018141 that includes zero, so by the second-server rule it does not take the slot. WeMM-Embedding-2B passed the fit gate but ran out of GPU memory in its full run and is out. The reranking condition was not run.", "limitations": [ - "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", - "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", - "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", - "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", - "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." + "One public retrieval task (CQADupstack Unix: English technical questions from a StackExchange forum), one workstation, one throwaway distribution, one run per arm: a local integration check, not an acceptance on the destination distribution.", + "Nemotron's tie holds for this task only; multilingual retrieval, longer documents and other domains were not measured.", + "The two Ollama arms are GGUF conversions served by the one model server; a difference from the reference weights is a difference of the systems, not of the models alone.", + "E1's and E2's prompts are MTEB's reference prompts as observed with a stub before the runs (amendment 4a): E1 sends the Qwen3 instruction before queries and nothing before documents; E2 sends EmbeddingGemma's query and document prompts.", + "Gate F reads the model server's listing: in window pb2 the card's memory in use fell between steps while the server kept listing the generation model entirely on the GPU, consistent with the Windows driver moving part of it off the card, so E3 passing gate F does not show co-residency. In window pb1 the readings matched the resident models, so E1's co-residency with the generation model is supported by both readings.", + "E4's first error text was lost: after its evaluation failed out of memory, the script's memory query raised the same sticky CUDA error and the outer handler replaced the text; the outcome is not in doubt, because only the evaluation's handler sets out_of_memory.", + "The reranking condition was not run: no installed retrieval owner can call an external reranker (QMD reranks in-process with its bundled model), and zerank-2 (7.49 GiB of weights) cannot be resident beside the generation model on this card.", + "Recorded, not deciding: evaluation time E1 1,166 s, E2 771 s, E3 460 s (E3 in-process, not comparable with the Ollama arms); resident sizes E1 2,857,191,341 bytes and E2 681,417,113 bytes.", + "manifests/stack.json has no Ollama or MTEB component; component_ids name huggingface-hub-native, the native route for the revision-pinned snapshots of E3 and E4, which the measurement downloaded through the huggingface_hub library at MTEB's registered revisions (its version is in the throwaway's freeze list, which was not retained).", + "The 31 MB prediction files and the run records stay private and are listed by sha256 in files.json; the published per-query nDCG@10 files reproduce the decision statistic.", + "With a server-wide context of 64,000 the embedder loaded at its full context and took 5.78 GB (Part A, A1b); the measured system sets the context per model (qwen3-embedding-8k, 8,192 tokens), never server-wide." ], - "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" + "path": "evidence/artifacts/new-wsl-local-models-20261002/part-b-receipt.json" }, { - "id": "adoption-macos-hosted-smoke-20260922", - "kind": "native_cli_e2e", + "id": "new-wsl-local-generation-model-20261002", + "kind": "native_model_e2e", "component_ids": [ "codex", - "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "claude-code" ], - "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", + "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02, the preregistered comparison for the new WSL's local generation model gave the slot to S2o: Swift-1.5-Qwen3.8-27B IQ3_S (ukisai/Swift-1.5-Qwen3.8-27B-GSQ-RCO-GGUF at revision d74895bbe5db4bec1e0024e7cc87d59c02d7631a, file sha256 1333c6ea70ef348d4ac6d62732772e8ad6571ac5b3754c14ed54f1a0d904a786, 11,771,546,912 bytes) on Ollama 0.35.0 as swift-iq3s-s2o-64k (context 64,000). On the same 100 BFCL simple_python cases (inspect-evals 0.23.0 on Inspect AI 0.3.273) through the server's chat and responses surfaces, its first-pass valid tool calls were 200 of 200 against 175 of 200 for the control gpt-oss:20b: difference 0.125, 95% paired bootstrap interval over cases 0.065 to 0.19 (10,000 resamples, seed 20260927), not a tie. Both arms were entirely on the GPU with the embedder resident in the order of use, and both passed 10 of 10 client tasks (Codex 0.160.0 and Claude Code 2.1.287). Bonsai PTQ1_0, Bonsai PQ2_0 and Swift on PrismML's llama.cpp server failed the function gate (0 of 3 runs each: the server skips the Codex client's namespace tool type), and qwen3.8:27b was not entirely on the GPU at 64,000 tokens.", "limitations": [ - "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", - "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", - "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", - "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", - "socraticode is the profile's documented unpinned skip and was not installed." + "One workstation, one throwaway distribution, one run per case and arm: a local integration check of the systems named, not an acceptance on the destination distribution.", + "First-pass tool-call validity on 100 simple public cases (BFCL simple_python) through two interfaces; nothing about coding quality, long tasks, throughput under concurrent requests or behaviour above 64,000 tokens.", + "The Anthropic-style messages surface was not evaluated through the package (Inspect AI 0.3.273 cannot read this thinking model's answer); it was exercised only by Claude Code in the client tasks, which both arms passed.", + "S2o was slower in these runs: 292 and 303 seconds for 100 cases on chat and responses against 100 and 139 for the control, and 43.1 against 108.9 output tokens per second on single long prompts that were not run as a speed comparison.", + "S2o leaves less GPU memory free: 21,579 of 24,564 MiB in use with the embedder resident while Windows applications held about 2,600 MiB; earlier the same day they held up to about 5,900 MiB, at which the same load would leave under one GB. Co-residency on a busier desktop and on the destination distribution is not measured.", + "The Ollama import is this measurement's system, not a route the publisher documents: the library qwen3.8:27b model's renderer, parser, parameters, template and licence lines with the Swift file as FROM. The publisher's own route (llama.cpp's server, here PrismML's fork) failed the function gate for a reason that lies in that server. The quantization's card says its quality tests used a 512-token context.", + "The arm that took the slot was added by the preregistration's extension (amendment 3) after the owner asked for the newest releases; the deciding measurement as the critic named it had two arms (qwen3.8:27b and gpt-oss:20b), the earlier result for gpt-oss:20b is kept as a historical result, and gpt-oss:20b ran A2 as the control under the same rules.", + "Three deviations are recorded (a void first window, the Codex client's model name with its tag, a reused label); none changed a case, a limit, the metric or the rule, and none was decided on an outcome.", + "Recorded, not deciding: the package's own score (S2o 97 and 95 of 100, the control 83 and 83) and the client tasks (10 of 10 for each arm).", + "manifests/stack.json has no Ollama, Inspect AI or PrismML llama.cpp component, so component_ids name the two clients that ran the client tasks (Codex also ran the function gate); they ran at Codex 0.160.0 and Claude Code 2.1.287, not at the stack's recorded 0.159.3 and 2.1.284.", + "Raw model outputs (the Inspect logs, the client run records, the server logs) stay private and are listed by sha256 in files.json; the published per-case validity files carry case ids, verdicts, reasons and timings, and the decision statistic reproduces from them.", + "The Swift file's licence is the publisher's own (Swift Open License v1.0, with the original Qwen parts under Apache-2.0); the Modelfile's LICENSE block is the library model's Apache-2.0 text. Recorded, not judged." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" + "path": "evidence/artifacts/new-wsl-local-models-20261002/part-a-receipt.json" }, { - "id": "catalog-freshness-20260923", - "kind": "upstream_provenance", + "id": "nextjs-1638-qualification-20261001", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "llama-cpp", - "mcp-inspector", - "openresearch", - "skfolio" + "nextjs" ], - "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-10-01, the application-delivery recipe was qualified at Next.js 16.3.8 (tag v16.3.8, commit b0fad0d45eb4c4430fda5eeeb442e8a5af08a5f6, released 2026-09-30T16:13:46Z), whose release notes list seven security advisories, the most severe GHSA-cjq9-62q9-8jv4 (high: server-side request forgery in Image Optimization). The two-file patch (package.json and pnpm-lock.yaml, sha256 570ac44d237b6641a5087fe57b079aaf61dcb781b6496a721b0224dd17ea60d0) changes next, @next/env and the eight @next/swc-* lock entries, every other lock entry byte-identical. With Node v24.21.0 and pnpm 12.4.2 the frozen install, the peer check, the typecheck and the production build each exited 0 (recorded at 16:07:49Z), after a first frozen install at 12:13Z exited 1 with ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION for the ten packages published on 2026-09-30; no exclusion or policy change was made.", "limitations": [ - "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", - "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", - "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", - "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." + "Bounded recipe checks only: make verify with its PostgreSQL, API and browser stages was not run, so the 2026-09-20 receipts still qualify 16.3.5, not 16.3.6 or 16.3.8.", + "The pnpm store, node_modules and build cache were warm from the earlier attempt; no cold-store install is claimed.", + "This recipe's exposure to the seven advisories was not established; the move removes the vulnerable versions from its lock.", + "Labels 15 to 17 are the version prints of Node and pnpm and a git diff check; they are metadata, not acceptance.", + "No new-host install ran: that is unit U10 on the new distribution. Provider usage of the builder is unknown." ], - "path": "evidence/receipts/catalog-freshness-20260923.json" + "path": "evidence/receipts/nextjs-1638-qualification-20261001.json" }, { - "id": "adoption-macos-hosted-smoke-20260923", + "id": "notification-types-20260929", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "claude-code" ], - "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", "limitations": [ - "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", - "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", - "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", - "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." + "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", + "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", + "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", + "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", + "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", + "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", + "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", + "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", + "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" + "path": "evidence/receipts/notification-types-20260929.json" }, { - "id": "wsl-retrieval-20260920", - "kind": "historical_inventory", + "id": "ns2604-e2e-20261004", + "kind": "native_model_e2e", "component_ids": [ - "ast-grep", - "qmd" + "claude-code", + "codex", + "omniroute" ], - "claim": "Incomplete historical WSL fixture reference: selected receipts report 22 source checks/six commands and 70 QMD lexical checks/17 commands. Offline byte and result consistency can be checked, but missing command argv/cwd, unrecovered raw logs and unsupported historical QMD installation prevent native E2E or adoption acceptance.", + "claim": "The historical 2026-10-04 foundation E2E covered 15 units and 80 slots through native executor observations, independent model review and 22 adjudications. Final labels are READY 18, PARTIAL 31, FAIL 2, BY_DESIGN 12 and INTERIM 17, with zero unjudged slots. Readiness is (18 + 12) / 80 = 37.5%, rounded half up to 38%; all 22 executor/reviewer disagreements were adjudicated, with 14 keeping the reviewer's status and 8 taking the executor's. This publication independently checks and sanitizes the retained status chains; it does not repeat host or provider execution. The adjudication prompt as run, claude-opus-5-5 at max effort with evidence-reviewer run records and timestamps, and the separate 33-slot fix list are retained.", "limitations": [ - "Historical reference only; not live verification, native E2E acceptance or adoption evidence. No new host/native/client acceptance follows from these artifacts.", - "Historical command facts omit argv and cwd. Exact raw-log locations are unavailable; no invocation was reconstructed or represented as observed.", - "The unchanged historical install receipt records npm --ignore-scripts --omit=optional. Future installation must use the current supported recipe with NODE_LLAMA_CPP_SKIP_DOWNLOAD=true and required dependency scripts enabled.", - "Both executed runner versions and the initial URI-checker failure are retained byte-for-byte. The future runner adds command provenance capture without changing past evidence.", - "Receipt-reported 22/70 checks and 6/17 commands describe selected local/synthetic fixtures. Five failed-attempt commands remain separate; no upstream-suite, semantic RAG, production, client or service acceptance.", - "Source currency remains September 20; offline completion and review do not refresh releases or native execution. Whole-task provider usage is unknown and no savings claim is made." + "Host state is as of 2026-10-04 19:10\u201320:10Z only; later adjudication and source merge timestamp 2026-10-04T20:26:16Z do not extend that observation window. Publication and repair perform artifact inspection and structural checks in the owned sandbox; they do not repeat native host probes.", + "Fixes are pending. The 33 PARTIAL/FAIL slots after adjudication are not accepted as ready: 25 repository-plan and 8 host fixes (evidence/artifacts/ns2604-e2e-20261004/fixes.json). Four INTERIM token slots (context-supply, command-output, output-compression, code-index) are held for PR #684, which has not merged. The two open token slots have separate fixes: ccusage (FAIL, plan) and statusline (PARTIAL, host).", + "This is not an upstream benchmark. Native executor observations, independent model judgments and adjudication are separate from upstream tests, structural checks, independent host replication and measured quality or token improvement.", + "The 17 INTERIM slots are held by design. They remain in the denominator and contribute zero to the readiness numerator; the 12 BY_DESIGN slots are intentional dispositions rather than proof that their tools executed.", + "Adjudication: claude-opus-5-5 at effort max (evidence-reviewer), prompt template as run in evidence/artifacts/ns2604-e2e-20261004/adjudication-prompt.md. Run wf_8bf450a9-d1e (17 agents) started 2026-10-04T20:06:45Z and completed 2026-10-04T20:20:30Z; run wf_cdbf70a0-02c (5 agents) started 2026-10-04T20:08:29Z and completed 2026-10-04T20:19:31Z.", + "Historical source command excerpts and raw conversations remain private. Public reasons are bounded to 60 words, fixes preserve the merge's 900-character bound before sanitization, and citations are limited to four per slot. Hashes establish byte identity, not success or adequacy of every native acceptance claim.", + "Reviewer records report the requested gateway model cx/gpt-6.1-sol-max and max effort; no resolved backend model identity is inferred. Independent model review is review of retained evidence, not independent execution on the host.", + "The coordinator registers all eight published files in manifests/evidence.json in the PR's final registry-only commit, and full repository validation passes at that head. Per-file scans and local receipt tests are structural evidence only." ], - "path": "evidence/receipts/wsl-retrieval-20260920.json" + "path": "evidence/receipts/ns2604-e2e-20261004.json" }, { - "id": "gitleaks-macos-memory-bound-20260924", - "kind": "native_cli_e2e", + "id": "omniroute-3851-npm-qualification-20260930", + "kind": "compatibility_attempt", "component_ids": [ - "gitleaks" + "omniroute" ], - "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", "limitations": [ - "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", - "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", - "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", - "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", - "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", - "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", - "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." + "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", + "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", + "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", + "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", + "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", + "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", + "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", + "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", + "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." ], - "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" + "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" }, { - "id": "env-freshness-wsl-ubuntu-main-20260924", - "kind": "artifact_measurement", + "id": "omniroute-claude-callsite-20260930", + "kind": "native_model_e2e", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "duckdb", - "pandas", - "edgartools", - "exchange-calendars", - "vllm" + "claude-code", + "codex", + "omniroute" ], - "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", + "claim": "A native Claude Opus5.5/Max coordinator discovered and read the project dispatcher, invoked the official Sol-Max Codex SDK worker through native Bash, and the retained original shows one unchanged fixture test with exit0.", "limitations": [ - "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", - "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", - "One host; each PC publishes its own report under the same schema.", - "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." + "One bounded read-only callsite and existing arithmetic oracle; no universal quality or SDK winner claim.", + "Coordinator tool scope was Bash/Read/Skill for this acceptance; other coordinator tools and optional MCP services are not qualified.", + "Native Claude and external Codex SDK usage remain separate scopes; parent list-price cost is not complete provider billing.", + "The separate Claude SDK Devin bridge remains failed/unqualified; this native Claude-account coordinator run does not promote it.", + "Provider backend identity, overall task usage, failed/interrupted calls, remote cancellation and token savings remain unverified." ], - "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" + "path": "evidence/receipts/omniroute-claude-callsite-20260930.json" }, { - "id": "vllm-030-switch-20260925", + "id": "omniroute-runtime-enhancements-20260930", "kind": "native_model_e2e", "component_ids": [ - "vllm", - "socraticode" + "codex", + "omniroute", + "context-mode", + "serena", + "dagu" ], - "claim": "vLLM 0.30.0 now serves the production Nemotron-3-Embed-1B-BF16 embeddings on the NativeStack WSL2 RTX 4090 host. Qualified first on an owned instance against production 0.25.0 (identical model files, flags and route), then switched by a systemd drop-in that changes only the binary path; the live service returned identical embeddings and identical top-10 code-index results after the switch.", + "claim": "A scoped native Codex SDK Sol-Max worker completed skill use, selected Context Mode/Serena MCP calls, one Astra-Max native judge and an unchanged oracle through OmniRoute in a successful bounded Dagu graph.", "limitations": [ - "One host (NativeStack, RTX 4090, WSL2 Windows driver 616.64) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", - "Retrieval equality covers 8 gate texts and 5 live code-index queries (top-10), not an aggregate retrieval-quality benchmark.", - "0.30.0 relies on its pinned-memory fallback for WSL (PR #56908); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", - "The 0.25.0 prefix is kept for rollback; the base unit still names it and only the drop-in points at 0.30.0." + "One unchanged arithmetic fixture and bounded integration; no universal highest-quality model, framework or SDK ranking.", + "169 enabled skills were visible through native discovery. This run read using-superpowers and exercised three selected MCP calls; it does not qualify every installed skill, tool, language server, plugin or hook.", + "Native hook support and live web search are configured, but their execution is unmeasured here. No scheduler, schedule, hook or global account configuration was installed by this kit.", + "Native parent and child cumulative usage are separate scopes. Cached input and reasoning are subsets; observer response counters corroborate the same usage and must not be added. Failed/interrupted and complete provider usage, billing and token savings remain unknown.", + "Each observed completed stream also has an unclassified flow_error record. Native results completed; transport is not described as error-free, and requested model/provider labels are not backend identity attestation.", + "The separate Claude SDK Devin bridge retains its failed/unqualified status. Earlier native Claude-to-SDK acceptance is a historical separate callsite, not a rerun against this source.", + "The follow-up native Claude cooperation session was stopped after no confirmed SendMessage/final packet; no peer approval or new owner-contact count is claimed.", + "The isolated kit is a scoped private worker configuration. Live owners retain shared worker policy, host-wide catalogs/defaults and dashboard checkpoint ownership." ], - "path": "evidence/receipts/vllm-030-switch-20260925.json" + "path": "evidence/receipts/omniroute-runtime-enhancements-20260930.json" }, { - "id": "rtk-050-qualification-20260925", - "kind": "native_cli_e2e", + "id": "omniroute-runtime-workers-20260930", + "kind": "native_model_e2e", "component_ids": [ - "rtk" + "codex", + "claude-code", + "omniroute" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", + "claim": "The retained official Codex SDK Sol-Max worker passed one upstream coding fixture, native resume and fresh recovery through the selected OmniRoute Responses lane. Interrupted usage and Claude bridge qualification remain unknown/failed.", "limitations": [ - "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", - "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", - "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", - "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", - "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", - "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", - "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." + "One arithmetic fixture and lifecycle acceptance; no universal SDK or model quality ranking.", + "Actual provider trials invoked the SDK from root, rather than through a Claude coordinator. Native project dispatch skill is supplied and structurally checked; its coordinator invocation remains unmeasured.", + "Native Codex SDK remains the incumbent. The separate frozen three-arm SDK gate remains unresolved.", + "Native gateway requested/returned model labels are not backend attestation.", + "All 136 skills are available in the owned project, with two bodies exercised; full role coverage and optional service acceptance remain incomplete.", + "Native Codex repeated in-process fixtures emit stdout/stderr ResourceWarnings; standalone per-invocation child exit is qualified separately.", + "Complete provider usage, spending, remote cancellation and token savings remain unknown.", + "Public record is sanitized selected actual return fields and independent observations; original private returned artifacts remain outside the checkout." ], - "path": "evidence/receipts/rtk-050-qualification-20260925.json" + "path": "evidence/receipts/omniroute-runtime-workers-20260930.json" }, { - "id": "markitdown-018-qualification-20260925", - "kind": "native_cli_e2e", + "id": "omniroute-sdk-worker-0160-20261003", + "kind": "native_model_e2e", "component_ids": [ - "markitdown" + "codex", + "omniroute", + "context-mode" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", + "claim": "The SDK 0.160.0 B3 review candidate addresses all five PR #628 bot findings and passed twelve of twelve twenty-five-test native loopback fixture invocations, 26 local Claude SDK tests, six observer tests and final Ruff checks. Each reported bug has a retained failing-before-repair command and a passing counterpart. B2 metadata preflight and the earlier builder/coordinator live observations remain historical; no B3 live model task ran. Writing dispatch, live keyed-shell/search qualification and backend effort remain unobserved.", "limitations": [ - "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", - "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", - "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", - "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", - "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", - "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", - "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", - "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." + "Authored loopback SSE fixtures, local Claude SDK tests and observer tests are integration/synthetic checks, not unchanged upstream suites or provider-model trials.", + "The pre-B2 builder live task returned the correct data while two native shell attempts failed in its enclosing Codex sandbox and a Context Mode call failed with Transport closed. A separate coordinator, outside a nested Codex sandbox, observed read-only shell success at that candidate. The repaired bytes have no new live-model run; error-free MCP transport and writing (workspace-write) dispatch remain unqualified at 0.160.0.", + "Plugin disabling is the selected native feature gate. Tests observe direct app-server PID termination and absence of clone directories; descendant cleanup and global non-loopback egress are not observed.", + "Metadata preflight submits no inference. No skill was installed in the new private home and no --require-skill was used; inherited/project catalog discovery does not qualify every skill or tool.", + "Requested model/Max effort and live catalog entry are observed; gateway-forwarded effort, backend model identity, complete provider usage, cost, remote cancellation and token savings remain unknown.", + "September 30 receipts and original observations remain historical. This refresh does not rerun the historical coding oracle, Claude callsite, Astra judge, Dagu graph or unchanged upstream SDK suite.", + "Exactly pinned private SDK preflight/PID attributes require review on every pin move. Stable Python SDK and experimental, unsupported-for-production app-server are separate support boundaries.", + "Expected ResourceWarning messages and argparse rejection output remain in private fixture logs. Long-lived SDK pools, alternative approval modes, alternate binary, credential-variable path, workspace-write live execution and scheduled Dagu acceptance remain unqualified.", + "Initial Ruff failure exits are retained from native task returns, but exact full output/timing was not saved. Repository validators prove declared consistency, not the truth of provider or historical claims.", + "Earlier checkout and alternate-index validation failures are retained as before-B2 attempts. The coordinator force-added the project skill to the real index; B2 acceptance uses that actual checkout index. Historical source archive acceptance does not replace current checkout acceptance.", + "If the cleanup bound expires during retained startup or close, cleanup_status is unresolved and the CLI exits nonzero. Continued deferred cleanup is observed only while the embedding event loop remains running; no post-bound standalone cleanup or remote termination guarantee is made.", + "B3 repairs have local regression/configuration acceptance only: no live model tasks, keyed gateway shell trial, standalone search endpoint trial or native Claude connect fault injection. The native SDK retains its own shielded cleanup/transport bounds; wrapper grace does not override them." ], - "path": "evidence/receipts/markitdown-018-qualification-20260925.json" + "path": "evidence/receipts/omniroute-sdk-worker-0160-20261003.json" }, { - "id": "ai-memory-240-qualification-20260925", + "id": "openresearch-0215-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "openresearch" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", - "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", - "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", - "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", - "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", - "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", - "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" }, { - "id": "mcporter-0141-qualification-20260925", + "id": "otelcol-contrib-0162-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "mcporter" + "opentelemetry-collector-contrib" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", "limitations": [ - "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", - "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", - "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", - "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", - "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", - "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" }, { - "id": "ai-memory-241-qualification-20260925", + "id": "playwright-cli-0122-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "playwright-cli" ], - "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", - "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", - "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", - "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", - "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", - "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", - "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" }, { - "id": "headroom-039-qualification-20260925", + "id": "portable-claude-native-qualification-20260921", "kind": "native_cli_e2e", "component_ids": [ - "headroom" + "claude-code", + "codex", + "prometheus" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, headroom-ai 0.39.0 was qualified against the pinned 0.37.0 and not switched; production stays on 0.37.0. Tag v0.39.0 is 66f426171bab32692cf93d2b656a8e4be9004186 and contains d971f7c3 (#3748; compare behind_by 0). Its manylinux_2_28_x86_64 wheel (14,199,952 bytes, sha256 8c7594012ce0dcd28202af471fb1bd08c6f226c8e10fc6a682b3fb233e809a74) matched PyPI JSON, the PyPI simple API and the GitHub release asset, and was installed with uv into the new prefix tools/headroom-ai-0.39.0; 555 of 555 headroom/ RECORD digests match the verified wheel and `headroom --version` printed 'headroom, version 0.39.0'. The unchanged upstream test file tests/test_transforms/test_content_detector_timestamp_search.py (blob 23b66a27) passed 6 of 6 on 0.39.0 and 4 of 6 on 0.37.0. Through `headroom mcp serve --proxy-url http://127.0.0.1:1` over stdio, 0.39.0 listed headroom_compress, headroom_retrieve and headroom_stats; compressed the 600-line ISO-timestamped fixture A 16820 -> 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", + "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", "limitations": [ - "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", - "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", - "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", - "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", - "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", - "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", - "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", - "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." + "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", + "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", + "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", + "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", + "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." ], - "path": "evidence/receipts/headroom-039-qualification-20260925.json" + "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" }, { - "id": "vllm-030-switch-laptop-20260926", - "kind": "native_model_e2e", + "id": "portable-cli-artifacts", + "kind": "native_cli_e2e", "component_ids": [ - "vllm", - "socraticode", - "ai-memory" + "shellcheck", + "difftastic", + "markitdown", + "ast-grep", + "toon", + "repomix" ], - "claim": "vLLM 0.30.0 was qualified on this laptop (WSL2, RTX 5090 Laptop GPU 24GB) as a drop-in candidate for the production Nemotron-3-Embed-1B-BF16 embedder (vLLM 0.25.0), then switched into production by a systemd --user drop-in that changes only the ExecStart binary path and PATH. Of the six qualification gates: (a) gate-text cosine, (c) batch invariance and (e) ai-memory vector reconstruction passed their pass bars; (b) mini-corpus retrieval and (d) live-code-index retrieval met top-10 SET identity on every query and trial (b: 40/40, d: 20/20 query-trials) but failed their strict top-10 ORDER bar in 3 of 4 trials each; (f) latency is report-only, with no pass bar. A prod-vs-prod control run (candidate never started) shows the same order-swap behavior already exists in production alone: gate b had 6 of 50 mismatched query-trials for the candidate (including an earlier, superseded run) against 10 of 80 for production compared with itself; gate d had 3 of 20 against 4 of 40; production against itself even had a worse single trial (6 of 10 identical) than any candidate trial. Gate (c)'s batch-invariance minimum cosine (0.9999562552851937) was bit-for-bit identical between production alone and the candidate, on the same minimizing text. The production switch itself re-checked only 30 gate texts (cosine 0.9999999999999998 before vs after) and confirmed dependents (ai-memory's vector stream, SocratiCode search); it did not re-run a post-switch top-10 retrieval check.", + "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", "limitations": [ - "One host (laptop, RTX 5090 Laptop GPU 24GB, WSL2) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", - "Retrieval equality covers 30 gate texts (a), a 50-paragraph mini-corpus over 10 queries (b), and 5 live code-index queries (d), not an aggregate retrieval-quality benchmark. Gates b and d met top-10 content-SET identity on every query and trial (b: 40/40 query-trials across the 4 recorded trials, plus full set overlap on one earlier superseded run; d: 20/20 query-trials) but did not meet strict top-10 ORDER identity on every trial (that earlier superseded run's own order count was 9 of 10). Counting every recorded run: gate b had 6 of 50 candidate query-trials with an order mismatch against 10 of 80 for a prod-vs-prod control (candidate never started, run twice -- an earlier, superseded control and the current one -- both included since only the second run's own prod_score diagnostic sub-field needed a fix, not its order counts); gate d had 3 of 20 against 4 of 40. Production compared with itself had a worse single trial (6 of 10 identical, i.e. 4 mismatched) than any candidate trial (worst: 7 of 10 identical, 3 mismatched), so this order-swap behavior is pre-existing production batching noise, not attributable to the 0.30.0 upgrade. The swap-gap range is 3.5e-05 to 8.2e-04 across all 23 recorded swaps (candidate run and both control runs combined), far smaller than the ~0.02-0.05 gaps between other adjacent ranks in the same rankings.", - "The reference receipt's own qualification-time number for this style of check (mini_corpus_top10_overlap, '10/10 on each of 10 queries') is a content-SET overlap claim, not a strict-order claim; it does not report whether its own order matched on every query, so gate (b)'s order tracking here is additional detail, not a comparison against a reported order result. The reference receipt's one reported ORDER number (production_switch.code_queries_identical_top10_order, '5/5') comes from its own post-switch production check with 5 live code queries, a different procedure from this run's own gate (d) qualification check (5 queries against the live SocratiCode index, run before any switch); the two are not directly comparable, and this run made no post-switch top-10 check of its own (see production_switch below: only 30 gate texts and a cosine value were re-checked after the switch) -- unlike the reference, which also re-checked 5 code queries' top-10 order after its own switch (that same code_queries_identical_top10_order, '5/5').", - "0.30.0 relies on its pinned-memory fallback for WSL (vllm-project/vllm PR #56908, the same warning the reference receipt's owned instance logged); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", - "The 0.25.0 unit is kept for rollback; only a drop-in override (nemotron-embed-agent-lab.service.d, ExecStart and PATH only) points production at 0.30.0.", - "A diagnostic-only bug in this run's own gate (b) script (prod_scores_by_idx had score and index reversed) made the order_diff_detail[].prod_score sub-field in every candidate-vs-prod gate (b) file (gate_b_result.json and gate_b_trial{1,2,3}.json) and in the first, superseded prod-vs-prod control unreliable; it did not affect any cosine value, top-10 set, or pass/fail boolean -- only that one diagnostic sub-field -- and was fixed before the second, current prod-vs-prod control run. See raw/ERRATUM-gate_b-order_diff_detail-prod_score-bug.txt.", - "results.json's own generated prose has two internal inconsistencies against its own structured fields, corrected in this receipt from the underlying per-trial gate files (raw/gate_b_result.json, gate_b_trial{1,2,3}.json, gate_d_result.json, gate_d_trial{1,2,3}.json): its gate (b) finding text lists strict-order counts as '9, 7, 9 and 10' where the adjacent structured array and the per-file queries_with_identical_order fields agree on '10, 9, 7 and 9' (same four numbers, wrong order in the prose only); its gate (d) finding text says strict order held on '3, 5, 4 and 4' of 5 queries where the adjacent structured array and the per-file queries_identical_count fields agree on '4, 5, 4 and 4'.", - "The laptop's vllm-0.30.0 prefix pre-existed this run (never pip-installed into by this task, per its own instructions), so no direct_url.json or install log exists on this host to independently re-hash its wheel; the pin identity below is the value the workstation's own switch receipt recorded for the same pinned release, reused for cross-host comparison, not independently re-verified here. What IS independently verified on this host: both production (0.25.0) and the candidate (0.30.0) point at the identical, single model directory (same absolute path in both /v1/models responses), and this host's own sha256 of that directory's model.safetensors is recorded below.", - "independent_review: an independent reviewer subagent checked this receipt against the retained raw files (recomputed the reported counts, re-hashed the model file, compared production's before/after flags) and re-ran no gate; that review produced every correction listed above." + "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", + "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." ], - "path": "evidence/receipts/vllm-030-switch-laptop-20260926.json" + "path": "evidence/receipts/portable-cli-artifacts.json" }, { - "id": "codex-01571-qualification-20260926", + "path": "adoption/receipt.json", + "id": "portable-sdk-adoption-20260919", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "codex", + "duckdb" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", + "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", "limitations": [ - "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", - "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", - "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", - "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", - "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", - "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", - "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", - "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", - "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", - "Linux x86_64 only, one host; nothing here is macOS evidence." - ], - "path": "evidence/receipts/codex-01571-qualification-20260926.json" + "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", + "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", + "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", + "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", + "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", + "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", + "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." + ] }, { - "id": "mcp-inspector-280-qualification-20260926", + "id": "portable-userspace-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "mcp-inspector" + "rtk", + "qmd", + "repomix", + "toon", + "codex", + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", + "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", "limitations": [ - "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", - "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", - "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", - "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", - "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." + "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", + "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", + "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", + "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", + "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", + "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", + "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", + "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", + "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." ], - "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" + "path": "evidence/receipts/portable-userspace-install-20260921.json" }, { "id": "prometheus-3150-qualification-20260926", @@ -3297,127 +3453,174 @@ "path": "evidence/receipts/prometheus-3150-qualification-20260926.json" }, { - "id": "tavily-research-qualification-20260926", + "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", + "id": "qdrant-native-state-recovery-20260919", "kind": "native_cli_e2e", "component_ids": [ - "tavily-cli" + "qdrant", + "restic" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", + "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", "limitations": [ - "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", - "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", - "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", - "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", - "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", - "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", - "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", - "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." + "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", + "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", + "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", + "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", + "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." + ] + }, + { + "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", + "id": "qmd-bm25-retrieval-20260919", + "kind": "native_cli_e2e", + "component_ids": [ + "qmd" ], - "path": "evidence/receipts/tavily-research-qualification-20260926.json" + "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", + "limitations": [ + "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", + "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", + "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", + "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", + "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", + "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", + "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", + "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", + "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", + "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", + "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." + ] }, { - "id": "local-inference-c2-serving-switch-20260926", - "kind": "native_model_e2e", + "id": "restic-local-public-reference-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "llama-cpp" + "restic" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", + "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", "limitations": [ - "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", - "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", - "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", - "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", - "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", - "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", - "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." + "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", + "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", + "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", + "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", + "Credential loss recovery requires separately approved secure key escrow." ], - "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" + "path": "blueprints/us-equities/hosting/backup/receipt.json" }, { - "id": "claude-advisor-usage-scan-20260928", - "kind": "artifact_measurement", + "id": "rtk-050-qualification-20260925", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "rtk" ], - "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", - "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", - "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", - "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", - "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", - "Whether ccusage or ecosystem-token-report count these entries was not checked." + "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", + "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", + "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", + "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", + "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", + "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", + "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." ], - "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" + "path": "evidence/receipts/rtk-050-qualification-20260925.json" }, { - "id": "claude-host-practice-readback-20260928", + "id": "rtk-051-qualification-20261004", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "claude-hud", - "headroom", - "mcporter", - "jcodemunch-mcp", - "agent-browser", - "qmd" + "rtk" ], - "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", + "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed rtk 0.51.0 from the checksummed Linux release archive and returned rtk 0.51.0 with exit 0. rtk verify returned 151/151 inline self-tests with exit 0; 24 hook payloads matched 0.50.0 output and exits (16 rewritten, 0 differing), and 26 permission-deny hook decisions matched with no auto-allows. Direct git/proxy calls succeeded and the existing tracking database was read and later updated. This receipt republishes bounded sanitized facts from the historical host records; it is not a new host or model run.", "limitations": [ - "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", - "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", - "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", - "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", - "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", - "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", - "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." + "No macOS execution; the Darwin archive is artifact-checked only. No upstream cargo test suite was run in these records; rtk verify is the native inline self-test, and the 115-test parser run (14 skipped) is local integration.", + "rtk gain, session and cc-economics are tool self-reports, not provider counts, invoice data or causal savings. Cumulative snapshots are not added together.", + "No fresh live-client acceptance or rtk init re-run was recorded. The --shell compatibility review is source-based; the host hook comparison covered only its 24 payloads and 26 deny entries. Existing exact-output exceptions and dated replay gates remain scoped to their original evidence.", + "gh attestation verification returned HTTP 404 (exit 1); no signature verification or source rebuild was recorded. Later upstream fixes and issue #4404 are follow-ups, not included in this stable pin.", + "NativeStack runs AgentsView 0.44.0 ahead of the repository pin. The 2026-09-27 qualification hold stands: synthetic_ccusage_parity failed, fresh_four_native_lanes is blocked, and the v0.44.0 MCP reported zero Codex counters. The recorded recipe rewire and qualification must pass in a separate follow-up before a repository pin move.", + "RTK replay is unavailable at 0.51.0: vendored child-usage.mjs and the test_token_measurement.py/test_skill_usage.py replay gates require exactly rtk 0.50.0. Skipped replay tests are not coverage; the kernel and gates remain unchanged.", + "The repair-round placeholder guard probes allowed the --shell form rtk test --shell sh 'cat ~/.ssh/config' (exit 0), while rtk proxy cat ~/.ssh/config was blocked (exit 2). These strings were guard input only; no credential reader was executed. This finding belongs to PR #685; the guard is unchanged in this pin move.", + "2026-10-04 control correction after PR #693 CI run 37226622626: v0.51.0 intentionally folds grep file lists (feac25d), so the former byte-unchanged grep control is superseded by counted prefix-plus-tail reconstruction of the exact native path set, byte-identical proxy recovery and a CR-filename verbatim guard fixture (3223a80). The diff half is unchanged. The repaired native fixture passes nine checks over 11 cases / 33 arms; this is local integration of the installed Linux CLI, not new host or upstream Cargo-suite acceptance. Agent-facing expansion of folded paths is unmeasured; an E2E observation of a wrong expanded path leads to adding grep -l/-rl to hook exclusions. Sources and retained red-then-green observations: docs/decisions/2026-10-04-rtk-file-list-control.md.", + "2026-10-04 PR #698 follow-up from the pre-rebase review head 45a7218c0 (rebased onto 38ac9aca1; no branch keeps it): the grep inverse now preserves native engine order, and a CR-free explicit-operand t6c sibling proves that the same grep -l shape folds without the 3223a80 guard signal. Native distinctness and the CR-case LF record count have isolating rejection controls with separate predicate-deletion red runs and restored green runs. The installed Linux CLI passes ten checks across 12 cases / 36 arms / 76 fixture commands plus one version command. Historical shell_sites line 1477 is retained; a dated appended entry corrects the direct-argv locator. Minimal sanitized original red/green outputs from job 035 and new job 042 outputs are retained under evidence/artifacts/rtk-051-file-list-control-20261004/ (README.md and native-controls.json), with the dated decision at docs/decisions/2026-10-04-rtk-file-list-control.md. This is local integration, not a WSL rerun, upstream Cargo-suite, new-host or native-model acceptance; model interpretation remains unmeasured." ], - "path": "evidence/receipts/claude-host-practice-readback-20260928.json" + "path": "evidence/receipts/rtk-051-qualification-20261004.json" }, { - "id": "socraticode-1150-qualification-20260927", + "id": "runtime-sdk-20261003", + "kind": "compatibility_attempt", + "component_ids": [ + "codex" + ], + "claim": "Retained coordinator results for the same-host Codex SDK/CLI 0.160.0 pair report strict-hash installation, matching bundled/npm-platform binaries and completed native-account SDK, gateway SDK and gateway CLI marker canaries. Sanitized outputs, native CLI usage, scripts, hashes, mtimes and discriminating replay controls are now retained; missing original SDK invocation/source and process start/end evidence limit this to a compatibility attempt. The separate A4 record adds fail-closed Linux package-resolution/executable-tree repairs, offline integration controls and a fresh isolated bootstrap of the shipped Codex pin; it does not upgrade the SDK/gateway canary evidence class.", + "limitations": [ + "Existing-host compatibility observations and completed marker canaries only; incomplete original command/timing provenance prevents native_cli_e2e acceptance. Not new-host or model-quality acceptance.", + "Gateway backend model and effort were not read from the call log; configured/requested routes and efforts do not prove backend selection.", + "The shared host launcher, daemon and production prefix still run 0.159.3 until a separate coordinated switch.", + "The 0.159.3 queue, Hindsight and October 1 SDK receipts retain their original scope; they do not qualify 0.160.0.", + "Sanitized native canary stdout/stderr, CLI events/last message and their hashes are retained. SDK caller exit codes 0 are coordinator-verified, not fields in the supplied facts. Gateway backend billed usage and monetary cost remain unrecorded.", + "Original process start/end times and SDK outer executable/cwd are unrecorded. Source mtimes are filesystem observations only. The native heredoc is reconstructed from facts and the retained gateway example, not attested as the original source.", + "SDK last and total usage snapshots match for each canary and must be counted once; cached input and reasoning output are subsets, not additional tokens.", + "No unchanged upstream test suite, shared daemon restart, whole-system cleanup/recovery acceptance, package signature or provenance attestation verification is recorded here. The separate A4 bootstrap record retains local migration/publication fault injection and an isolated native installation.", + "The move is inside the seven-day cooldown recorded in docs/decisions/2026-09-25-workstation-sota-refresh.md, as the prior 0.159.2 and 0.159.3 moves were (docs/decisions/2026-09-27-model-currency.md).", + "This repository change records existing coordinator qualification; it performs no new model run or shared-host switch.", + "The CLI script prints the inner Codex exit but does not propagate it as its own final shell exit; the recorded inner exit 0 is supported by the coordinator facts and completed native events." + ], + "path": "evidence/receipts/runtime-sdk-20261003.json" + }, + { + "id": "runtime-tools", + "path": "evidence/receipts/runtime-tools.json", "kind": "native_cli_e2e", "component_ids": [ - "socraticode" + "gitleaks", + "sandbox-runtime" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", + "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", "limitations": [ - "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", - "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", - "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", - "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", - "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", - "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", - "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", - "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", - "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", - "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", - "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." + "No claim of full security certification.", + "Sandbox network denial configured but not separately exercised." + ] + }, + { + "id": "sec-catalyst-dataset-native-20260920", + "kind": "native_cli_e2e", + "component_ids": [ + "edgartools", + "duckdb" + ], + "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", + "limitations": [ + "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", + "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", + "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", + "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", + "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", + "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", + "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", + "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", + "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." ], - "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" + "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" }, { - "id": "ccusage-20026-qualification-20260927", - "kind": "native_cli_e2e", + "id": "sec-financial-data-20260919", + "kind": "compatibility_attempt", "component_ids": [ - "ccusage" + "duckdb" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", + "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", "limitations": [ - "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", - "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", - "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", - "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", - "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", - "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", - "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", - "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", - "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", - "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", - "New hosts receive this pin only after the next release tag." + "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", + "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", + "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", + "Current API snapshots do not reconstruct historical point-in-time knowledge.", + "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", + "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." ], - "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" + "path": "blueprints/us-equities/financial-data/receipt.json" }, { "id": "skills-listing-restore-20260928", @@ -3463,104 +3666,27 @@ "path": "evidence/receipts/skills-m4-host-removal-20260928.json" }, { - "id": "claude-model-effort-probes-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", - "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", - "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", - "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", - "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." - ], - "path": "evidence/receipts/claude-model-effort-probes-20260929.json" - }, - { - "id": "claude-max-default-effort-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", - "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", - "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", - "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", - "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", - "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", - "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", - "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." - ], - "path": "evidence/receipts/claude-max-default-effort-20260929.json" - }, - { - "id": "claude-project-effort-flag-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", - "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", - "The Ultracode reminder is an indicator, not proof of workflow orchestration.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." - ], - "path": "evidence/receipts/claude-project-effort-flag-20260929.json" - }, - { - "id": "claude-spend-attribution-20260929", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code", - "ccusage" - ], - "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", - "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", - "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", - "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", - "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", - "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", - "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", - "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", - "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", - "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", - "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." - ], - "path": "evidence/receipts/claude-spend-attribution-20260929.json" - }, - { - "id": "wsl-terminal-defaults-20260929", + "id": "socraticode-1150-qualification-20260927", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex" + "socraticode" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, and 2.1.283 in a second distro; Codex 0.157.1; bash 5.2.21; Windows Terminal 1.24.11911.0) the repository now carries the terminal defaults that had been set by hand on the host. Merging the linux-wsl2 Claude Code overlay into the live settings with the repository's merge tool changed nothing (the merge equalled the live file), exactly one Notification group holds the bell command, and its matcher equals the overlay's (the acceptance script checks the matcher because the merge alone cannot see it). The rendered Codex template loads under `codex --strict-config` (the run stops at authentication, never at configuration); a wrong type for `[tui] notifications` and an unknown top-level key are refused, and an unknown key inside `[tui]` is not. The static `adoption_status.py --login-shell` model agreed with the real bash login search in all 512 combinations of three startup files over eight states, a FIFO made bash block (the model calls it unusable and unread), and a control that takes an empty file as absent disagreed in 26. In the second distro, the two per-project Claude profiles of the Windows Terminal settings dropped `suppressApplicationTitle` and gained the quiet bell, the audible-and-taskbar bell style and `COLORTERM` through the profile environment key, with every other profile and setting unchanged; the overlay merged into that distro's Claude settings changed only `$schema`, `hooks` and `preferredNotifChannel`, and its installed hook command printed exactly one BEL. The host practice repository's terminal-profile check now scans the live settings file and passed with 0 findings (the pre-change settings file fails it with 8 findings on the two per-project profiles), and its 22 single-defect controls each failed for exactly their rule.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro plus one second distro (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own evidence, and none of the new files is in the pinned release: a new host gets them only after a release carries them and the manifest is re-pinned.", - "No Windows Terminal tab was opened or measured after the second distro's profile change, and no session of that distro was started or observed after its overlay. Claude Code applies edits to `hooks` to a running session without a restart (settings reference, \"When edits take effect\"), so open sessions there should pick the overlay up; that was not observed, and an audible or taskbar bell for the alert path was not observed by the user in this work.", - "The profile example was checked as JSON against the policy. It declares no `guid`, so Windows Terminal derives a stable one from the folder and profile names (read in its source at the installed tag); it was not loaded into Windows Terminal or installed on any host. The host's deployed fragment is the practice repository's own file.", - "The `--login-shell` check reads file metadata only and models bash's login search from the source of bash 5.3 (shell.c execute_profile_file, builtins/evalfile.c) and the installed 5.2.21 on Linux; it does not run a login shell, read a startup file (so a non-empty file's hand-off is unknown, reported as null), or cover /etc/profile, ~/.bashrc, another shell, --noprofile, POSIX mode, an sh-mode login or macOS's bash 3.2. A special file is reported unusable: bash reads a device as empty and blocks on a FIFO, and both end the search; an unusable ~/.profile is reached but not read, so profile_read is false; HOME is the environment's, else the passwd entry's, else \"/\", the way bash falls back.", - "The Codex acceptance is a configuration load: no Codex notification was produced in this work, `async-question` does not exist at the macOS pin's tag (inert there) and Codex 0.155.1 was not run. Codex does not validate keys inside `[tui]`, so the repository's test pins that table's setting names. A `request_user_input` question notifies as `plan-mode-prompt` at both tags (tool_requests.rs L449-458), so `async-question` adds only the asynchronous questions 0.155.1 lacks.", - "The second distro's `tui` is `fullscreen` by its own setting; `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` was not set, as the upstream documentation makes it a reactive fix and no stale rendering was observed or measured.", - "The host practice repository has no remote (commits fcd291f, 396d1c1, 9500656, c14e8c3, 9f615ad and d0c7d9c); its check and controls are recorded here as results only. The Windows Terminal settings patch and the second distro's merge were host operations on private files, recorded as values.", - "The second distro's Claude Code is 2.1.283, one release before this host's. A scan of the installed binaries (this host's 2.1.282, 2.1.283 and 2.1.284, and that distro's 2.1.283) found the `notifications_disabled` and `terminalSequence` literals and `worker_permission_prompt` emitted from the same two team-inbox call sites in each (the second distro's binary is byte-identical to this host's 2.1.283 by SHA-256 prefix, and its occurrence counts by `grep -a -o` equal this host's scan), so the whole matcher is live there. The changelog dates `terminalSequence` to 2.1.141 and has no entry for `notifications_disabled`, which the settings reference documents. The hook was run in that distro.", - "The merge de-duplicates hooks by command anywhere in the event, so it never changes the matcher of a Notification hook that already runs the bell command: after a later matcher change the old group must be edited or removed first. The acceptance script checks the group count and the matcher for that reason, and a unit test proves it refuses a catch-all group and an older matcher.", - "The Codex `[tui] notifications` list is in the template that a macOS host also renders. Codex keeps its own per-terminal channel there, so needed kinds still notify natively and the turn-complete one stops; at the macOS pin `async-question` does not exist and is inert. This was decided and documented, and not observed on a Mac.", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): codex_tui_strict_check.py counts a run as loaded only with Codex's session banner and exits 1 unless the template loaded and both configuration controls were refused; overlay_noop_check.py also requires disableAllHooks not to be true and labels its verdict as a check of the user settings file only; login_shell_bash_truth.py and the 512-combination test now also compare first_read; the platform page's advice about profiles.defaults was corrected (Windows Terminal ranks a profile's own value, then profiles.defaults, then a fragment's profile). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", + "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", + "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", + "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", + "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", + "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", + "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", + "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", + "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", + "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", + "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." ], - "path": "evidence/receipts/wsl-terminal-defaults-20260929.json" + "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" }, { "id": "socraticode-1160-qualification-20260929", @@ -3584,112 +3710,152 @@ "path": "evidence/receipts/socraticode-1160-qualification-20260929.json" }, { - "id": "omniroute-3851-npm-qualification-20260930", - "kind": "compatibility_attempt", + "id": "sota-convergence-20260922", + "kind": "historical_inventory", "component_ids": [ - "omniroute" + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "apple-container", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codebase-memory-mcp", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "fastapi", + "gitleaks", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "llama-cpp", + "loki", + "markitdown", + "mcp-inspector", + "mcporter", + "nextjs", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "playwright-cli", + "playwright-test", + "poppler", + "postgresql", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "react", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shanraisshan/claude-code-best-practice", + "shellcheck", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", + "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", "limitations": [ - "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", - "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", - "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", - "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", - "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", - "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", - "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", - "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", - "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." + "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", + "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", + "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", + "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." ], - "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" + "path": "evidence/receipts/sota-convergence-20260922.json" }, { - "id": "codex-01592-qualification-20260930", + "id": "syft-1540-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "syft" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", "limitations": [ - "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", - "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", - "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", - "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", - "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", - "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", - "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", - "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", - "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", - "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", - "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", - "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", - "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", - "Linux x86_64 only, one host; nothing here is macOS evidence." + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/codex-01592-qualification-20260930.json" + "path": "evidence/receipts/syft-1540-qualification-20261003.json" }, { - "id": "notification-types-20260929", + "path": "blueprints/us-equities/supply-chain/receipt.json", + "id": "syft-sdk-inventory-20260919", "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "syft" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", + "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", "limitations": [ - "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", - "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", - "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", - "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", - "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", - "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", - "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", - "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", - "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." - ], - "path": "evidence/receipts/notification-types-20260929.json" + "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", + "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", + "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", + "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", + "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", + "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", + "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", + "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", + "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", + "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." + ] }, { - "id": "login-shell-contract-20260929", + "id": "synthetic-catalyst-contract-20260920", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex" + "duckdb" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", + "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", - "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", - "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", - "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", - "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", - "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", - "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", - "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", - "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + "Protocol thresholds are exploratory choices, not fitted or proven optimal.", + "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", + "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", + "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", + "No provider calls, broker orders, new model turn or net token-savings measurement." ], - "path": "evidence/receipts/login-shell-contract-20260929.json" + "path": "blueprints/us-equities/catalyst-experiment/receipt.json" }, { - "id": "cross-family-review-terminal-lane-20260930", - "kind": "native_model_e2e", + "id": "tavily-research-qualification-20260926", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "omniroute", - "claude-code" + "tavily-cli" ], - "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", - "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", - "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", - "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", - "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", - "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", - "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." + "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", + "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", + "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", + "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", + "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", + "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", + "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", + "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." ], - "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" + "path": "evidence/receipts/tavily-research-qualification-20260926.json" }, { "id": "terminal-experience-20260928", @@ -3716,497 +3882,480 @@ "path": "evidence/receipts/terminal-experience-20260928.json" }, { - "id": "codex-shell-snapshot-cleanup-20260930", - "kind": "artifact_measurement", + "id": "token-native-retained-functional-20260920", + "path": "evidence/receipts/token-native-retained-functional-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "codex" + "context-hub", + "headroom", + "mcp-inspector", + "promptfoo", + "worktrunk" ], - "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", + "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", "limitations": [ - "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", - "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", - "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", - "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." - ], - "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" + "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", + "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", + "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", + "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", + "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", + "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." + ] }, { - "id": "agent-browser-lna-20260930", + "id": "token-practice-artifacts-20260920", "kind": "artifact_measurement", "component_ids": [ "agent-browser", - "playwright-test" - ], - "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", - "limitations": [ - "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", - "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", - "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", - "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." - ], - "path": "evidence/receipts/agent-browser-lna-20260930.json" - }, - { - "id": "guard-k3-verification-20260930", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code" + "ast-grep", + "edgartools", + "markitdown", + "qmd", + "repomix", + "rtk", + "socraticode", + "syft", + "toon" ], - "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", + "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", "limitations": [ - "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", - "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", - "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", - "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1064,7 +1068,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.79.0", + "version": "0.80.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1079,20 +1083,21 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "worktrunk-0800-qualification-20261003" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" ], - "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.161.0", + "version": "0.162.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1112,13 +1117,15 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "otelcol-contrib-0162-qualification-20261003" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib" + "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." }, { "id": "prometheus", @@ -1401,10 +1408,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.52.0", + "version": "1.54.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1413,13 +1420,14 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "syft-1540-qualification-20261003" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.52.0" + "https://github.com/anchore/syft/releases/tag/v1.54.0" ], - "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." }, { "id": "alpaca-py", @@ -1682,7 +1690,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.319", + "version": "1.108.327", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1695,7 +1703,7 @@ } } ], - "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1708,13 +1716,14 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "jcodemunch-1108327-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", - "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", + "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" ], - "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 5dbc24c3729611263463212c534e84c56d7f6756 Mon Sep 17 00:00:00 2001 From: Scout Date: Mon, 5 Oct 2026 00:56:51 -0400 Subject: [PATCH 26/50] Currency W1: dated record of the merges with main e871259ea and 4c897418f; citation and receipt fixes (Opus read of merges 2+3) - docs/decisions/2026-10-03-currency-wave-w1.md has a dated section, "Merge with main e871259ea and 4c897418f (2026-10-05)". It records: - the code-index owner rows aligned to jcodemunch-mcp 1.108.327, which test_owner_pins_are_the_repository_pins requires; - every configuration-owner file this PR now edits; - the snapshot counters after main's #637 recount (264 + 3 = 267; 281 + 3 = 284); - the two new handbook receipt entries. The earlier handoff text is kept as dated history. The current handoff leaves only playwright-cli 0.1.21 open (stack 0.1.22); Syft 1.54.0 and mcporter 0.14.2 now match. - The handbook receipt's new entries carry their own UTC dates and a recorded --check run. - install-plan SOURCES.md cites recipes/README.md at the merged line numbers. install.sh again carries a second source for --python 3.13 and the ecosystem root. The Wave 3 intros name the jcodemunch-mcp 1.108.327 move (source 6d5ae86c) and its dated README read. - docs/foundation-stack.md names the sixth predated component, jCodeMunch 1.108.319. Built by GPT-6.1 Sol through the packaged SDK worker (round 642-merge-fix); committed by the coordinator. Co-Authored-By: Claude Opus 5.5 --- docs/decisions/2026-10-03-currency-wave-w1.md | 111 +++++++++++++++--- docs/foundation-stack.md | 2 +- .../new-wsl-handbook-20261001/receipt.json | 18 ++- .../new-wsl-install-plan-20261002/README.md | 2 +- .../new-wsl-install-plan-20261002/SOURCES.md | 4 +- .../new-wsl-install-plan-20261002/install.sh | 2 +- manifests/evidence.json | 24 ++-- 7 files changed, 125 insertions(+), 38 deletions(-) diff --git a/docs/decisions/2026-10-03-currency-wave-w1.md b/docs/decisions/2026-10-03-currency-wave-w1.md index 1748c8ce4..722c11a62 100644 --- a/docs/decisions/2026-10-03-currency-wave-w1.md +++ b/docs/decisions/2026-10-03-currency-wave-w1.md @@ -212,19 +212,25 @@ path. Its next dispatch/tag result must be retained as that path's first execution. This repair neither dispatches those workflows nor infers their results from local structural checks. -Off-limit configuration-owner files, including `adoption/new-wsl-profile.json`, -all `blueprints/us-equities/` files, historical receipts, prior decisions, -dated catalogs and sweep manifests retain their bytes. The trading-owned -`observability/paper-trading-live/collector-paper-trading.yaml` comment is -restored to its base 0.161.0 text in R642. Reports may display the intentional -difference between current stack pins and older sealed landscape winners. - -Owner handoffs for the next unit: - -- The configuration owner must reconcile `adoption/new-wsl-profile.json`: - it carries Inspector 2.9.0, Worktrunk 0.80.0 and Collector 0.162.0, while - playwright-cli 0.1.21 and Syft 1.52.0 remain older than the W1 selections. - Its mcporter 0.14.1 agrees with R642b's hold. This file is outside the repair's edit scope. +**Dated history (2026-10-03 W1 repair scope and handoff).** The following text is retained as written; its current-tense configuration-owner statements are superseded by the October 5 merge record below. + +> Off-limit configuration-owner files, including `adoption/new-wsl-profile.json`, +> all `blueprints/us-equities/` files, historical receipts, prior decisions, +> dated catalogs and sweep manifests retain their bytes. The trading-owned +> `observability/paper-trading-live/collector-paper-trading.yaml` comment is +> restored to its base 0.161.0 text in R642. Reports may display the intentional +> difference between current stack pins and older sealed landscape winners. +> +> Owner handoffs for the next unit: +> +> - The configuration owner must reconcile `adoption/new-wsl-profile.json`: +> it carries Inspector 2.9.0, Worktrunk 0.80.0 and Collector 0.162.0, while +> playwright-cli 0.1.21 and Syft 1.52.0 remain older than the W1 selections. +> Its mcporter 0.14.1 agrees with R642b's hold. This file is outside the repair's edit scope. + +**Configuration-owner handoff after merges 2 and 3 (2026-10-05):** + +- Only the profile's playwright-cli 0.1.21 remains older than the stack's 0.1.22 selection. Syft 1.54.0 and mcporter 0.14.2 now match through main #684/#704. This PR sets the jcodemunch-mcp entry to 1.108.327. The other owner handoffs below retain their separate scopes. - The trading owner must update the canonical `blueprints/us-equities/supply-chain/README.md` recipe for Syft 1.54.0, including its 1.52.0 archive/hash instructions, using the W1 receipt's @@ -495,11 +501,13 @@ Main did not change those rows. Retain those exact W1 rows and add their three checks to main's counters, producing 277 and 260. No new API calls were made for this repair. -The retained arrays contain 261 check entries, compared with main's 258. -The base already contained 255 check entries against a selected-component -summary counter of 254. This repair carries that dated one-entry discrepancy -forward while adding the measured W1 delta; it does not relabel the historical -summary as a newly reconciled count of every array entry. +At the October 4 review repair, the retained arrays contained 261 check +entries, compared with 258 at main `14048b84`. Main's [#637 recount](https://github.com/seathatflowsinourveins/native-agent-stack/pull/637) +subsequently reconciled the earlier one-entry discrepancy. At main +`4c897418f`, selected-component commands are 264 and all recorded API commands +are 281. Retaining W1's three checks gives 264 + 3 = 267 and 281 + 3 = 284. +The current selected-component array contains 267 checks and matches its +summary; the earlier discrepancy is historical, not carried forward. Completeness critic: inspect the 55 pre-repair paths, plus `docs/harness-defaults.md` added by this repair, for the same @@ -545,3 +553,70 @@ seven W1 moves and main's component selections, regenerate stale projections from merged sources, and run the named acceptance checks with skipped tests reported by name and reason. Historical host observations and the unverified W1 update path retain their original qualification limits. + +## Merge with main e871259ea and 4c897418f (2026-10-05) + +Merge 2 incorporated main `e871259ea` and was committed as `66c94a37f`; +merge 3 incorporated main `4c897418f` and was committed as `f640b5309`. +PR head `64c410699` has the same tree as the merge-3 commit. These merges +retain the seven W1 currency moves while following main for its newer +selections and the NativeStack2604 fix wave. This record serves the same +native foundation for the north-star research action named above. + +The code-index owner rows now follow jcodemunch-mcp **1.108.327**, source +`6d5ae86c130f96624e2ca2d797fa3b853c210b9d`, selected by W1. Merge 2's +`test_owner_pins_are_the_repository_pins` failure forced the alignment: +[tests/test_new_wsl_definitive_defaults.py:1336](../../tests/test_new_wsl_definitive_defaults.py#L1336) +requires owner rows to name the pin in `manifests/stack.json`. Main already +uses this precedent for RTK: the dated owner record's row at +[docs/decisions/2026-10-04-token-full-stack-owner-default.md:108](2026-10-04-token-full-stack-owner-default.md#L108) +names 0.50.0, while its "Refresh onto main after PR #693" section and main's +owner row follow 0.51.0. The older decision stays historical. The configuration +owner's decision record is unchanged by this repair; its wording and any +acknowledgement remain with that owner and the coordinator. + +This PR now edits these configuration-owner files, superseding the earlier +scope statement retained above as dated history: + +- `adoption/new-wsl-profile.json`: the jcodemunch-mcp entry. +- `evidence/artifacts/new-wsl-layer-consensus-20261002/consensus.json`: the wave3 code-index owner row; main's wave4 Promptfoo owner is preserved. +- `evidence/artifacts/new-wsl-definitive-defaults-20261001/definitive-manifest.json`: regenerated from the merged consensus. +- `docs/decisions/2026-10-01-new-wsl-definitive-defaults.md`: the tables rendered from that manifest. +- `evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json`, `owners.json`, `install.sh` and `accept.sh`: the code-index owner, install/list/version commands and source citations. +- `evidence/artifacts/new-wsl-install-plan-20261002/README.md` and `SOURCES.md`: the current code-index pin, wave-3 refresh and verified source locations. + +Main's 25 fix-wave slot repairs and wave4 Promptfoo 0.123.1 owner survive. +The current configuration-owner handoff is only playwright-cli **0.1.21** in +the profile against **0.1.22** in the stack. Syft **1.54.0** and mcporter +**0.14.2** now match through main #684/#704; this PR sets the jcodemunch-mcp +entry to **1.108.327**. These are selection and scope statements, not new +host acceptance. + +Main's [#637 recount](https://github.com/seathatflowsinourveins/native-agent-stack/pull/637) +reconciled the old summary discrepancy. Main supplies 264 selected-component +commands and 281 total API commands; W1 retains three additional checks. +The merged counters are **264 + 3 = 267** and **281 + 3 = 284**, and the +selected-component array has exactly 267 checks. No API refresh ran here. + +The handbook receipt's two merge entries are retained: validation[6] records +merge 2's `--write` at `2026-10-05T01:51:22.461149+00:00`, and validation[7] +records merge 3's `--write` at `2026-10-05T03:39:08.219114+00:00`. Both +recorded exit 0 and status `written`; those historical codes are unchanged. +Each `date_utc` now follows its own UTC timestamp, **2026-10-05**. Their +scopes describe regeneration, rather than claiming a check from `--write`. +A separate validation[8] records today's actual `--check`, with its returned +status, exit code and output hashes; the date is taken from `date -u`. + +The jcodemunch README read on 2026-10-05 at 6d5ae86c and prior pin 8f7b34ab +confirms identical install, version and session-stats lines 91, 113 and 141; +these anchors did not move. The plan now cites the ecosystem root and +`--python 3.13` at `recipes/README.md:554-559`, plus `--version` at line 560, +at the immutable merge-3 commit. The profile and executable source anchors +remain unchanged because the read verified them. + +Completeness critic: distinguish historical scope from the files the PR now +edits; preserve the configuration owner's reserved record; verify current +pins and source anchors, main's repair slots and Promptfoo owner, reconciled +command counts, actual receipt dates and returned generator statuses. Rebuild +the manifest, tables and handbook with their own generators, run the named +local acceptance checks, and re-register changed files after all mutations. diff --git a/docs/foundation-stack.md b/docs/foundation-stack.md index 2857d07c4..1d917d089 100644 --- a/docs/foundation-stack.md +++ b/docs/foundation-stack.md @@ -15,7 +15,7 @@ The foundation wave's [acceptance receipt](../evidence/receipts/foundation-nativ | Reduce selected tool context | [RTK](https://github.com/rtk-ai/rtk/releases/tag/v0.51.0), [Context Mode](https://github.com/mksglu/context-mode), [jCodeMunch](https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327), [Headroom](https://github.com/headroomlabs-ai/headroom) | Choose the smallest representation satisfying the task; preserve full output/recovery and signed comparisons. These do not automatically intercept every client call. | | Optional gateway | [OmniRoute 3.8.51](https://github.com/diegosouzapw/OmniRoute/releases/tag/v3.8.51) | Separate process-level route and scoped inference key. Local lifecycle can pass while provider acceptance remains unavailable. | -The pins above are the selected component pins in [manifests/stack.json](../manifests/stack.json); their qualification and selection dates differ. The 2026-09-20 acceptance receipt predates six of them: it records ai-memory 2.3.2 and OmniRoute 3.8.50, and this table then named vLLM 0.25.0, RTK 0.49.0 and SocratiCode 1.14.0. Each newer pin's qualification is in its component's `freshness` note. SocratiCode 1.15.0 was qualified on 2026-09-27 in [its receipt](../evidence/receipts/socraticode-1150-qualification-20260927.json). jCodeMunch 1.108.319 → 1.108.327 was qualified on 2026-10-03 in [its version and session-stats receipt](../evidence/receipts/jcodemunch-1108327-qualification-20261003.json). OmniRoute 3.8.51 was qualified on 2026-09-30 in [its npm receipt](../evidence/receipts/omniroute-3851-npm-qualification-20260930.json) and selected on 2026-10-03 in [the pin decision](decisions/2026-10-03-omniroute-3851-pin.md). The September 20 receipt remains historical evidence for its original versions. For ai-memory and RTK the freshness note also records that the landscape winner pin keeps its verdict wave's version (2.3.2 and 0.49.0) until a new wave; SocratiCode's winner pin likewise stays 1.14.0. Headroom's canonical upstream is `headroomlabs-ai/headroom`; `chopratejas/headroom` redirects there. +The pins above are the selected component pins in [manifests/stack.json](../manifests/stack.json); their qualification and selection dates differ. The 2026-09-20 acceptance receipt predates six of them: it records ai-memory 2.3.2 and OmniRoute 3.8.50, and this table then named vLLM 0.25.0, RTK 0.49.0, SocratiCode 1.14.0 and jCodeMunch 1.108.319. Each newer pin's qualification is in its component's `freshness` note. SocratiCode 1.15.0 was qualified on 2026-09-27 in [its receipt](../evidence/receipts/socraticode-1150-qualification-20260927.json). jCodeMunch 1.108.319 → 1.108.327 was qualified on 2026-10-03 in [its version and session-stats receipt](../evidence/receipts/jcodemunch-1108327-qualification-20261003.json). OmniRoute 3.8.51 was qualified on 2026-09-30 in [its npm receipt](../evidence/receipts/omniroute-3851-npm-qualification-20260930.json) and selected on 2026-10-03 in [the pin decision](decisions/2026-10-03-omniroute-3851-pin.md). The September 20 receipt remains historical evidence for its original versions. For ai-memory and RTK the freshness note also records that the landscape winner pin keeps its verdict wave's version (2.3.2 and 0.49.0) until a new wave; SocratiCode's winner pin likewise stays 1.14.0. Headroom's canonical upstream is `headroomlabs-ai/headroom`; `chopratejas/headroom` redirects there. Native client sign-ins, generation models, caching, compaction and existing project MCP remain the default. OmniRoute conversational memory is a separate optional injection store; it does not replace ai-memory or the code index. Do not chain competing gateways or activate every catalog alternative. diff --git a/evidence/artifacts/new-wsl-handbook-20261001/receipt.json b/evidence/artifacts/new-wsl-handbook-20261001/receipt.json index 76f00d7a5..d91816b25 100644 --- a/evidence/artifacts/new-wsl-handbook-20261001/receipt.json +++ b/evidence/artifacts/new-wsl-handbook-20261001/receipt.json @@ -52,9 +52,9 @@ "native_exit_code": 0 }, { - "date_utc": "2026-10-04", + "date_utc": "2026-10-05", "recorded_at_utc": "2026-10-05T01:51:22.461149+00:00", - "scope": "Local regeneration for PR #642 merge with main e871259e; generated-byte verification, with no destination installation or upstream execution claimed.", + "scope": "Local regeneration for PR #642 merge with main e871259e; --write execution, with no destination installation or upstream execution claimed.", "command": "python3 scripts/build_new_wsl_handbook.py --write", "native_exit_code": 0, "returned_status": "written" @@ -62,10 +62,22 @@ { "date_utc": "2026-10-05", "recorded_at_utc": "2026-10-05T03:39:08.219114+00:00", - "scope": "Local regeneration for PR #642 merge round 3 with main 4c897418f; generated-byte verification only, with no destination installation or upstream execution claimed.", + "scope": "Local regeneration for PR #642 merge round 3 with main 4c897418f; --write execution only, with no destination installation or upstream execution claimed.", "command": "python3 scripts/build_new_wsl_handbook.py --write", "native_exit_code": 0, "returned_status": "written" + }, + { + "date_utc": "2026-10-05", + "recorded_at_utc": "2026-10-05T04:17:05Z", + "scope": "Local generated-byte verification of the merge-3 handbook outputs at PR #642 HEAD 64c410699, before this dated documentation repair. This --check run is separate from the two historical --write executions.", + "command": "python3 scripts/build_new_wsl_handbook.py --check", + "native_exit_code": 0, + "returned_status": "passed", + "returned_outputs": { + "docs/new-wsl-handbook.json": "de1f2ab30c51683e4b693244d636350e5cbece234e0c3452ecd2f9ca88bebb62", + "docs/new-wsl-handbook.md": "216c20f07d8283ccbfc47bfe2219a102b53a32caea744d83834ee4f8d0b589a2" + } } ], "failed_conditions_retained": [ diff --git a/evidence/artifacts/new-wsl-install-plan-20261002/README.md b/evidence/artifacts/new-wsl-install-plan-20261002/README.md index 9ca8462c3..fafc8d731 100644 --- a/evidence/artifacts/new-wsl-install-plan-20261002/README.md +++ b/evidence/artifacts/new-wsl-install-plan-20261002/README.md @@ -158,7 +158,7 @@ From the wave-2 batch of the layer consensus (`consensus.json`, key `wave2`, wit ## Wave 3 (2026-10-04) -From the wave-3 batch of the layer consensus (`consensus.json`, key `wave3`), the owner's decision of 2026-10-04 under amendment 4 of the manifest's decision rule, relayed by `docs/decisions/2026-10-04-token-full-stack-owner-default.md`. The pins are those of `manifests/stack.json` and `adoption/pins-linux-x86_64.json` at `f77a35eb`. After main's PR #693 (2026-10-04) those files pin RTK 0.51.0 and mcporter 0.14.2, and this plan follows them. Every tool installs under the ecosystem root the client templates name, `${ECO_ROOT:-$HOME/.local/share/codex-ecosystem}`: release archives and npm tarballs through `fetch_verified` against the recorded sha256 (no `gh release download`, so no GitHub sign-in), archives extracted whole into `tools/-` (bundled licenses kept), npm packages with `npm install --global --prefix tools/-` from the verified tarball, uv tools with `UV_TOOL_DIR` and `UV_TOOL_BIN_DIR` in the root, and each command linked into `${ECO_ROOT}/bin`. Sources are in [SOURCES.md](SOURCES.md), section "Wave 3", and the checks that ran in [VALIDATION.md](VALIDATION.md), section "Wave 3". +From the wave-3 batch of the layer consensus (`consensus.json`, key `wave3`), the owner's decision of 2026-10-04 under amendment 4 of the manifest's decision rule, relayed by `docs/decisions/2026-10-04-token-full-stack-owner-default.md`. The original wave-3 pins came from `manifests/stack.json` and `adoption/pins-linux-x86_64.json` at `f77a35eb`. After main's PR #693 (2026-10-04) those files pin RTK 0.51.0 and mcporter 0.14.2, and this plan follows them. PR #642 W1 also moved jcodemunch-mcp after `f77a35eb` to 1.108.327, source `6d5ae86c130f96624e2ca2d797fa3b853c210b9d`, and this plan follows that selected pin. Its README was read at 6d5ae86c and the prior 8f7b34ab pin on 2026-10-05; install, version and session-stats anchors 91, 113 and 141 are unchanged (SOURCES.md, the code-index row). Every tool installs under the ecosystem root the client templates name, `${ECO_ROOT:-$HOME/.local/share/codex-ecosystem}`: release archives and npm tarballs through `fetch_verified` against the recorded sha256 (no `gh release download`, so no GitHub sign-in), archives extracted whole into `tools/-` (bundled licenses kept), npm packages with `npm install --global --prefix tools/-` from the verified tarball, uv tools with `UV_TOOL_DIR` and `UV_TOOL_BIN_DIR` in the root, and each command linked into `${ECO_ROOT}/bin`. Sources are in [SOURCES.md](SOURCES.md), section "Wave 3", and the checks that ran in [VALIDATION.md](VALIDATION.md), section "Wave 3". - **Ten owner rows** in token-efficiency: `command-output` (RTK 0.51.0, the musl release archive; the hook is the client configuration's), `output-compression` (Headroom 0.37.0 with the `[mcp]` extra, MCP server only), `code-index` (jcodemunch-mcp 1.108.327, selected in `manifests/stack.json`; [W1 qualification](../../receipts/jcodemunch-1108327-qualification-20261003.json)), `code-graph` (codebase-memory-mcp 0.11.0, the release archive; neither its `install.sh` nor its `install` subcommand runs), `repo-packing` (Repomix 1.18.1), `structured-data` (TOON 4.1.1), `doc-conversion` (MarkItDown 0.1.8, the base converter), `api-docs` (Context Hub 0.1.4, telemetry and feedback off), `trace-viewer` (otel-tui 0.7.5, on demand, no service) and `token-lane-carriers` (written by the client configuration; its function only says so). - **Owner defaults**: `ccusage` (20.0.26, a read-only meter) and `session-analytics` (agentsview 0.43.0, a local archive only, telemetry and the update check off) now install; `context-supply` keeps its commands and checks and no longer calls `interim_acknowledged`, since its authority is the owner's decision and not amendment 3. diff --git a/evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md b/evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md index f874712e9..87abc61ee 100644 --- a/evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md +++ b/evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md @@ -342,7 +342,7 @@ Each install function first calls `interim_acknowledged`, which reads `wave2.ack ## Wave 3 (2026-10-04) -The rows the wave-3 batch of the layer consensus added or changed, on the owner's decision of 2026-10-04 (amendment 4; README.md, section "Wave 3"). Status: UNRUN on every distribution. Versions and digests follow `manifests/stack.json` and `adoption/pins-linux-x86_64.json`: RTK was refreshed to 0.51.0 from main `14048b840` after PR #693; the other wave-3 assets retain the `f77a35eb` source, or `recipes/README.md` where the pins file has no row; upstream files were read at the pinned tag or commit on 2026-10-04. The ecosystem-root layout follows the repository's own bootstrap: [`install_single_binary_tarball`, line 414](https://raw.githubusercontent.com/seathatflowsinourveins/native-agent-stack/f77a35eb2bf30bc4bf6f3b4ee51bc9ce5397b4c5/adoption/bootstrap-linux.sh#L414) (the link into `bin`), [`install_npm`, line 770](https://raw.githubusercontent.com/seathatflowsinourveins/native-agent-stack/f77a35eb2bf30bc4bf6f3b4ee51bc9ce5397b4c5/adoption/bootstrap-linux.sh#L770) (`npm install --global --prefix` from the verified registry tarball) and [`install_uv_tool`, line 988](https://raw.githubusercontent.com/seathatflowsinourveins/native-agent-stack/f77a35eb2bf30bc4bf6f3b4ee51bc9ce5397b4c5/adoption/bootstrap-linux.sh#L988) (`UV_TOOL_DIR` and `UV_TOOL_BIN_DIR`), and archives are extracted whole as [recipes/README.md, line 59](https://raw.githubusercontent.com/seathatflowsinourveins/native-agent-stack/f77a35eb2bf30bc4bf6f3b4ee51bc9ce5397b4c5/recipes/README.md#L59) does. +The rows the wave-3 batch of the layer consensus added or changed, on the owner's decision of 2026-10-04 (amendment 4; README.md, section "Wave 3"). Status: UNRUN on every distribution. Versions and digests follow `manifests/stack.json` and `adoption/pins-linux-x86_64.json`: RTK was refreshed to 0.51.0 from main `14048b840` after PR #693, and mcporter follows main's 0.14.2 selection; jcodemunch-mcp moved after `f77a35eb` to 1.108.327 through PR #642 W1, source `6d5ae86c130f96624e2ca2d797fa3b853c210b9d`; the other wave-3 assets retain the `f77a35eb` source, or `recipes/README.md` where the pins file has no row. The 2026-10-04 source reads remain historical; the jcodemunch README read at its selected 6d5ae86c pin is recorded below on 2026-10-05. The ecosystem-root layout follows the repository's own bootstrap: [`install_single_binary_tarball`, line 414](https://raw.githubusercontent.com/seathatflowsinourveins/native-agent-stack/f77a35eb2bf30bc4bf6f3b4ee51bc9ce5397b4c5/adoption/bootstrap-linux.sh#L414) (the link into `bin`), [`install_npm`, line 770](https://raw.githubusercontent.com/seathatflowsinourveins/native-agent-stack/f77a35eb2bf30bc4bf6f3b4ee51bc9ce5397b4c5/adoption/bootstrap-linux.sh#L770) (`npm install --global --prefix` from the verified registry tarball) and [`install_uv_tool`, line 988](https://raw.githubusercontent.com/seathatflowsinourveins/native-agent-stack/f77a35eb2bf30bc4bf6f3b4ee51bc9ce5397b4c5/adoption/bootstrap-linux.sh#L988) (`UV_TOOL_DIR` and `UV_TOOL_BIN_DIR`), and archives are extracted whole as [recipes/README.md, line 59](https://raw.githubusercontent.com/seathatflowsinourveins/native-agent-stack/f77a35eb2bf30bc4bf6f3b4ee51bc9ce5397b4c5/recipes/README.md#L59) does. ### Departures from the recorded upstream commands @@ -352,7 +352,7 @@ The rows the wave-3 batch of the layer consensus added or changed, on the owner' - **RTK 0.51.0 (`command-output`)**: the Linux asset ([README, line 113](https://raw.githubusercontent.com/rtk-ai/rtk/v0.51.0/README.md#L113)); checks: [`--version`, line 121](https://raw.githubusercontent.com/rtk-ai/rtk/v0.51.0/README.md#L121), [`rtk git log`, line 193](https://raw.githubusercontent.com/rtk-ai/rtk/v0.51.0/README.md#L193), [`rtk proxy`, line 313](https://raw.githubusercontent.com/rtk-ai/rtk/v0.51.0/README.md#L313) and [`RTK_TELEMETRY_DISABLED`, line 551](https://raw.githubusercontent.com/rtk-ai/rtk/v0.51.0/README.md#L551). The archive holds only `rtk`. Its freshly downloaded SHA-256 `5028d3b19a8f0990d30fec9fbb07e32782bc5698e618fb1861aad8a9ccba4eb5` matches the [v0.51.0 checksums file](https://github.com/rtk-ai/rtk/releases/download/v0.51.0/checksums.txt) and GitHub asset digest. The [release notes](https://github.com/rtk-ai/rtk/releases/tag/v0.51.0) require `--shell` for executable positional scripts that need shell expansion; this plan uses direct arguments. The persisted `config/rtk-config.toml` retains one `[hooks]` table and the exact five exclusions required by [main bootstrap](https://github.com/seathatflowsinourveins/native-agent-stack/blob/14048b840425c2569e0df60a6596e94e601da15b/adoption/bootstrap.md#L551); [config.rs, lines 119-123](https://github.com/rtk-ai/rtk/blob/v0.51.0/src/core/config.rs#L119-L123) declares `exclude_commands`. - **Headroom 0.37.0 (`output-compression`)**: [README, line 92](https://raw.githubusercontent.com/headroomlabs-ai/headroom/v0.37.0/README.md#L92) (`uv tool install --python 3.13`, with the pins file's `[mcp]` extra instead of the README's `[all]`); [`headroom --version`, line 437](https://raw.githubusercontent.com/headroomlabs-ai/headroom/v0.37.0/README.md#L437). -- **jcodemunch-mcp 1.108.327 (`code-index`)**, source `6d5ae86c130f96624e2ca2d797fa3b853c210b9d`: [README, line 91](https://raw.githubusercontent.com/jgravelle/jcodemunch-mcp/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/README.md#L91) (`uv tool install`) and [line 113](https://raw.githubusercontent.com/jgravelle/jcodemunch-mcp/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/README.md#L113) (`--version`); the pin and the root: recipes/README.md lines 519-524. The selected .327 pin is in `manifests/stack.json`; its recorded W1 qualification and limitations are in `evidence/receipts/jcodemunch-1108327-qualification-20261003.json`. +- **jcodemunch-mcp 1.108.327 (`code-index`)**, source `6d5ae86c130f96624e2ca2d797fa3b853c210b9d`: [README, line 91](https://raw.githubusercontent.com/jgravelle/jcodemunch-mcp/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/README.md#L91) (`uv tool install`) and [line 113](https://raw.githubusercontent.com/jgravelle/jcodemunch-mcp/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/README.md#L113) (`--version`); the ecosystem root, `--python 3.13` and `==1.108.327`: [recipes/README.md:554-559 at the merged commit](https://github.com/seathatflowsinourveins/native-agent-stack/blob/f640b53094ed4de5a526cda44d6341de9598df30/recipes/README.md#L554-L559), with the version assertion at [line 560](https://github.com/seathatflowsinourveins/native-agent-stack/blob/f640b53094ed4de5a526cda44d6341de9598df30/recipes/README.md#L560). The selected .327 pin is in `manifests/stack.json`; its recorded W1 qualification and limitations are in `evidence/receipts/jcodemunch-1108327-qualification-20261003.json`. Read on 2026-10-05 at 2026-10-05T04:17:40Z: the README at `6d5ae86c130f96624e2ca2d797fa3b853c210b9d` and prior pin `8f7b34abe16fb459e0bf1c04747d584216dfe32e` has identical lines 91 (`uv tool install`), 113 (`--version`) and 141 ([session-stats confirmation](https://raw.githubusercontent.com/jgravelle/jcodemunch-mcp/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/README.md#L141)); these anchors did not move. - **codebase-memory-mcp 0.11.0 (`code-graph`)**: [README, lines 88-95](https://raw.githubusercontent.com/DeusData/codebase-memory-mcp/v0.11.0/README.md#L88) (the archive, then its `install.sh`, which the plan does not run); [`--version`, src/main.c line 1236](https://raw.githubusercontent.com/DeusData/codebase-memory-mcp/v0.11.0/src/main.c#L1236). The archive holds the executable, `LICENSE`, `THIRD_PARTY_NOTICES.md` and `install.sh`. - **Repomix 1.18.1 (`repo-packing`)**, source `80b4280a9196feace092fc672dfe2b5fac62ef08`: [README, line 109](https://raw.githubusercontent.com/yamadashy/repomix/80b4280a9196feace092fc672dfe2b5fac62ef08/README.md#L109) (`npm install -g repomix`); checks: [`--version`, line 609](https://raw.githubusercontent.com/yamadashy/repomix/80b4280a9196feace092fc672dfe2b5fac62ef08/README.md#L609), [`--include`, line 204](https://raw.githubusercontent.com/yamadashy/repomix/80b4280a9196feace092fc672dfe2b5fac62ef08/README.md#L204) and [`--style`, line 628](https://raw.githubusercontent.com/yamadashy/repomix/80b4280a9196feace092fc672dfe2b5fac62ef08/README.md#L628); the two-file pack is this project's integration check. - **TOON 4.1.1 (`structured-data`)**: [packages/cli/README.md, line 11](https://raw.githubusercontent.com/toon-format/toon/v4.1.1/packages/cli/README.md#L11) (`npm install -g @toon-format/cli`), [line 63](https://raw.githubusercontent.com/toon-format/toon/v4.1.1/packages/cli/README.md#L63) (`-o`) and [line 65](https://raw.githubusercontent.com/toon-format/toon/v4.1.1/packages/cli/README.md#L65) (`--decode`); `--version` prints only the version (adoption/pins-linux-x86_64.json, line 267). The round trip is this project's integration check. diff --git a/evidence/artifacts/new-wsl-install-plan-20261002/install.sh b/evidence/artifacts/new-wsl-install-plan-20261002/install.sh index a5c41ad78..1d2477cb0 100755 --- a/evidence/artifacts/new-wsl-install-plan-20261002/install.sh +++ b/evidence/artifacts/new-wsl-install-plan-20261002/install.sh @@ -454,7 +454,7 @@ output-compression() { code-index() { # jcodemunch-mcp 1.108.327 | uv-tool | planned # UNRUN on every distribution: added from the wave-3 batch of 2026-10-04 (the owner's decision, amendment 4), after every recorded run of this plan. - # Planned. Source: https://raw.githubusercontent.com/jgravelle/jcodemunch-mcp/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/README.md#L91 (uv tool install jcodemunch-mcp); manifests/stack.json (jcodemunch-mcp 1.108.327, source 6d5ae86c130f96624e2ca2d797fa3b853c210b9d); evidence/receipts/jcodemunch-1108327-qualification-20261003.json (recorded W1 qualification and limitations; this plan row remains UNRUN) + # Planned. Source: https://raw.githubusercontent.com/jgravelle/jcodemunch-mcp/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/README.md#L91 (uv tool install jcodemunch-mcp); https://github.com/seathatflowsinourveins/native-agent-stack/blob/f640b53094ed4de5a526cda44d6341de9598df30/recipes/README.md#L554-L560 (--python 3.13, the selected pin, UV_TOOL_DIR/UV_TOOL_BIN_DIR under the ecosystem root, and --version); manifests/stack.json (jcodemunch-mcp 1.108.327, source 6d5ae86c130f96624e2ca2d797fa3b853c210b9d); evidence/receipts/jcodemunch-1108327-qualification-20261003.json (recorded W1 qualification and limitations; this plan row remains UNRUN) run_command 'UV_TOOL_DIR="${ECO_ROOT:-$HOME/.local/share/codex-ecosystem}/python-tools" UV_TOOL_BIN_DIR="${ECO_ROOT:-$HOME/.local/share/codex-ecosystem}/bin" uv tool install --python 3.13 jcodemunch-mcp==1.108.327' || return "$?" } diff --git a/manifests/evidence.json b/manifests/evidence.json index 064da3094..e30453dbd 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -16607,8 +16607,8 @@ }, { "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "57e9b58c006d2d678b58e528088f3bd2e6c5a961cf642581de8ed155c9f43916", - "bytes": 39135 + "sha256": "23564630816b2b2d2f5154ce51bc101615134901721e9d13c85a6e062f68a6ed", + "bytes": 44444 }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", @@ -16852,8 +16852,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "61d605859cce48fafae82a642f387befa854a5e230d4aa6ddc1eece0f7718ed9", - "bytes": 41786 + "sha256": "15a129620db4569832c8b8ba9c5a0005cc9eb8d868548d12aad3d2eb02903af6", + "bytes": 41808 }, { "path": "docs/full-stack-convergence.md", @@ -39092,8 +39092,8 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "db541a233daedf533543e9902c1e430c1091a7af40fcee9e56bae87e433952e1", - "bytes": 5620 + "sha256": "50b4fc60487595d935499ff4f4dc6fd7345d1c0c3db14ebb496f6c3c61783a10", + "bytes": 6297 }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/slot-state-and-core-recipes.json", @@ -39102,13 +39102,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md", - "sha256": "30e73180781e42ee236962af77dcce78a777b6815731959b65f9b21059f44b01", - "bytes": 64229 + "sha256": "6ae1ac928e0c934f97e24411c60b963dd6cbe206a6c7d8b7078eec6d1dc48882", + "bytes": 64583 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md", - "sha256": "3617bb263354d0e963f3325457aea747ac38a22b0664df8927b657b7adc2bcf4", - "bytes": 140790 + "sha256": "3d479addd11d1537b556b67dc01519b4f9e6e81220492d91774ea384695e1bc5", + "bytes": 141789 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/VALIDATION.md", @@ -39387,8 +39387,8 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install.sh", - "sha256": "b82cbd7f314100820a8326fc1e29ab97277fe43564329bcfa40e800b82e8e160", - "bytes": 102206 + "sha256": "60092712e9483273469315ad6649d047e850b9488df1561f1947a0385bf01134", + "bytes": 102445 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/mise.toml", From f37b1ac43dc61e9fcdcf89e7127786de1470490d Mon Sep 17 00:00:00 2001 From: Scout Date: Mon, 5 Oct 2026 00:56:52 -0400 Subject: [PATCH 27/50] Hot-file protocol: reset manifests/evidence.json manifests/stack.json to the merge base before the final hot-file commit Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 6008 +++++++++++++++++++-------------------- manifests/stack.json | 79 +- 2 files changed, 2917 insertions(+), 3170 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index e30453dbd..3952640a2 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -2,791 +2,518 @@ "schema_version": 1, "receipts": [ { - "id": "adaptive-paper-practice-20260921", + "id": "memory-lifecycle-probe-20260921", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "claude-code", - "codex" + "ai-memory" ], - "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", + "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", "limitations": [ - "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", - "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", - "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", - "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." + "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", + "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", + "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", + "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", + "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", + "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." ], - "path": "evidence/receipts/adaptive-paper-practice-20260921.json" + "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" }, { - "id": "adoption-macos-hosted-smoke-20260922", - "kind": "native_cli_e2e", + "id": "catalog-runtime-review-20260921", + "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "dagu" ], - "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", + "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", "limitations": [ - "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", - "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", - "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", - "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", - "socraticode is the profile's documented unpinned skip and was not installed." + "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", + "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", + "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" + "path": "evidence/receipts/catalog-runtime-review-20260921.json" }, { - "id": "adoption-macos-hosted-smoke-20260923", + "id": "catalog-clean-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "codex" ], - "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", + "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", "limitations": [ - "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", - "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", - "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", - "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." + "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", + "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", + "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" + "path": "evidence/receipts/catalog-clean-install-20260921.json" }, { - "id": "agent-browser-lna-20260930", - "kind": "artifact_measurement", + "id": "dashboard-gap-resolution-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "playwright-test" + "ai-memory", + "codex", + "claude-code", + "agentsview", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo", + "vllm" ], - "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", + "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", "limitations": [ - "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", - "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", - "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", - "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." + "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", + "Fresh PreCompact event and active Desktop session end remain unforced.", + "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", + "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", + "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", + "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." ], - "path": "evidence/receipts/agent-browser-lna-20260930.json" + "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" }, { - "id": "ai-memory-240-qualification-20260925", + "id": "dashboard-render-e2e-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "ai-memory", + "qdrant", + "socraticode", + "serena", + "agentsview", + "dagu", + "omniroute", + "agent-browser", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", + "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", - "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", - "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", - "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", - "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", - "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", - "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." + "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", + "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", + "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", + "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", + "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", + "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", + "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." ], - "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" + "path": "evidence/receipts/dashboard-render-e2e-20260921.json" }, { - "id": "ai-memory-241-qualification-20260925", + "id": "hf-memory-models-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "ai-memory", + "socraticode", + "vllm", + "grafana" ], - "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", + "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", - "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", - "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", - "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", - "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", - "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", - "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." + "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", + "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", + "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", + "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", + "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", + "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." ], - "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" + "path": "evidence/receipts/hf-memory-models-20260921.json" }, { - "path": "blueprints/us-equities/state-recovery/memory/receipt.json", - "id": "ai-memory-native-state-recovery-20260919", + "id": "native-memory-rag-alignment-20260921", "kind": "native_cli_e2e", "component_ids": [ "ai-memory", - "restic" + "socraticode", + "qdrant", + "qmd", + "vllm", + "grafana", + "loki" ], - "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", + "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", "limitations": [ - "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", - "38 pages table rows include historical versions, not 38 current pages.", - "Native backup excludes raw/, model caches, logs and external native session transcripts.", - "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", - "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", - "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." - ] + "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", + "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", + "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", + "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", + "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", + "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", + "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." + ], + "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" }, { - "path": "blueprints/us-equities/order-contract/receipt.json", - "id": "alpaca-offline-order-contract-20260919", + "id": "native-returned-results-20260921", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py" + "codex", + "claude-code", + "rtk", + "context-mode", + "qmd", + "serena", + "ai-memory", + "socraticode", + "qdrant", + "agentsview", + "grafana", + "loki", + "prometheus", + "dagu", + "ntfy", + "omniroute", + "agent-browser", + "promptfoo", + "headroom", + "jcodemunch-mcp" ], - "claim": "Installed alpaca-py request models silently dropped synthetic advanced fields; this explicit broker-disconnected basic-intent boundary rejected those inputs and eight additional negative cases while preserving canonical decimal strings.", + "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", "limitations": [ - "Local contract is not wired into unrelated SDK calls or existing workers; explicit future adapter adoption is required.", - "No broker account, key, asset lookup, risk approval, live/paper order or provider wire behavior was exercised.", - "Whole-share basic create-intent subset only; advanced, replacement, cancellation, retries, order journals and reconciliation remain gated.", - "Input representation cap and symbol/client-ID syntax are local conservative policies, not provider or risk authorization.", - "Python SDK float conversion is observed; the canonical exact decimal envelope is deliberately not serialized through those float fields.", - "JavaScript advanced support is pinned-source evidence only; no alternative SDK was installed or executed.", - "Python audit events and the Linux namespace substantiate this scoped probe, not a universal sandbox or macOS acceptance.", - "Canonical content hashes do not establish client-ID uniqueness, deduplication or safe retry semantics.", - "No token-saving claim or model inference belongs to this deterministic task." - ] + "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", + "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", + "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", + "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", + "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", + "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", + "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", + "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", + "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." + ], + "path": "evidence/receipts/native-returned-results-20260921.json" }, { - "id": "alpaca-paper-e2e-20260921", + "id": "native-workflow-writing-comparison-20260921", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", "claude-code" ], - "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", + "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", "limitations": [ - "One operational smoke trial, not profitable strategy or continuous trading acceptance.", - "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", - "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." + "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", + "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", + "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." ], - "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" + "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" }, { - "id": "artifact-reductions", - "path": "evidence/receipts/artifact-reductions.json", - "kind": "artifact_measurement", + "id": "native-workflow-graceful-recovery-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "socraticode", - "openresearch", - "context-mode" + "claude-code" ], - "claim": "Recorded exact selected-text reductions, distinct from model usage.", + "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", "limitations": [ - "Lossy selections compare retained text to full-file/paper counterfactuals.", - "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." - ] + "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", + "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", + "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", + "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." + ], + "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" }, { - "id": "broad-universe-research-20260921", + "id": "portable-userspace-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "duckdb", - "claude-code", - "codex" + "rtk", + "qmd", + "repomix", + "toon", + "codex", + "claude-code" ], - "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", + "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", "limitations": [ - "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", - "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", - "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", - "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", - "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." + "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", + "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", + "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", + "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", + "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", + "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", + "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", + "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", + "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." ], - "path": "evidence/receipts/broad-universe-research-20260921.json" + "path": "evidence/receipts/portable-userspace-install-20260921.json" }, { - "id": "canary-proof-verification-20261001", - "kind": "artifact_measurement", + "id": "claude-selective-context-pilot-20260921", + "kind": "native_model_e2e", "component_ids": [ "claude-code", - "codex", - "systemd" + "context-mode" ], - "claim": "The canary proof tool (tools/credentials/canary_proof.py, 1,834 lines, with the contained scan worker tools/credentials/canary_scan_worker.py, 2,114 lines) passed its synthetic acceptance on the workstation on 2026-10-01 on main with the K4 guard: its unit suite ran 143 tests, OK, with none skipped (including 12 cases that start transient systemd user scopes); its mutation runner killed 138 of 138 mutants by failures of their named permanent tests after 90 passing unmutated runs; and the credential, guard, Codex worker-lane and pre-commit suites ran 531 tests with one failure by design (the installed host copy of the guard). The tool plants a unique synthetic canary, lets named consumers use it through the key runner, and searches the named sinks with ripgrep in a worker that runs in a finite systemd user scope; its classifier refuses unless every required check has a fresh, complete result bound to the run. Reviews: a read-only GPT-6 verification found seven paths to a false clean verdict and four high findings, and an Opus build review found one blocking gap in the contract's acceptance cases; one repair round by a GPT-6 runtime worker fixed them, each with a permanent test and a mutant; an Opus re-check confirmed 37 of 42 dispositions and found one more false-clean path (a Git object store with no HEAD, refs or .git name, reached directly) and a record-validation defect, which one bounded fix round closed with tests and mutants. No end-to-end proof has run: it is the new distribution's acceptance after its guard install.", + "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", "limitations": [ - "Synthetic acceptance only: every sink, canary, Git store, SQLite database and journal in these runs is a fixture the tests build under a temporary directory; no real consumer, transcript, log, journal or credential was used, and no proof claim is made before the end-to-end run.", - "Containment evidence is workstation scope enforcement: the real-scope classes start transient systemd user scopes on this host (12 cases, all passing); hosted CI runners skip them where no user scope exists.", - "Scanner: ripgrep 14.1.0 is the executed version; the runtime also accepts 15.2.0 on a source-reviewed output grammar that no run has executed.", - "Size: the implementation (3,948 coordinator and worker lines) and the permanent test file (3,632 lines) exceed the contract's ceilings (1,800 and 2,800); the coordinator accepted the deviation for the required coverage and containment logic, and the reviews' dead-code findings were removed.", - "Residuals from the Opus re-check, recorded in the decision record: a completed but too-early or stale final is labelled requested_incomplete; the WAL/SHM-without-valid-main guard, Walk.covered's exclusion, time, special-file and symlinked-parent branches, and several O12 changes have no test of their own; three mutants are missing (END count/aux, --text, a count-based Git reconcile); bind_scope's refusal paths and the real scope_populated parser are untested; the scan's exit code still comes from events it does not validate.", - "Evidence classes differ: the unit, mutation and suite runs were made by the coordinator on the final head outside any sandbox; the reviews are read-only cross-family reads, not proofs." + "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", + "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", + "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", + "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", + "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", + "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", + "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", + "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." ], - "path": "evidence/receipts/canary-proof-verification-20261001.json" + "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" }, { - "id": "catalog-clean-install-20260921", + "id": "native-dashboard-data-20260921", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "ai-memory", + "socraticode", + "qmd", + "qdrant", + "agentsview", + "grafana", + "loki", + "rtk", + "context-mode", + "headroom", + "jcodemunch-mcp", + "promptfoo", + "serena", + "systemd" ], - "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", + "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", "limitations": [ - "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", - "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", - "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." + "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", + "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", + "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", + "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", + "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", + "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", + "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", + "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", + "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." ], - "path": "evidence/receipts/catalog-clean-install-20260921.json" + "path": "evidence/receipts/native-dashboard-data-20260921.json" }, { - "id": "catalog-freshness-20260923", - "kind": "upstream_provenance", + "id": "foundation-closure-20260921", + "kind": "native_cli_e2e", "component_ids": [ "claude-code", "codex", - "llama-cpp", - "mcp-inspector", - "openresearch", - "skfolio" + "affaan-m/ECC", + "context-mode" ], - "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", + "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", "limitations": [ - "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", - "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", - "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", - "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." + "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", + "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", + "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", + "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", + "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", + "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", + "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", + "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." ], - "path": "evidence/receipts/catalog-freshness-20260923.json" + "path": "evidence/receipts/foundation-closure-20260921.json" }, { - "id": "catalog-runtime-review-20260921", - "kind": "native_model_e2e", + "id": "native-quality-defaults-20260920", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "dagu" + "claude-code" ], - "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", + "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", "limitations": [ - "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", - "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", - "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." + "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", + "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", + "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", + "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", + "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." ], - "path": "evidence/receipts/catalog-runtime-review-20260921.json" + "path": "evidence/receipts/native-quality-defaults-20260920.json" }, { - "id": "ccusage-20026-qualification-20260927", + "id": "native-terminal-profiles-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ccusage" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", - "limitations": [ - "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", - "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", - "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", - "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", - "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", - "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", - "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", - "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", - "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", - "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", - "New hosts receive this pin only after the next release tag." - ], - "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" - }, - { - "id": "claude-advisor-usage-scan-20260928", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code" + "codex", + "claude-code", + "qdrant", + "vllm" ], - "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", + "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", - "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", - "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", - "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", - "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", - "Whether ccusage or ecosystem-token-report count these entries was not checked." + "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", + "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", + "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", + "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", + "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." ], - "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" + "path": "evidence/receipts/native-terminal-profiles-20260920.json" }, { - "id": "claude-foundation-finalization-20260921", - "kind": "native_model_e2e", + "id": "native-claude-profile-20260920", + "kind": "native_cli_e2e", "component_ids": [ "claude-code", "codex", - "agent-browser", - "repomix" + "affaan-m/ECC", + "context-mode", + "rtk" ], - "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", + "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", "limitations": [ - "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", - "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", - "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", - "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." + "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", + "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", + "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", + "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", + "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", + "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", + "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", + "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", + "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." ], - "path": "evidence/receipts/claude-foundation-finalization-20260921.json" + "path": "evidence/receipts/native-claude-profile-20260920.json" }, { - "id": "claude-host-practice-readback-20260928", + "id": "native-offhost-restic-20260920", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "claude-hud", - "headroom", - "mcporter", - "jcodemunch-mcp", - "agent-browser", - "qmd" + "restic" ], - "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", + "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", "limitations": [ - "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", - "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", - "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", - "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", - "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", - "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", - "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." + "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", + "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", + "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", + "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", + "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", + "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." ], - "path": "evidence/receipts/claude-host-practice-readback-20260928.json" + "path": "evidence/receipts/native-offhost-restic-20260920.json" }, { - "id": "claude-hud-0100-qualification-20261003", + "id": "native-dagu-retry-tests-20260920", "kind": "native_cli_e2e", "component_ids": [ - "claude-hud" + "dagu" ], - "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", "limitations": [ - "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", - "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", - "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", + "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", + "No broker/provider operations or token savings were measured.", + "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" }, { - "id": "claude-hud-0100-qualification-20261004", - "kind": "native_cli_e2e", + "id": "native-token-stack-final-20260920", + "kind": "native_model_e2e", "component_ids": [ - "claude-hud" - ], - "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed claude-hud 0.10.0 from tag v0.10.0 through native Claude plugin commands after an initial marketplace-source mismatch failed. Native marketplace remove/add and plugin install succeeded; plugin list showed version 0.10.0 enabled at user scope. Direct and configured statusline commands rendered a sample payload with exit 0. This is historical plugin and sample-render evidence, not a new interactive terminal session or model run.", - "limitations": [ - "No macOS execution and no upstream test suite run. There are no release assets for this tag; the supported installation remains a native Claude Code plugin, not a tarball bootstrap kind.", - "First marketplace add failed with exit 1 due to the old source entry; native remove/add/install recovered it. Sample statusline rendering does not establish a fresh interactive Claude session or provider usage.", - "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." - ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" - }, - { - "id": "claude-max-default-effort-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", - "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", - "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", - "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", - "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", - "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", - "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", - "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." - ], - "path": "evidence/receipts/claude-max-default-effort-20260929.json" - }, - { - "id": "claude-model-effort-probes-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", - "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", - "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", - "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", - "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." - ], - "path": "evidence/receipts/claude-model-effort-probes-20260929.json" - }, - { - "id": "claude-project-effort-flag-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", - "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", - "The Ultracode reminder is an indicator, not proof of workflow orchestration.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." - ], - "path": "evidence/receipts/claude-project-effort-flag-20260929.json" - }, - { - "id": "claude-repository-evidence-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "alpaca-py", - "ast-grep", - "beads", - "ccusage", "claude-code", - "claude-hud", "codex", - "codex-for-claude", - "context-hub", "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "duckdb", - "edgartools", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nautilus-trader", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "pandas", - "playwright-cli", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "restic", + "headroom", "rtk", - "sandbox-runtime", - "serena", - "shellcheck", - "skfolio", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "opentelemetry-collector-contrib", + "loki", + "prometheus" ], - "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", + "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", "limitations": [ - "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", - "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", - "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", - "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", - "Superseded observations, including the author's own probe and invocation errors, remain recorded." + "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", + "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", + "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", + "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", + "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", + "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", + "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", + "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." ], - "path": "evidence/receipts/claude-repository-evidence-20260921.json" + "path": "evidence/receipts/native-token-stack-final-20260920.json" }, { - "id": "claude-selective-context-pilot-20260921", + "id": "native-rag", + "path": "evidence/receipts/native-rag.json", "kind": "native_model_e2e", "component_ids": [ - "claude-code", - "context-mode" - ], - "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", - "limitations": [ - "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", - "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", - "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", - "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", - "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", - "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", - "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", - "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." - ], - "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" - }, - { - "id": "claude-spend-attribution-20260929", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code", - "ccusage" - ], - "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", - "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", - "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", - "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", - "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", - "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", - "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", - "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", - "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", - "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", - "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." - ], - "path": "evidence/receipts/claude-spend-attribution-20260929.json" - }, - { - "id": "claude-spend-window-20261004", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code", - "ccusage", - "context-mode" - ], - "claim": "Retained Claude-only ccusage daily costs rise from $2,823.79 and $2,427.25 on October 1/2 to $5,940.56 on October 3. The supplied executor window comparison reproduces exactly from count-only scanner outputs: IET per 24 h rises 2.121 times, counted call rows 2.419 times, and subagents started 2.824 times, while mean context per call falls from 271,790 to 216,230 tokens. The unfiltered retained session-view export is $12,404.88 and its workflow share is 61.402%; removing 17 rows with pre-10-03 last activity leaves $11,151.92, with coordinator-tree shares 63.296% and 33.787%. These are session-selection views, not spend since 10-03. Net pre-first-call attachment growth excluding UI is about 2.9 KB (0.8K rough tokens), rather than the positive-only 4.3 KB (1.2K) estimate. These are scoped observations, not subscription charges or a quality comparison. Adding the retained advisor-cohort estimate gives 830.270M and 1,777.960M IET per 24 h (2.141 times); all 689 A and 1,209 B advisor iterations in those cohorts used Fable. Fable is $2,092.87, or 35.230% of priced Claude dollars on 10-03. The user subsequently selected an Opus 5.5 advisor.", - "limitations": [ - "API-equivalent prices are not the subscription meter. ccusage leaves claude-sonnet-5-5 unpriced; its dollars therefore do not price every counted Claude model.", - "ccusage days are local time and Prometheus days are UTC. These scopes and the scanner windows must not be summed or equated.", - "Prometheus keeps one week; this retained export starts with the UTC day 2026-09-27 and ends with 2026-10-03.", - "The attr byte shares use unfitted weights, so they show direction only; receipt context shares exclude UI records before normalization.", - "The hook_success records are UI-only and are not counted as context. Pre-first-call attachment sizes are serialized metadata bytes, not exact model input or tokenization.", - "NativeStack only, because NativeStack2604's telemetry has no listener. This scope is the coordinator's stated observation boundary, not a new listener check.", - "10-04 is a partial day. The scanner ends at 14:00Z; no full-day projection is a measured total.", - "This is a re-derivation of retained native outputs and scanner aggregates, not a new provider/model run, an upstream acceptance test, or a quality/savings A/B.", - "window_compare.py includes synthetic zero-usage rows in its call counts and uses per-field maximum deduplication. Its subagent calls-per-file statistic spans each selected file, whereas its call and IET windows filter call timestamps.", - "Window hook text is not retained in the aggregate inputs. Historical hook-text estimates are reported as estimates; current installed carrier and upstream static hook sizes are distinct observations and do not establish historical hook outputs.", - "The unfiltered session export includes pre-10-03 activity: 17 rows worth $1,252.96 have lastActivity before 2026-10-03T04:00Z. The raw and activity-selected shares have different denominators. Filtering lastActivity does not restrict the dates of every token in a session total; neither view is established as spend since 10-03.", - "The reproduction artifact extends the supplied analysis with advisor-cohort rows. Original executor output is unchanged. Its private raw output includes source identifiers; only sanitized aggregates are retained here.", - "Advisor iterations are absent from calls.tsv and retained only as per-file tot values in files.jsonl. Grouping them by file first_ts reproduces the reviewed cohorts, but files can cross window boundaries. Executor-plus-advisor-cohort IET is an estimate with mixed timestamp scopes, not an exact call-window total; advisor iterations have no recorded effort here.", - "IET applies the same coefficients to every model: input 1, cache read 0.1, five-minute and unclassified cache writes 1.25, one-hour cache writes 2, and output 5, with thinking already in output. There is no model-specific base-price multiplier. Advisor aggregates lack cache-write duration splits and weight all cache writes at 1.25. Thus IET model shares and window ratios are relative-index measures, not dollar shares or actual spend ratios; Fable dollars from ccusage remain separate. Historical Fable usage precedes the new Opus advisor decision." - ], - "path": "evidence/receipts/claude-spend-window-20261004.json" - }, - { - "id": "claude-upstream-checks-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "ast-grep", - "beads", - "ccusage", - "claude-code", "codex", - "codex-for-claude", - "context-mode", - "dagu", - "difftastic", - "gitleaks", - "grafana", - "headroom", - "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcporter", - "nautilus-trader", - "openresearch", - "opentelemetry-collector-contrib", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "rtk", - "serena", + "claude-code", "socraticode", - "tavily-cli", - "toon", + "qdrant", "vllm", - "worktrunk", - "zizmor" - ], - "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", - "limitations": [ - "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", - "Complete originals remain private; public excerpts are bounded and sanitized.", - "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." - ], - "path": "evidence/receipts/claude-upstream-checks-20260921.json" - }, - { - "id": "codex-01571-qualification-20260926", - "kind": "native_cli_e2e", - "component_ids": [ - "codex" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", - "limitations": [ - "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", - "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", - "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", - "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", - "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", - "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", - "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", - "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", - "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", - "Linux x86_64 only, one host; nothing here is macOS evidence." - ], - "path": "evidence/receipts/codex-01571-qualification-20260926.json" - }, - { - "id": "codex-01592-qualification-20260930", - "kind": "native_cli_e2e", - "component_ids": [ - "codex" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", - "limitations": [ - "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", - "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", - "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", - "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", - "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", - "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", - "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", - "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", - "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", - "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", - "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", - "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", - "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", - "Linux x86_64 only, one host; nothing here is macOS evidence." - ], - "path": "evidence/receipts/codex-01592-qualification-20260930.json" - }, - { - "id": "codex-01593-hindsight-native-memory-20261001", - "kind": "native_cli_e2e", - "component_ids": [ - "codex" + "huggingface-hub-native" ], - "claim": "Fresh native Codex automatic capture and independent recollection from the selected Hindsight bank passed in both headless exec and daemon-backed interactive resume/queue paths.", + "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", "limitations": [ - "Two invented canaries and their record budgets are explicitly synthetic, not project policy, market data or trading acceptance.", - "This is supported native command/API execution with synthetic inputs and independent observation, not an executed upstream Docker or Cargo test suite.", - "Headless exec and daemon-backed TUI are distinct paths; each has its own fresh provider-backed observations below.", - "Knowledge-page search completed but did not contain either canary. Native Hindsight reflect supplied the correct values; page population or cron refresh is not qualified here.", - "Backend seed/survey completion was not established. Native status reported synced=false with active operations; the coordinator separately owns seed-job recovery.", - "Native model token usage excludes Hindsight backend extraction/reflection usage. Backend usage and monetary cost are unknown.", - "No production-quality or token-efficiency comparison is claimed, and no unrelated session or authentication store was read." - ], - "path": "evidence/receipts/codex-01593-hindsight-native-memory-20261001.json" + "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", + "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." + ] }, { - "id": "codex-01593-native-queue-20261001", - "kind": "native_cli_e2e", + "id": "native-memory", + "path": "evidence/receipts/native-memory.json", + "kind": "native_model_e2e", "component_ids": [ - "codex" + "ai-memory", + "codex", + "claude-code" ], - "claim": "Fresh provider-backed native queue delivery succeeded while the owned daemon-backed thread was idle, while a preceding turn was busy, and after its TUI disconnected and resumed. Three official Hindsight hook definitions were individually trusted through the native UI.", + "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", "limitations": [ - "Synthetic messaging inputs qualify these native operations, not production task quality or the whole ecosystem.", - "No upstream Cargo test suite was run; upstream test sources were reviewed and native commands were exercised.", - "No daemon restart was attempted during live qualification, and no unrelated session was inspected or interrupted.", - "Queue delivery to a concurrently running embedded receiver, cross-family bridge delivery, cross-account isolation, remote hosts, and Hindsight retrieval/retention are outside this receipt.", - "Hindsight capture remained disabled during hook trust. Hook trust is not memory acceptance.", - "Provider monetary cost is unknown. Native usage counters do not establish improvement against another configuration." - ], - "path": "evidence/receipts/codex-01593-native-queue-20261001.json" + "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", + "No historical archive backfill or LLM/embedding consolidation pipeline enabled." + ] }, { - "id": "codex-desktop-live-20260920", - "kind": "native_cli_e2e", + "id": "native-context-memory", + "path": "evidence/receipts/native-context-memory.json", + "kind": "native_model_e2e", "component_ids": [ "codex", + "claude-code", "context-mode", - "jcodemunch-mcp", "serena", - "ai-memory", - "socraticode", - "rtk", - "headroom", - "qmd", - "loki", - "prometheus" + "rtk" ], - "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", + "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", "limitations": [ - "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", - "Tools without native savings ledgers remain unavailable, not zero.", - "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", - "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", - "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", - "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", - "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", - "No fresh Prometheus turn sample in the selected window; no three-way observation join." - ], - "path": "evidence/receipts/codex-desktop-live-20260920.json" + "Earlier Serena/RTK run uses its original CLI version.", + "PreCompact was not induced; current Desktop catalog is distinct from child native clients." + ] }, { - "id": "codex-session-environment-20260920", + "id": "runtime-tools", + "path": "evidence/receipts/runtime-tools.json", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "context-mode", - "jcodemunch-mcp", - "serena", - "ai-memory", - "socraticode" + "gitleaks", + "sandbox-runtime" ], - "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", + "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", "limitations": [ - "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", - "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", - "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", - "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", - "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", - "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", - "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." - ], - "path": "evidence/receipts/codex-session-environment-20260920.json" + "No claim of full security certification.", + "Sandbox network denial configured but not separately exercised." + ] }, { - "id": "codex-shell-snapshot-cleanup-20260930", + "id": "artifact-reductions", + "path": "evidence/receipts/artifact-reductions.json", "kind": "artifact_measurement", "component_ids": [ - "codex" + "rtk", + "socraticode", + "openresearch", + "context-mode" ], - "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", + "claim": "Recorded exact selected-text reductions, distinct from model usage.", "limitations": [ - "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", - "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", - "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", - "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." - ], - "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" + "Lossy selections compare retained text to full-file/paper counterfactuals.", + "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." + ] }, { "id": "component-history", @@ -837,116 +564,61 @@ ] }, { - "id": "cross-family-review-terminal-lane-20260930", + "id": "native-cli-gaps", + "path": "evidence/receipts/native-cli-gaps.json", "kind": "native_model_e2e", "component_ids": [ - "codex", - "omniroute", - "claude-code" + "qmd", + "codebase-memory-mcp", + "agent-browser" ], - "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", + "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", - "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", - "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", - "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", - "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", - "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", - "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." - ], - "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" + "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", + "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." + ] }, { - "id": "current-session-observation-20260920", + "id": "worktrunk-list", + "path": "evidence/receipts/worktrunk-list.json", "kind": "native_cli_e2e", "component_ids": [ - "agentsview", - "ai-memory", - "alertmanager", - "ccusage", - "claude-hud", - "context-mode", - "grafana", - "headroom", - "jcodemunch-mcp", - "loki", - "mcporter", - "ntfy", - "opentelemetry-collector-contrib", - "otel-tui", - "prometheus", - "rtk", - "serena", - "socraticode" + "worktrunk" ], - "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", + "claim": "Native wt list enumerated the actual publication worktree set.", "limitations": [ - "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", - "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", - "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", - "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", - "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", - "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", - "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", - "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." - ], - "path": "evidence/receipts/current-session-observation-20260920.json" + "Model-free repository inventory, not multi-agent correctness." + ] }, { - "id": "dashboard-gap-resolution-20260921", - "kind": "native_cli_e2e", + "id": "desktop-direct-rag", + "kind": "native_model_e2e", "component_ids": [ - "ai-memory", - "codex", - "claude-code", - "agentsview", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo", - "vllm" + "socraticode", + "qdrant", + "vllm", + "ai-memory" ], - "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", + "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", "limitations": [ - "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", - "Fresh PreCompact event and active Desktop session end remain unforced.", - "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", - "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", - "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", - "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." + "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", + "No whole-task provider usage/savings attribution is claimed." ], - "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" + "path": "evidence/receipts/desktop-direct-rag.json" }, { - "id": "dashboard-render-e2e-20260921", - "kind": "native_cli_e2e", + "id": "vllm-compatibility", + "kind": "compatibility_attempt", "component_ids": [ - "ai-memory", - "qdrant", - "socraticode", - "serena", - "agentsview", - "dagu", - "omniroute", - "agent-browser", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo" + "vllm", + "socraticode" ], - "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", + "claim": "Latest vLLM0.29.0 native install succeeded but GPU startup failed on WSL; publisher-validated0.25.0 restored and direct retrieval passed.", "limitations": [ - "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", - "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", - "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", - "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", - "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", - "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", - "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." + "This is a host-specific failure, not a claim0.29is universally unusable.", + "The resolver success does not establish GPU/runtime compatibility." ], - "path": "evidence/receipts/dashboard-render-e2e-20260921.json" + "path": "evidence/receipts/vllm-compatibility.json" }, { "id": "desktop-cli-workflows", @@ -965,20 +637,72 @@ "path": "evidence/receipts/desktop-cli-workflows.json" }, { - "id": "desktop-direct-rag", + "id": "portable-cli-artifacts", + "kind": "native_cli_e2e", + "component_ids": [ + "shellcheck", + "difftastic", + "markitdown", + "ast-grep", + "toon", + "repomix" + ], + "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", + "limitations": [ + "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", + "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." + ], + "path": "evidence/receipts/portable-cli-artifacts.json" + }, + { + "id": "native-observability", + "kind": "native_cli_e2e", + "component_ids": [ + "codex", + "claude-code", + "agent-browser", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "grafana", + "alertmanager", + "ntfy" + ], + "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", + "limitations": [ + "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", + "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", + "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", + "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", + "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", + "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." + ], + "path": "observability/receipt.json" + }, + { + "id": "native-observability-followup", "kind": "native_model_e2e", "component_ids": [ + "codex", + "context-mode", + "ai-memory", "socraticode", - "qdrant", - "vllm", - "ai-memory" + "agent-browser", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "grafana" ], - "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", + "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", "limitations": [ - "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", - "No whole-task provider usage/savings attribution is claimed." + "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", + "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", + "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", + "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", + "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", + "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." ], - "path": "evidence/receipts/desktop-direct-rag.json" + "path": "observability/followup-receipt.json" }, { "id": "desktop-restart-acceptance", @@ -1006,648 +730,549 @@ "path": "observability/restart-receipt.json" }, { - "id": "env-freshness-wsl-ubuntu-main-20260924", - "kind": "artifact_measurement", + "id": "sec-financial-data-20260919", + "kind": "compatibility_attempt", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "duckdb", - "pandas", - "edgartools", - "exchange-calendars", - "vllm" + "duckdb" ], - "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", + "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", "limitations": [ - "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", - "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", - "One host; each PC publishes its own report under the same schema.", - "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." + "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", + "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", + "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", + "Current API snapshots do not reconstruct historical point-in-time knowledge.", + "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", + "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." ], - "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" + "path": "blueprints/us-equities/financial-data/receipt.json" }, { - "id": "exchange-calendars-native-check-20260922", + "id": "restic-local-public-reference-20260919", "kind": "native_cli_e2e", "component_ids": [ - "exchange-calendars" + "restic" ], - "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", + "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", "limitations": [ - "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", - "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", - "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", - "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", - "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." + "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", + "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", + "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", + "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", + "Credential loss recovery requires separately approved secure key escrow." ], - "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" + "path": "blueprints/us-equities/hosting/backup/receipt.json" }, { - "id": "foundation-catalog-ui-20260920", - "kind": "artifact_measurement", + "id": "native-research-runtime-20260919", + "kind": "native_model_e2e", "component_ids": [ - "agent-browser" + "claude-code", + "dagu", + "lean", + "duckdb", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", + "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", "limitations": [ - "Source pin/publication URLs pending parent final source commit and regeneration.", - "No provider/broker execution or broad regression rerun performed.", - "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." + "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", + "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", + "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", + "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", + "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", + "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", + "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", + "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." ], - "path": "evidence/receipts/foundation-catalog-ui-20260920.json" + "path": "blueprints/us-equities/research-runtime/receipt.json" }, { - "id": "foundation-closure-20260921", + "path": "blueprints/us-equities/state-recovery/memory/receipt.json", + "id": "ai-memory-native-state-recovery-20260919", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "affaan-m/ECC", - "context-mode" + "ai-memory", + "restic" ], - "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", + "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", "limitations": [ - "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", - "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", - "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", - "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", - "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", - "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", - "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", - "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." - ], - "path": "evidence/receipts/foundation-closure-20260921.json" + "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", + "38 pages table rows include historical versions, not 38 current pages.", + "Native backup excludes raw/, model caches, logs and external native session transcripts.", + "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", + "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", + "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." + ] }, { - "id": "foundation-convergence-20260921", - "kind": "native_model_e2e", + "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", + "id": "qdrant-native-state-recovery-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "rtk", - "headroom", - "toon" + "qdrant", + "restic" ], - "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", + "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", "limitations": [ - "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", - "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", - "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", - "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", - "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." - ], - "path": "evidence/receipts/foundation-convergence-20260921.json" + "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", + "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", + "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", + "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", + "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." + ] }, { - "id": "foundation-native-20260920", + "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", + "id": "qmd-bm25-retrieval-20260919", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qmd", - "qdrant", - "vllm", - "socraticode", - "serena", - "context-mode", - "jcodemunch-mcp", - "rtk", - "headroom", - "repomix", - "toon", - "codex", - "claude-code", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "omniroute" + "qmd" ], - "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", + "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", "limitations": [ - "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", - "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", - "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", - "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", - "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", - "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", - "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", - "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", - "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." - ], - "path": "evidence/receipts/foundation-native-20260920.json" + "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", + "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", + "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", + "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", + "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", + "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", + "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", + "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", + "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", + "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", + "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." + ] }, { - "id": "foundation-rd-20260921", + "path": "blueprints/us-equities/convergence-review/receipt.json", + "id": "native-claude-convergence-review-20260919", "kind": "native_model_e2e", "component_ids": [ "claude-code", - "codex", - "codex-for-claude", - "qmd" + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", + "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", "limitations": [ - "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", - "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", - "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", - "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", - "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." - ], - "path": "evidence/receipts/foundation-rd-20260921.json" + "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", + "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", + "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", + "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", + "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", + "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." + ] }, { - "id": "full-stack-convergence-20260921", + "path": "blueprints/us-equities/supply-chain/receipt.json", + "id": "syft-sdk-inventory-20260919", "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "ccusage", - "claude-code", - "codex", - "context-mode", - "dagu", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "loki", - "omniroute", - "openresearch", - "prometheus", - "qdrant", - "qmd", - "repomix", - "rtk", - "serena", - "socraticode", - "toon", - "vllm", - "worktrunk" + "syft" ], - "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", + "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", "limitations": [ - "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", - "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", - "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", - "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", - "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", - "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", - "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", - "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." - ], - "path": "evidence/receipts/full-stack-convergence-20260921.json" + "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", + "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", + "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", + "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", + "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", + "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", + "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", + "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", + "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", + "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." + ] }, { - "id": "github-automation-newpc-20260922", + "path": "adoption/receipt.json", + "id": "portable-sdk-adoption-20260919", "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code" + "duckdb" ], - "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", + "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", "limitations": [ - "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", - "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", - "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", - "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", - "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", - "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." - ], - "path": "evidence/receipts/github-automation-newpc-20260922.json" + "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", + "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", + "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", + "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", + "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", + "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", + "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." + ] }, { - "id": "gitleaks-macos-memory-bound-20260924", - "kind": "native_cli_e2e", + "path": "adoption/paired/receipt.json", + "id": "native-paired-adoption-20260919", + "kind": "native_model_e2e", "component_ids": [ - "gitleaks" + "codex", + "claude-code", + "duckdb", + "dagu", + "lean", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", + "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", "limitations": [ - "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", - "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", - "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", - "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", - "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", - "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", - "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." - ], - "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" + "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", + "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", + "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", + "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", + "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", + "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", + "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", + "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." + ] }, { - "id": "guard-k3-verification-20260930", - "kind": "artifact_measurement", + "path": "blueprints/us-equities/architecture/receipt.json", + "id": "native-architecture-review-20260919", + "kind": "native_model_e2e", "component_ids": [ - "claude-code" + "codex", + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", + "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", "limitations": [ - "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", - "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", - "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", - "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", + "claim": "Installed alpaca-py request models silently dropped synthetic advanced fields; this explicit broker-disconnected basic-intent boundary rejected those inputs and eight additional negative cases while preserving canonical decimal strings.", "limitations": [ - "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", - "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", - "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", - "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", - "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", - "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", - "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", - "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." - ], - "path": "evidence/receipts/headroom-039-qualification-20260925.json" - }, - { - "id": "hf-memory-models-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "ai-memory", - "socraticode", - "vllm", - "grafana" - ], - "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", - "limitations": [ - "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", - "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", - "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", - "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", - "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", - "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." - ], - "path": "evidence/receipts/hf-memory-models-20260921.json" - }, - { - "id": "jcodemunch-1108327-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "jcodemunch-mcp" - ], - "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", - "limitations": [ - "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", - "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" - }, - { - "id": "local-inference-c2-serving-switch-20260926", - "kind": "native_model_e2e", - "component_ids": [ - "llama-cpp" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", - "limitations": [ - "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", - "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", - "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", - "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", - "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", - "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", - "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." - ], - "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" - }, - { - "id": "login-shell-contract-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code", - "codex" - ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", - "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", - "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", - "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", - "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", - "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", - "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", - "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", - "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", - "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." - ], - "path": "evidence/receipts/login-shell-contract-20260929.json" + "Local contract is not wired into unrelated SDK calls or existing workers; explicit future adapter adoption is required.", + "No broker account, key, asset lookup, risk approval, live/paper order or provider wire behavior was exercised.", + "Whole-share basic create-intent subset only; advanced, replacement, cancellation, retries, order journals and reconciliation remain gated.", + "Input representation cap and symbol/client-ID syntax are local conservative policies, not provider or risk authorization.", + "Python SDK float conversion is observed; the canonical exact decimal envelope is deliberately not serialized through those float fields.", + "JavaScript advanced support is pinned-source evidence only; no alternative SDK was installed or executed.", + "Python audit events and the Linux namespace substantiate this scoped probe, not a universal sandbox or macOS acceptance.", + "Canonical content hashes do not establish client-ID uniqueness, deduplication or safe retry semantics.", + "No token-saving claim or model inference belongs to this deterministic task." + ] }, { - "id": "mac-memory-patch-20260920", - "path": "evidence/receipts/mac-memory-patch-20260920.json", + "id": "native-memory-lifecycle-20260919", + "path": "blueprints/us-equities/memory-lifecycle/receipt.json", "kind": "native_cli_e2e", "component_ids": [ "ai-memory" ], - "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", + "claim": "A disposable, network-isolated native ai-memory fixture passed 23 lifecycle/routing checks across 31 MCP calls; exact-path TTL behavior and explicit sweep limits retained.", "limitations": [ - "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", - "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", - "No provider or whole-task token savings measurement." + "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", + "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", + "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", + "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", + "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", + "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", + "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", + "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", + "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", + "Isolated fixture, not the live memory store or all client hooks.", + "TTL is default-search visibility until sweep, not immediate access revocation.", + "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." ] }, { - "id": "mac-native-application-migration-20260920", + "id": "native-exact-nanosecond-replay-20260919", + "path": "blueprints/us-equities/nanosecond-replay/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "fastapi", - "postgresql" + "duckdb", + "pandas" ], - "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", + "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", "limitations": [ - "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", - "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", - "No model calls; whole-task provider usage unknown." - ], - "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" + "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", + "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", + "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", + "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", + "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", + "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", + "No broker, trading strategy, actual feed or net token-saving acceptance." + ] }, { - "id": "mac-native-container-storage-20260920", + "id": "native-worker-supervision-20260919", + "path": "blueprints/us-equities/worker-supervision/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "apple-container", - "postgresql" + "systemd" ], - "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", + "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", "limitations": [ - "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", - "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", - "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", - "Images remain cached; only owned empty failed container, test database container and test volume were removed.", - "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." - ], - "path": "blueprints/convergence-practice/container-storage/receipt.json" + "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", + "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", + "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", + "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", + "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", + "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", + "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", + "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", + "Hashes bind retained evidence bytes; they do not independently attest the execution.", + "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", + "Configured resource limits were inspected, not saturation-tested." + ] }, { - "id": "mac-native-document-ingestion-20260920", + "id": "native-grand-dashboard-20260919", + "path": "observability/grand-dashboard/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "poppler" + "grafana", + "loki", + "prometheus", + "dagu" ], - "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", + "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", "limitations": [ - "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", - "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", - "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", - "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", - "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." - ], - "path": "blueprints/convergence-practice/document-ingestion/receipt.json" + "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", + "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", + "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", + "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", + "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", + "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", + "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", + "Recorded worker/decision state is not a live process registry.", + "No broker execution, exact-once accounting, universal coverage or net token savings.", + "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." + ] }, { - "id": "markitdown-018-qualification-20260925", - "kind": "native_cli_e2e", + "id": "native-convergence-review-20260919", + "path": "blueprints/us-equities/convergence-program/review-receipt.json", + "kind": "native_model_e2e", "component_ids": [ - "markitdown" + "codex", + "claude-code", + "dagu" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", + "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", "limitations": [ - "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", - "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", - "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", - "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", - "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", - "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", - "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", - "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." - ], - "path": "evidence/receipts/markitdown-018-qualification-20260925.json" + "Models checked packet/report consistency, not original sources or underlying native artifacts.", + "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", + "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", + "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", + "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", + "Usage belongs to this pair only; not whole-goal consumption or causal savings." + ] }, { - "id": "mcp-inspector-280-qualification-20260926", + "id": "native-historical-leverage-stress-20260919", + "path": "blueprints/us-equities/historical-simulation/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "mcp-inspector" + "lean" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", + "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", "limitations": [ - "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", - "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", - "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", - "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", - "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." - ], - "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" + "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", + "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", + "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", + "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", + "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", + "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", + "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", + "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", + "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", + "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", + "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", + "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", + "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", + "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", + "No paper/live orders or automatic promotion." + ] }, { - "id": "mcp-inspector-290-qualification-20261003", + "id": "native-chronological-controls-20260919", "kind": "native_cli_e2e", "component_ids": [ - "mcp-inspector" + "skfolio", + "pandas", + "lean" ], - "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", "limitations": [ - "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", - "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", - "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", + "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", + "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", + "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", + "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", + "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", + "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", + "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." ], - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + "path": "blueprints/us-equities/research-evaluation/receipt.json" }, { - "id": "mcporter-0141-qualification-20260925", + "id": "native-edgartools-catalyst-20260919", "kind": "native_cli_e2e", "component_ids": [ - "mcporter" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", - "limitations": [ - "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", - "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", - "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", - "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", - "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", - "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." - ], - "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" - }, - { - "id": "mcporter-0142-qualification-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "mcporter" + "edgartools" ], - "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", + "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", - "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", - "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", + "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", + "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", + "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", + "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", + "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", + "Native text/byte counts are not provider token savings.", + "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." ], - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + "path": "blueprints/us-equities/catalyst-provenance/receipt.json" }, { - "id": "mcporter-0142-qualification-20261004", + "id": "native-simulation-research-dashboard-20260919", "kind": "native_cli_e2e", "component_ids": [ - "mcporter" + "grafana", + "loki" ], - "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed mcporter 0.14.2 and returned version 0.14.2 with exit 0. Registry provenance matched openclaw/mcporter release.yml at v0.14.2, and a scratch npm audit verified 43 registry signatures and 15 attestations. Ad-hoc stdio jcodemunch session statistics and context-mode ctx_stats calls returned exit 0. Configured-daemon calls failed on a stale rendezvous and were not recovered. This receipt republishes sanitized historical host observations, not a new host execution.", + "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", "limitations": [ - "No macOS execution and no upstream test suite run. The npm tarball hash is artifact evidence and does not pin the transitive dependency tree or rolldown platform binding.", - "Configured-server list/call failures are retained. The stale daemon was not recovered and keep-alive transport acceptance is not claimed; dist/daemon/client.js was recorded byte-identical across 0.14.1 and 0.14.2.", - "npm audit signatures --global failed with EAUDITGLOBAL (exit 1); only the later scratch-project audit succeeded. The ad-hoc MCP statistics are self-reports, not provider counts or savings.", - "The Mac keeps its separately qualified MCPorter 0.13.13 pin until a Mac qualifies 0.14.2. The platform-independent tarball artifact check is not Mac execution or Mac qualification." + "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", + "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", + "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", + "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", + "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", + "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", + "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." ], - "path": "evidence/receipts/mcporter-0142-qualification-20261004.json" + "path": "blueprints/us-equities/simulation-research/receipt.json" }, { - "id": "memory-landscape-20260921", + "id": "native-sec-access-resolution-20260919", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "codex", - "claude-code" + "edgartools" ], - "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", + "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", "limitations": [ - "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", - "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", - "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", - "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", - "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", - "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", - "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", - "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", - "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." + "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", + "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", + "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", + "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", + "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", + "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", + "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", + "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." ], - "path": "evidence/receipts/memory-landscape-20260921.json" + "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" }, { - "id": "memory-landscape-lifecycle-20260921", + "id": "native-sec-new-host-20260924", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qdrant", - "vllm", - "serena", - "qmd", - "codex", - "claude-code" + "edgartools" ], - "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", + "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", "limitations": [ - "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", - "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", - "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", - "Exact memory session/lifetime savings are not returned and remain null.", - "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." + "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", + "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", + "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", + "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", + "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", + "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", + "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." ], - "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" + "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", + "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" }, { - "id": "memory-lifecycle-probe-20260921", + "id": "sec-catalyst-dataset-native-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "edgartools", + "duckdb" ], - "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", + "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", "limitations": [ - "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", - "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", - "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", - "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", - "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", - "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." + "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", + "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", + "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", + "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", + "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", + "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", + "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", + "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", + "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." ], - "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" + "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" }, { - "id": "native-ai-memory-maintenance-20260920", - "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", + "id": "native-corporate-actions-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "lean" ], - "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", + "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", - "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", - "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", - "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", - "Forward-only migrations may require restoring the retained private backup to downgrade." + "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", + "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", + "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", + "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", + "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", + "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" }, { "id": "native-alpaca-historical-20260920", @@ -1668,392 +1293,381 @@ "path": "blueprints/us-equities/authenticated-data/native-receipt.json" }, { - "id": "native-application-delivery-20260920", + "id": "native-security-identity-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nextjs", - "react", - "fastapi", - "postgresql" + "alpaca-py", + "duckdb" ], - "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", + "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", "limitations": [ - "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", - "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", - "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", - "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", - "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", - "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", - "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", - "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." + "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", + "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", + "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", + "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", + "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", + "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", + "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", + "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." ], - "path": "blueprints/convergence-practice/application-delivery/receipt.json" + "path": "blueprints/us-equities/identity-readiness/native-receipt.json" }, { - "path": "blueprints/us-equities/architecture/receipt.json", - "id": "native-architecture-review-20260919", - "kind": "native_model_e2e", + "id": "token-practice-artifacts-20260920", + "kind": "artifact_measurement", "component_ids": [ - "codex", - "claude-code", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "agent-browser", + "ast-grep", + "edgartools", + "markitdown", + "qmd", + "repomix", + "rtk", + "socraticode", + "syft", + "toon" ], - "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", + "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", "limitations": [ - "The models reviewed supplied evidence and did not independently inspect primary sources. Their critiques are advisory and were adjudicated; agreement does not establish correctness or trading performance.", - "This is a native architecture-review task, not another LEAN/Dagu backtest run, full MCP/RAG acceptance, broker integration, hosted deployment or universal SOTA census.", - "The44,214 combined native reported tokens exclude coordinator and source-research workers. They are usage, not causal tokens saved or a billing measurement across identical tokenizers.", - "Astra cached input is included in input and reasoning output in output. Claude thinking is included in output; duplicate per-model/iteration/stream views are not added again.", - "Native model selection and terminal usage are not independent provider attestation. Full account/session/process identifiers and raw event streams remain private.", - "The offline Alpaca observation detects synthetic field loss only; no client/network/order, valid advanced-order fixture, entitlement or execution adapter was tested.", - "New machines must reproduce their own selected native profile and sign-in; these local WSL receipts do not establish macOS or unattended-host acceptance." - ] + "Counts describe retained original host artifacts. This public aggregate omits the private originals; CI validates aggregate integrity, not an independent recount of those private bytes.", + "Most pairs select or transform information lossily. Shorter output does not establish equivalent answer quality or lower complete task usage.", + "Pairs overlap, including shared HTML sources and retrieval services. Do not sum them or attribute the same difference independently to dependencies.", + "Exact provider savings remain null. Tokenizer counts are not provider billing, subscription savings or causal per-repository effects.", + "The Syft table preserves checked package name/version/type columns while omitting other SBOM metadata; this is a view selection, not equivalent full SBOM content." + ], + "path": "evidence/receipts/token-practice-artifacts-20260920.json" }, { - "id": "native-catalog-retrieval-20260920", - "kind": "native_cli_e2e", + "id": "token-practice-native-pairs-20260920", + "kind": "native_model_e2e", "component_ids": [ - "qmd" + "codex", + "claude-code", + "context-mode" ], - "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", + "claim": "Four native coding trials passed shared visible, hidden and file-scope acceptance gates; one fixed-order Context Mode non-use/explicit-use pair per client produced mixed observed task-usage differences.", "limitations": [ - "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", - "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", - "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", - "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." + "One baseline-first pair per client is not randomized, repeated or cache-matched. Native cache warmth and plugin tool availability were not fully controlled.", + "Observed differences are not causal per-repository savings, a whole-stack saving rate or evidence that either model is generally better.", + "Codex cached input and reasoning output are subsets. Claude ordinary input, cache creation, cache reads and output are separate categories; thinking is included in output.", + "Final cumulative session counters are used once. Coordinator, reviewers, audit tooling and report production are outside these four task totals.", + "Billed cost is unknown. Token counts and cached reads do not establish subscription charges or money saved.", + "Private transcripts, session identifiers and commands are not published. Hashes bind retained evidence, not independent attestation of provider execution." ], - "path": "evidence/receipts/native-catalog-retrieval-20260920.json" + "path": "evidence/receipts/token-practice-native-pairs-20260920.json" }, { - "id": "native-chronological-controls-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "skfolio", - "pandas", - "lean" - ], - "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", - "limitations": [ - "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", - "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", - "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", - "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", - "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", - "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", - "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", - "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." - ], - "path": "blueprints/us-equities/research-evaluation/receipt.json" - }, - { - "id": "native-ci-security-20260920", - "kind": "native_cli_e2e", - "component_ids": [ - "zizmor" - ], - "claim": "Native zizmor1.30.1 on macOS accepts the published workflow under offline regular analysis and rejects an inert unsafe fixture with three findings; two executable regression checks pass.", - "limitations": [ - "Offline regular analysis is scoped static evidence, not absence of every vulnerability or signature verification.", - "Mac binary and the checksum-locked Linux CI wheel are distinct artifacts; new runner execution is established by its own CI result.", - "The unsafe fixture was analyzed but never executed. No model calls, broker actions or savings measurement." - ], - "path": "blueprints/convergence-practice/ci-security/receipt.json" - }, - { - "id": "native-claude-child-patch-20260920", - "kind": "native_model_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Native Claude Code2.1.278 on Ubuntu24.04 WSL2 used Opus5 through Max for one foreground isolated child repair. Only planner.py changed; all12 frozen visible tests pass independently after8 seed failures.", - "limitations": [ - "One synthetic visible-oracle fixture, not a held-out benchmark, real application or GPU acceptance.", - "Ultracode was requested; observed native delegation does not establish dynamic-workflow selection or an OS sandbox.", - "Three native usage views retain different scopes; native retries and whole Desktop usage are unknown. No matched model baseline or savings claim.", - "Local supervision completed without timeout; provider cancellation, crash recovery and full-host backup were not tested." - ], - "path": "blueprints/convergence-practice/native-worker/receipt.json" - }, - { - "path": "blueprints/us-equities/convergence-review/receipt.json", - "id": "native-claude-convergence-review-20260919", - "kind": "native_model_e2e", + "id": "token-practice-coverage-20260920", + "kind": "historical_inventory", "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "ast-grep", + "ccusage", "claude-code", + "claude-hud", + "codebase-memory-mcp", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "davila7/claude-code-templates", + "difftastic", + "gitleaks", + "headroom", + "huggingface-hub-native", + "markitdown", + "mcp-inspector", + "mcporter", + "openresearch", + "playwright-cli", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "rtk", + "sandbox-runtime", + "serena", + "shanraisshan/claude-code-best-practice", + "shellcheck", + "socraticode", + "toon", + "vllm", + "worktrunk", "opentelemetry-collector-contrib", "prometheus", - "loki" + "loki", + "grafana", + "alertmanager", + "ntfy", + "duckdb", + "restic", + "dagu", + "lean", + "syft", + "alpaca-py", + "systemd", + "pandas", + "skfolio", + "edgartools" ], - "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", + "claim": "A dated 52-component audit distinguishes native artifact/task pairs, bounded functionality, current queries, configuration validation, historical-only evidence, host failures and non-executable guidance.", "limitations": [ - "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", - "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", - "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", - "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", - "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", - "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." - ] + "This historical coverage inventory records the dated audit only; it is not 52 fresh end-to-end passes or new-host acceptance.", + "Seventy captured operations include four retained failed attempts; successful corrections do not erase the initial OTel environment and Dagu environment-filter failures.", + "Two Linux Playwright invocations failed with ENOENT; the Windows installation does not establish Linux availability.", + "Guidance repositories are not executable tools. Current state, backup and cache queries or configuration validation do not prove complete lifecycle behavior.", + "Native RTK, TOON, Context Mode and Headroom counters have different scopes and estimators. They cannot be summed with artifact differences or provider usage.", + "Exact causal per-component provider saving values remain unknown rather than zero." + ], + "path": "evidence/receipts/token-practice-coverage-20260920.json" }, { - "id": "native-claude-hud-interactive-20260920", - "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", - "kind": "compatibility_attempt", + "id": "token-practice-catalog-toon-20260920", + "kind": "artifact_measurement", "component_ids": [ - "claude-hud" + "toon" ], - "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", + "claim": "A reversible full-catalog TOON conversion had a smaller native heuristic estimate but a larger exact token count than compact JSON; the guard retained compact JSON.", "limitations": [ - "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", - "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", - "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." - ] + "This is one later artifact comparison, separate from the ten original token-practice pairs. Do not sum it with cumulative native counters or provider usage.", + "Native tokenx estimates and exact o200k_base counts use different estimators and JSON representations; they are not interchangeable savings metrics.", + "The public aggregate omits the private captured output files. Published hashes establish identity, not independent CI recount of the private bytes.", + "Exact provider savings remain unknown. The successful strict round trip establishes data equivalence for this conversion only.", + "Command templates replace host-specific source and output locations with portable placeholders." + ], + "path": "evidence/receipts/token-practice-catalog-toon-20260920.json" }, { - "id": "native-claude-profile-20260920", - "kind": "native_cli_e2e", + "id": "token-practice-native-counters-20260920", + "kind": "historical_inventory", "component_ids": [ - "claude-code", - "codex", - "affaan-m/ECC", "context-mode", - "rtk" + "headroom", + "rtk", + "toon" ], - "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", + "claim": "Dated native counter snapshots retain RTK output, the capped Headroom ledger result, per-conversion TOON estimates and three separate Context Mode runtime scopes without treating them as exact provider savings.", "limitations": [ - "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", - "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", - "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", - "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", - "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", - "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", - "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", - "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", - "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." + "This historical snapshot is a dated report only, not a live dashboard or new-host execution acceptance.", + "RTK counters estimate retained command history and default to 90-day retention; selected-project values are a subset of the global result. Do not add snapshots or assume a forever ledger.", + "Headroom 0.37.0 caps the report at 30 days despite naming a field lifetime; zero ledger calls do not establish zero offline guard use or provider usage.", + "Context Mode uses byte/event heuristics and separate runtime state. Illustrative cost estimates are not bills, and persisted files must not be added to a direct MCP connection snapshot.", + "TOON statistics are tokenx heuristics for one conversion, not a native cumulative ledger. The compact-JSON exact counterexample is represented by the separate catalog receipt and must not be counted twice.", + "Raw private files, host paths, full command outputs and session identifiers are omitted. Sanitized fields and aggregate hashes do not independently attest provider activity." ], - "path": "evidence/receipts/native-claude-profile-20260920.json" + "path": "evidence/receipts/token-practice-native-counters-20260920.json" }, { - "id": "native-claude-session-recovery-20260920", - "kind": "native_model_e2e", + "id": "token-practice-gap-followup-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "playwright-cli", + "agentsview", + "ccusage", + "claude-hud", + "openresearch", + "codex-for-claude", + "codex" ], - "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", + "claim": "Six separately scoped follow-ups exercised a pinned Linux browser fixture, a single-session archive query, offline usage parsing, a synthetic HUD renderer, public-paper retrieval and one read-only native bridge backend task.", "limitations": [ - "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", - "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", - "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", - "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." + "These later bounded results do not turn the earlier dated 52-component audit into 52 full end-to-end passes. Individual scopes below remain authoritative.", + "Three failed attempts remain: file-protocol navigation rejection, implicit archive auto-start message failure and archive restart-lock failure. Successful recovery does not erase them.", + "Playwright used an existing Chrome installation and a fixture-only loopback HTTP endpoint. Its Playwright dependencies are alpha builds; no default browser download or arbitrary-site acceptance was tested.", + "The archive was restricted to one explicit project session. Full private transcripts, authentication material and session identifiers are omitted; automatic archive discovery did not pass.", + "HUD acceptance is a synthetic renderer fixture, not a live interactive account display. OpenResearch acceptance is public-paper retrieval, not an agent research workflow or research-quality assessment.", + "The ccusage reports overlap and must not be added. Upstream parser categories and totals are not bills or a matched provider savings comparison. The first date-only query returned an empty window.", + "The bridge trial is additional observed provider usage, not savings. It used one backend task without an outer Claude interaction or matched baseline; cached input is a subset of native input.", + "Tracked source remained unchanged; native MCP startup created untracked metadata. All owned temporary services were stopped. Public aggregate hashes bind retained evidence but do not independently reproduce private logs." ], - "path": "evidence/receipts/native-claude-session-recovery-20260920.json" + "path": "evidence/receipts/token-practice-gap-followup-20260920.json" }, { - "id": "native-cli-gaps", - "path": "evidence/receipts/native-cli-gaps.json", - "kind": "native_model_e2e", + "id": "native-lifecycle-sample-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "qmd", - "codebase-memory-mcp", - "agent-browser" + "edgartools", + "duckdb" ], - "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", + "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", "limitations": [ - "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", - "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." - ] + "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", + "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", + "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", + "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", + "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", + "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." + ], + "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" }, { - "id": "native-codex-session-recovery-20260920", - "kind": "native_model_e2e", + "id": "synthetic-catalyst-contract-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "codex" + "duckdb" ], - "claim": "Native Codex on Mac interrupted an owned pending dynamic tool, reconnected through a new app-server and resumed the same native thread/session to finalize an unchanged single checkpoint.", + "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", "limitations": [ - "One synthetic two-turn fixture on the installed Mac bundled alpha; no general distributed exactly-once guarantee.", - "No arbitrary shell/MCP descendant, provider cancellation, power loss or independent-host restore test.", - "Native cumulative token categories counted once; retries, billing and enclosing coordinator usage unknown; no savings claim." + "Protocol thresholds are exploratory choices, not fitted or proven optimal.", + "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", + "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", + "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", + "No provider calls, broker orders, new model turn or net token-savings measurement." ], - "path": "evidence/receipts/native-codex-session-recovery-20260920.json" + "path": "blueprints/us-equities/catalyst-experiment/receipt.json" }, { - "id": "native-context-memory", - "path": "evidence/receipts/native-context-memory.json", + "id": "native-research-efficiency-20260920", "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", - "context-mode", - "serena", - "rtk" + "qmd" ], - "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", + "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", "limitations": [ - "Earlier Serena/RTK run uses its original CLI version.", - "PreCompact was not induced; current Desktop catalog is distinct from child native clients." - ] - }, - { - "id": "native-convergence-review-20260919", - "path": "blueprints/us-equities/convergence-program/review-receipt.json", - "kind": "native_model_e2e", - "component_ids": [ - "codex", - "claude-code", - "dagu" + "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", + "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", + "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", + "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", + "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", + "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", + "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", + "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", + "Local supervision does not prove provider-side cancellation; no run timed out.", + "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." ], - "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", - "limitations": [ - "Models checked packet/report consistency, not original sources or underlying native artifacts.", - "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", - "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", - "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", - "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", - "Usage belongs to this pair only; not whole-goal consumption or causal savings." - ] + "path": "blueprints/us-equities/research-efficiency/native-receipt.json" }, { - "id": "native-corporate-actions-20260920", + "id": "native-ci-security-20260920", "kind": "native_cli_e2e", "component_ids": [ - "lean" + "zizmor" ], - "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", + "claim": "Native zizmor1.30.1 on macOS accepts the published workflow under offline regular analysis and rejects an inert unsafe fixture with three findings; two executable regression checks pass.", "limitations": [ - "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", - "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", - "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", - "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", - "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", - "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." + "Offline regular analysis is scoped static evidence, not absence of every vulnerability or signature verification.", + "Mac binary and the checksum-locked Linux CI wheel are distinct artifacts; new runner execution is established by its own CI result.", + "The unsafe fixture was analyzed but never executed. No model calls, broker actions or savings measurement." ], - "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" + "path": "blueprints/convergence-practice/ci-security/receipt.json" }, { - "id": "native-dagu-job-recovery-20260920", - "kind": "native_cli_e2e", + "id": "native-claude-child-patch-20260920", + "kind": "native_model_e2e", "component_ids": [ - "dagu" + "claude-code" ], - "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", + "claim": "Native Claude Code2.1.278 on Ubuntu24.04 WSL2 used Opus5 through Max for one foreground isolated child repair. Only planner.py changed; all12 frozen visible tests pass independently after8 seed failures.", "limitations": [ - "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", - "Initial native schema failure and earlier Mac success are retained; no savings comparison." + "One synthetic visible-oracle fixture, not a held-out benchmark, real application or GPU acceptance.", + "Ultracode was requested; observed native delegation does not establish dynamic-workflow selection or an OS sandbox.", + "Three native usage views retain different scopes; native retries and whole Desktop usage are unknown. No matched model baseline or savings claim.", + "Local supervision completed without timeout; provider cancellation, crash recovery and full-host backup were not tested." ], - "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" + "path": "blueprints/convergence-practice/native-worker/receipt.json" }, { - "id": "native-dagu-retry-tests-20260920", + "id": "upstream-native-tools-20260920", + "path": "evidence/receipts/upstream-native-tools-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "dagu" + "beads", + "skills-ref", + "otel-tui" ], - "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", + "claim": "Three supplemental upstream tools installed on the source Linux/WSL host: Beads persisted task claims and dependency transitions, skills-ref validated and rendered a selected skill, and otel-tui ingested and displayed one synthetic loopback trace.", "limitations": [ - "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", - "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", - "No broker/provider operations or token savings were measured.", - "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "Bounded native CLI/TUI acceptance on Linux/WSL; no new native Codex or Claude provider task was run for these additions.", + "Beads used one owned Git fixture with embedded Dolt, explicit task scope, skipped agent-instruction generation and skipped hooks. It does not replace ai-memory.", + "skills-ref is upstream's reference/demo implementation; successful portable-format validation does not certify production client extensions or tool semantics.", + "otel-tui received one synthetic local trace; no production or native-provider telemetry session was evaluated and no persistent exporter was installed.", + "None of these three tools exposes a verified cumulative token-savings counter. Exact causal lifetime provider savings remain null.", + "Public command forms substitute portable variables for private host paths; private raw operation logs are not published." ], - "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-dashboard-access-20260921", + "id": "native-ai-memory-maintenance-20260920", + "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "dagu", - "qdrant", - "agentsview", - "grafana", - "prometheus", - "ntfy", - "agent-browser", - "omniroute" + "ai-memory" ], - "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", + "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", "limitations": [ - "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", - "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", - "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", - "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", - "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", - "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", - "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", + "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", + "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", + "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", + "Forward-only migrations may require restoring the retained private backup to downgrade." ], - "path": "evidence/receipts/native-dashboard-access-20260921.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-dashboard-data-20260921", + "id": "native-linux-zizmor-20260920", + "path": "evidence/receipts/native-linux-zizmor-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qmd", - "qdrant", - "agentsview", - "grafana", - "loki", - "rtk", - "context-mode", - "headroom", - "jcodemunch-mcp", - "promptfoo", - "serena", - "systemd" + "zizmor" ], - "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", + "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", "limitations": [ - "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", - "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", - "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", - "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", - "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", - "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", - "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", - "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", - "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", + "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", + "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", + "No provider task was run and zizmor supplies no verified lifetime token-savings counter." ], - "path": "evidence/receipts/native-dashboard-data-20260921.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-edgartools-catalyst-20260919", + "id": "native-dagu-job-recovery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "dagu" ], - "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", + "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", "limitations": [ - "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", - "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", - "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", - "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", - "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", - "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", - "Native text/byte counts are not provider token savings.", - "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." + "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", + "Initial native schema failure and earlier Mac success are retained; no savings comparison." ], - "path": "blueprints/us-equities/catalyst-provenance/receipt.json" + "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" }, { - "id": "native-exact-nanosecond-replay-20260919", - "path": "blueprints/us-equities/nanosecond-replay/receipt.json", - "kind": "native_cli_e2e", + "id": "native-codex-session-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "duckdb", - "pandas" + "codex" ], - "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", + "claim": "Native Codex on Mac interrupted an owned pending dynamic tool, reconnected through a new app-server and resumed the same native thread/session to finalize an unchanged single checkpoint.", "limitations": [ - "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", - "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", - "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", - "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", - "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", - "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", - "No broker, trading strategy, actual feed or net token-saving acceptance." - ] + "One synthetic two-turn fixture on the installed Mac bundled alpha; no general distributed exactly-once guarantee.", + "No arbitrary shell/MCP descendant, provider cancellation, power loss or independent-host restore test.", + "Native cumulative token categories counted once; retries, billing and enclosing coordinator usage unknown; no savings claim." + ], + "path": "evidence/receipts/native-codex-session-recovery-20260920.json" }, { "id": "native-gpu-patch-20260920", @@ -2072,52 +1686,67 @@ "path": "evidence/receipts/native-gpu-patch-20260920.json" }, { - "id": "native-grand-dashboard-20260919", - "path": "observability/grand-dashboard/receipt.json", - "kind": "native_cli_e2e", + "id": "native-claude-session-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "grafana", - "loki", - "prometheus", - "dagu" + "claude-code" ], - "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", + "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", "limitations": [ - "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", - "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", - "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", - "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", - "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", - "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", - "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", - "Recorded worker/decision state is not a live process registry.", - "No broker execution, exact-once accounting, universal coverage or net token savings.", - "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." - ] + "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", + "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", + "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", + "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." + ], + "path": "evidence/receipts/native-claude-session-recovery-20260920.json" }, { - "id": "native-harness-defaults-20260920", - "kind": "artifact_measurement", + "id": "token-native-retained-functional-20260920", + "path": "evidence/receipts/token-native-retained-functional-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code" + "context-hub", + "headroom", + "mcp-inspector", + "promptfoo", + "worktrunk" ], - "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", + "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", "limitations": [ - "Saved instruction bytes are not proof that every future model decision will follow them.", - "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", - "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." - ], - "path": "evidence/receipts/native-harness-defaults-20260920.json" + "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", + "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", + "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", + "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", + "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", + "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." + ] }, { - "id": "native-headroom-mcp-20260920", - "path": "evidence/receipts/native-headroom-mcp-20260920.json", + "id": "native-jcodemunch-20260920", + "path": "evidence/receipts/native-jcodemunch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "headroom" + "jcodemunch-mcp" ], - "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", + "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", + "limitations": [ + "Single bounded code-reading task, not a native provider A/B trial.", + "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", + "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", + "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", + "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", + "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", + "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." + ] + }, + { + "id": "native-headroom-mcp-20260920", + "path": "evidence/receipts/native-headroom-mcp-20260920.json", + "kind": "native_cli_e2e", + "component_ids": [ + "headroom" + ], + "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", "limitations": [ "Owned synthetic acceptance artifacts demonstrate artifact reduction, not lifetime production or provider-token savings", "MCP summary is not a lossless replacement of the original; its exact full retrieval consumes the original token count", @@ -2128,676 +1757,589 @@ ] }, { - "id": "native-historical-leverage-stress-20260919", - "path": "blueprints/us-equities/historical-simulation/receipt.json", - "kind": "native_cli_e2e", + "id": "native-token-focus-clients-20260920", + "path": "evidence/receipts/native-token-focus-clients-20260920.json", + "kind": "native_model_e2e", "component_ids": [ - "lean" + "codex", + "claude-code", + "context-mode", + "jcodemunch-mcp" ], - "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", + "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", "limitations": [ - "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", - "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", - "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", - "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", - "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", - "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", - "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", - "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", - "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", - "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", - "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", - "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", - "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", - "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", - "No paper/live orders or automatic promotion." + "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", + "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", + "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", + "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", + "Raw private prompts, client streams, account identifiers and host paths are not published." ] }, { - "id": "native-jcodemunch-20260920", - "path": "evidence/receipts/native-jcodemunch-20260920.json", + "id": "native-sandbox-network-20260920", + "path": "evidence/receipts/native-sandbox-network-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "jcodemunch-mcp" + "sandbox-runtime" ], - "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", + "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", "limitations": [ - "Single bounded code-reading task, not a native provider A/B trial.", - "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", - "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", - "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", - "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", - "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", - "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." + "HTTP proxy path tested on this Linux/WSL host", + "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", + "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", + "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." ] }, { - "path": "blueprints/us-equities/execution-realism/receipt.json", - "id": "native-lean-execution-sensitivity-20260919", - "kind": "native_cli_e2e", + "id": "native-claude-hud-interactive-20260920", + "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", + "kind": "compatibility_attempt", "component_ids": [ - "lean" + "claude-hud" ], - "claim": "Native LEAN completed three fixed-order historical simulations with distinct upstream fee/slippage assumptions; serialized fill cash reconciles to native rounded summaries and all mounted engine/data input hashes remained unchanged.", + "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", "limitations": [ - "Exact arithmetic over serialized native event values; exported five-decimal fill prices and cent-rounded summaries do not expose all internal precision.", - "Illustrative fees and slippage are assumptions, not calibrated market or Alpaca execution observations.", - "Full-quantity market fills remain assumed; participation, partial fills, impact, latency, queueing, cancellation and broker reconciliation remain unaccepted.", - "Bundled five-day data do not establish PIT/corporate-action/universe quality or investment returns.", - "The normal dotnet build/restore route timed out twice; only the installed native C# compiler route is accepted.", - "Mounted input hashes do not prove every file was read; successful request logs list 13 paths plus possible separately read metadata.", - "No broker connection, account entitlement, deployment, strategy promotion, provider usage or token saving is established." + "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", + "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", + "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." ] }, { - "id": "native-lifecycle-sample-20260920", + "id": "native-application-delivery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "nextjs", + "react", + "fastapi", + "postgresql" ], - "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", + "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", "limitations": [ - "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", - "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", - "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", - "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", - "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", - "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." + "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", + "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", + "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", + "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", + "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", + "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", + "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", + "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." ], - "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" + "path": "blueprints/convergence-practice/application-delivery/receipt.json" }, { - "id": "native-linux-zizmor-20260920", - "path": "evidence/receipts/native-linux-zizmor-20260920.json", + "id": "mac-native-document-ingestion-20260920", "kind": "native_cli_e2e", "component_ids": [ - "zizmor" + "poppler" ], - "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", + "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", - "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", - "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", - "No provider task was run and zizmor supplies no verified lifetime token-savings counter." + "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", + "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", + "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", + "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", + "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "blueprints/convergence-practice/document-ingestion/receipt.json" }, { - "id": "native-memory", - "path": "evidence/receipts/native-memory.json", - "kind": "native_model_e2e", + "id": "native-wsl-restic-synthetic-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "codex", - "claude-code" + "restic" ], - "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", + "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", "limitations": [ - "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", - "No historical archive backfill or LLM/embedding consolidation pipeline enabled." - ] + "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", + "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", + "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", + "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", + "No token, storage-efficiency or backup performance claim.", + "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", + "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", + "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", + "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", + "Ten offline oracle/guard tests are distinct from the actual native restic commands." + ], + "path": "blueprints/convergence-practice/wsl-restore/receipt.json" }, { - "id": "native-memory-lifecycle-20260919", - "path": "blueprints/us-equities/memory-lifecycle/receipt.json", + "id": "mac-native-container-storage-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "apple-container", + "postgresql" ], - "claim": "A disposable, network-isolated native ai-memory fixture passed 23 lifecycle/routing checks across 31 MCP calls; exact-path TTL behavior and explicit sweep limits retained.", + "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", "limitations": [ - "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", - "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", - "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", - "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", - "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", - "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", - "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", - "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", - "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", - "Isolated fixture, not the live memory store or all client hooks.", - "TTL is default-search visibility until sweep, not immediate access revocation.", - "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." - ] + "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", + "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", + "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", + "Images remain cached; only owned empty failed container, test database container and test volume were removed.", + "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." + ], + "path": "blueprints/convergence-practice/container-storage/receipt.json" }, { - "id": "native-memory-rag-alignment-20260921", + "id": "mac-native-application-migration-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qdrant", - "qmd", - "vllm", - "grafana", - "loki" + "fastapi", + "postgresql" ], - "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", + "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", "limitations": [ - "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", - "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", - "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", - "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", - "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", - "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", - "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." + "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", + "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", + "No model calls; whole-task provider usage unknown." ], - "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" + "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" }, { - "id": "native-nautilus-ci-20260920", + "id": "velanext-native-quality-tools-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "gitleaks", + "worktrunk" ], - "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", + "claim": "On VelaNext, exact gitleaks8.30.1 detected one inert test credential and accepted the clean control with redacted reports. Worktrunk0.78.0 created/listed/removed owned worktrees while refusing dirty removal without loss.", "limitations": [ - "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", - "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", - "Network namespace and available-interface observations are not measured counts of attempted external transports." + "Isolated synthetic Linux/WSL fixtures; no arbitrary repository safety/security certification or Mac acceptance inferred.", + "Original executed runner and attempt retained. Second attempt follows exact-pin/archive/binary/version binding and timeout-evidence hardening;20 offline guards passed on Mac and WSL.", + "GitHub attestation endpoints returned404. Publisher checksum, GitHub archive digest and exact pinned license checks passed; no attestation claim.", + "No accounts, shared services, project hooks or model calls changed by qualification. Global promotion, when performed, is separate host deployment evidence.", + "Whole coordinator/worker provider usage is unknown; no token or monetary savings claim." ], - "path": "evidence/receipts/native-nautilus-ci-20260920.json" + "path": "blueprints/convergence-practice/wsl-native-tools/receipt.json" }, { - "id": "native-nautilus-v2-20260920", + "id": "mac-memory-patch-20260920", + "path": "evidence/receipts/mac-memory-patch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "ai-memory" ], - "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", + "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", "limitations": [ - "Release candidate, not production/live-capital acceptance.", - "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", - "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", - "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", - "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", - "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", - "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." - ], - "path": "evidence/receipts/native-nautilus-v2-20260920.json" + "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", + "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", + "No provider or whole-task token savings measurement." + ] }, { - "id": "native-observability", + "path": "evidence/receipts/wsl-application-20260920.json", + "id": "wsl-application-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana", - "alertmanager", - "ntfy" + "nextjs", + "react", + "fastapi", + "postgresql", + "playwright-test" ], - "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", + "claim": "Clean isolated WSL runtime restored the same locked application, passed12 API checks, migration reversal, schema/types, production build and real browser flow; exact row/history persisted after PostgreSQL/API/Next restart.", "limitations": [ - "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", - "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", - "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", - "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", - "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", - "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." - ], - "path": "observability/receipt.json" + "Synthetic loopback application; no production deployment, user authentication or another-host acceptance.", + "Official exact Ubuntu packages were extracted task-only with signed metadata/SHA verification; no package scripts or system database changes.", + "Historical application inputs remain frozen; Makelevel/TIME_WAIT recipe fixes were qualified separately with five real make/socket tests on Mac and WSL.", + "No model calls by application commands; whole-task usage remains unknown." + ] }, { - "id": "native-observability-followup", - "kind": "native_model_e2e", + "id": "wsl-transport-recovery-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "context-mode", - "ai-memory", - "socraticode", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana" + "dagu" ], - "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", + "claim": "An owned nonmultiplexed SSH client was terminated; fresh reconnect observed the same native Dagu job running with one unchanged checkpoint, then native completion without stop or retry.", "limitations": [ - "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", - "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", - "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", - "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", - "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", - "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." + "Controlled client termination and a deliberately detached deterministic job; not a real network outage, host restart, model-session recovery or distributed exactly-once guarantee.", + "First harness attempt misclassified native SSH exit255 and stopped the job; its narrower same-run finalizer retry is retained separately from corrected survival acceptance.", + "Original12-test oracle passed before and after; observed owned processes/listener retired; whole-task provider usage remains unknown." ], - "path": "observability/followup-receipt.json" + "path": "evidence/receipts/wsl-transport-recovery-20260920.json" }, { - "id": "native-offhost-app-state-20260920", + "id": "wsl-document-ingestion-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qdrant", - "restic" + "poppler" ], - "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", + "claim": "Native Poppler26.09.0 built in a clean WSL prefix and passed the frozen3-page,24-cell,8-positive/4-absent document protocol; four extraction/retrieval artifacts exactly match Mac output.", "limitations": [ - "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", - "Sequential native application snapshots do not establish an atomic cross-application transaction.", - "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", - "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", - "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", - "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", - "No model/provider/broker calls or causal token/cost savings measurement." + "Designed born-digital Latin fixture with explicit table geometry; no OCR, inferred layout, general semantic retrieval or broad upstream corpus qualification.", + "Exact source signature, signed package extraction and native dependency checks preceded execution; failed first public-key lookup remains recorded.", + "No global package/service/client change or model/GPU invocation; whole-task provider usage unknown." ], - "path": "evidence/receipts/native-offhost-app-state-20260920.json" + "path": "evidence/receipts/wsl-document-ingestion-20260920.json" }, { - "id": "native-offhost-restic-20260920", + "id": "wsl-memory-maintenance-20260920", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "ai-memory" ], - "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", + "claim": "Official Linux ai-memory2.3.2 passed65 synthetic native checks across exact scope, Unicode/reserved paths, restart, upstream HTTP backup and native restore; four owned processes exited0.", "limitations": [ - "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", - "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", - "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", - "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", - "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", - "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." + "Isolated fresh synthetic store and39 MCP tool calls; not production activation, native-client integration or prior-version migration.", + "Automatic capture, embeddings, generation, watcher and autowire disabled; no OS-confinement claim.", + "Native backup/restore both exit0; complete private logs retained, fixture model calls0 and whole-task provider usage unknown." ], - "path": "evidence/receipts/native-offhost-restic-20260920.json" + "path": "evidence/receipts/wsl-memory-maintenance-20260920.json" }, { - "path": "adoption/paired/receipt.json", - "id": "native-paired-adoption-20260919", - "kind": "native_model_e2e", + "id": "token-practice-confirmation-20260920", + "kind": "historical_inventory", "component_ids": [ - "codex", - "claude-code", - "duckdb", - "dagu", - "lean", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "rtk", + "context-mode", + "headroom", + "jcodemunch-mcp" ], - "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", + "claim": "Dated direct upstream counter outputs, current release metadata, independent artifact rechecks and reconciled recorded monitoring support explicit baseline selection without claiming causal lifetime provider savings.", "limitations": [ - "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", - "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", - "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", - "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", - "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", - "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", - "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", - "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." - ] + "Historical source-host observations only; not live acceptance on the reader's PC.", + "Upstream retained-history estimates, exact artifact counts and provider consumption are different quantities and must not be summed.", + "Artifact and client rechecks inspected existing retained inputs and streams; no new model task or reinstall was performed in this confirmation.", + "Public native fields are allowlisted unchanged from private outputs; host paths, process identifiers and account details are omitted.", + "Latest monitoring queries returned no matching observations in their six-hour window; this does not mean zero usage or newly confirmed savings.", + "Latest-release equality was checked only for the four selected token tools; accepted specialist compatibility pins are separate." + ], + "path": "evidence/receipts/token-practice-confirmation-20260920.json" }, { - "path": "blueprints/us-equities/point-in-time/receipt.json", - "id": "native-point-in-time-contract-20260919", + "id": "native-token-clean-prefix-20260920", "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "headroom", + "jcodemunch-mcp" ], - "claim": "DuckDB 1.5.5 materialized and selected a synthetic temporal snapshot; late revisions, universe state, feed/adjustment scope and pinned snapshot integrity were exercised through native Python SDK/SQL commands.", + "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", "limitations": [ - "Synthetic observations only; no entitled or accepted market dataset, SEC download, vendor API, model or broker call occurred.", - "Availability timestamps and evidence references are declarations, not independently authenticated vendor publication evidence.", - "Local snapshot ingestion time is separate from source publication and original capture time.", - "Scope is realized observations and effective universe state; it does not model every corporate action, event forecast, symbol mapping or delisting history.", - "Hash checks require the caller to retain a trusted manifest digest independently; local file permissions are not immutable storage or off-host recovery." - ] + "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", + "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", + "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", + "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", + "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", + "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", + "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", + "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." + ], + "path": "evidence/receipts/native-token-clean-prefix-20260920.json" }, { - "id": "native-progress-capacity-20260921", + "id": "current-session-observation-20260920", "kind": "native_cli_e2e", "component_ids": [ + "agentsview", + "ai-memory", + "alertmanager", + "ccusage", + "claude-hud", + "context-mode", + "grafana", + "headroom", + "jcodemunch-mcp", "loki", - "dagu" + "mcporter", + "ntfy", + "opentelemetry-collector-contrib", + "otel-tui", + "prometheus", + "rtk", + "serena", + "socraticode" ], - "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", + "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", "limitations": [ - "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", - "No client restart, service restart or physical reboot was performed or verified.", - "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", - "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", - "No live provider inference, account change, new dependency or upstream version change for this repair." + "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", + "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", + "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", + "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", + "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", + "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", + "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", + "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." ], - "path": "observability/grand-dashboard/capacity-recovery-20260921.json" + "path": "evidence/receipts/current-session-observation-20260920.json" }, { - "id": "native-quality-defaults-20260920", + "id": "foundation-native-20260920", "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "qmd", + "qdrant", + "vllm", + "socraticode", + "serena", + "context-mode", + "jcodemunch-mcp", + "rtk", + "headroom", + "repomix", + "toon", "codex", - "claude-code" + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "omniroute" ], - "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", + "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", "limitations": [ - "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", - "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", - "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", - "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", - "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." + "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", + "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", + "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", + "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", + "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", + "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", + "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", + "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", + "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." ], - "path": "evidence/receipts/native-quality-defaults-20260920.json" + "path": "evidence/receipts/foundation-native-20260920.json" }, { - "id": "native-rag", - "path": "evidence/receipts/native-rag.json", - "kind": "native_model_e2e", + "id": "codex-session-environment-20260920", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "socraticode", - "qdrant", - "vllm", - "huggingface-hub-native" + "context-mode", + "jcodemunch-mcp", + "serena", + "ai-memory", + "socraticode" ], - "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", + "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", "limitations": [ - "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", - "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." - ] - }, - { - "id": "native-research-efficiency-20260920", - "kind": "native_model_e2e", - "component_ids": [ - "codex", - "claude-code", - "qmd" - ], - "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", - "limitations": [ - "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", - "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", - "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", - "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", - "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", - "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", - "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", - "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", - "Local supervision does not prove provider-side cancellation; no run timed out.", - "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." - ], - "path": "blueprints/us-equities/research-efficiency/native-receipt.json" - }, - { - "id": "native-research-runtime-20260919", - "kind": "native_model_e2e", - "component_ids": [ - "claude-code", - "dagu", - "lean", - "duckdb", - "opentelemetry-collector-contrib", - "prometheus", - "loki" - ], - "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", - "limitations": [ - "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", - "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", - "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", - "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", - "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", - "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", - "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", - "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." + "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", + "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", + "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", + "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", + "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", + "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", + "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." ], - "path": "blueprints/us-equities/research-runtime/receipt.json" + "path": "evidence/receipts/codex-session-environment-20260920.json" }, { - "id": "native-returned-results-20260921", + "id": "codex-desktop-live-20260920", "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "rtk", "context-mode", - "qmd", + "jcodemunch-mcp", "serena", "ai-memory", "socraticode", - "qdrant", - "agentsview", - "grafana", - "loki", - "prometheus", - "dagu", - "ntfy", - "omniroute", - "agent-browser", - "promptfoo", + "rtk", "headroom", - "jcodemunch-mcp" + "qmd", + "loki", + "prometheus" ], - "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", + "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", "limitations": [ - "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", - "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", - "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", - "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", - "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", - "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", - "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", - "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", - "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." + "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", + "Tools without native savings ledgers remain unavailable, not zero.", + "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", + "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", + "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", + "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", + "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", + "No fresh Prometheus turn sample in the selected window; no three-way observation join." ], - "path": "evidence/receipts/native-returned-results-20260921.json" + "path": "evidence/receipts/codex-desktop-live-20260920.json" }, { - "id": "native-runtime-role-resolution-20260930", - "kind": "native_model_e2e", + "id": "native-session-defaults-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "omniroute", - "claude-code" + "codex", + "claude-code", + "ai-memory", + "context-mode", + "rtk", + "qmd" ], - "claim": "One host installed separately versioned OpenHands CLI1.16.0/SDK1.50.1 and DeepAgents0.7.21 candidates through native supported interfaces. CLI108 and final SDK184 unchanged upstream tests passed; DeepAgents361 passed with1 expected failure in its separate upstream-lock environment. Actual OmniRoute Sol-Max requests passed one OpenHands native LLM exact-output round-trip and bounded DeepAgents selected-skill/single-specialist research, saved-context repair and fresh-process SQLite continuation. All results are scoped, not a universal framework winner or global default promotion.", + "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", "limitations": [ - "CLI SDK1.21 Jinja cache hard-codes real user home; strict cache isolation remains held.", - "Final SDK native configuration/tests exercise skills/plugins/MCP/condenser interfaces; production MCP, full Conversation/condenser/provider execution and optional extensions are not qualified by them.", - "Original DeepAgents24-step attempt failed; one changed32-step saved-context repair passed. No arbitrary interrupted-tool replay, OS confinement or comparative winner is qualified.", - "Complete provider billing/backend identity and whole-task token savings remain unknown; cached/reasoning counters are subsets.", - "Native Claude Opus/Max peer timed out180s exit124 without a verdict; later peer turns reached account usage limits. Completed earlier reviews are preserved; no new acknowledgement/approval is claimed.", - "Original full output stays private with exact hashes; public excerpts replace private paths and omit raw conversations, marker values, credentials and flow identifiers.", - "Exact executed sources are archived. Initial whitespace/comment cleanup had identical ASTs; the current worker subsequently adopts native secret-aware serialization after CodeQL, verified by native fixture and fresh saved-state checks. No new provider run is claimed." + "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", + "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", + "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", + "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", + "Claude startup events join four starts to four completions but do not identify individual configured commands.", + "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", + "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." ], - "path": "evidence/receipts/native-runtime-role-resolution-20260930.json" + "path": "evidence/receipts/native-session-defaults-20260920.json" }, { - "id": "native-sandbox-network-20260920", - "path": "evidence/receipts/native-sandbox-network-20260920.json", + "id": "native-token-ci-local-20260920", "kind": "native_cli_e2e", "component_ids": [ - "sandbox-runtime" + "rtk", + "qmd", + "repomix", + "toon" ], - "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", + "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", "limitations": [ - "HTTP proxy path tested on this Linux/WSL host", - "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", - "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", - "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." - ] + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" + ], + "path": "evidence/receipts/native-token-ci-local-20260920.json" }, { - "id": "native-sdk-acceptance-20261002", + "id": "native-token-ci-github-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code" + "rtk", + "qmd", + "repomix", + "toon" ], - "claim": "Actual Claude SDK task failed its independent oracle despite successful protocol completion; a separate informed Codex SDK repair passed all four unchanged cases. Unchanged Claude and OpenHands default source suites passed within recorded skip, warning and environment limits.", + "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", "limitations": [ - "Two different model tasks and source-test suites have different evidence scopes; this is not a model-quality or token-efficiency comparison, global SOTA winner claim or full foundation closure.", - "Claude original useful-task acceptance remains FAILED. Codex passes only the four-case informed repair; its requested model/effort are bound, but resolved model/provider identity and billing cost were not returned.", - "Coordinator observed invocation, native exits and process samples. Independent reviewers checked retained source/artifact/outcome bindings without rerunning; hash equality alone is not execution provenance.", - "Public attachments are declared projections, exact resulting candidates and selected native output. Complete permitted streams remain private; raw conversations, auth/session metadata and personal paths are not published.", - "Claude default source suite has six skips, with five collection identities inferred from source/dependencies. OpenHands retains seven optional ToolShield skips, 12 xfails, 83 warnings, default stress/ACP-live exclusions and a preserved failed environment attempt; exact fetched model-map bytes were not retained.", - "OpenHands is supplemental source-test evidence, not a new adopted stack component. Its FACTS provider task remains unrun in this lane; Codex default source-suite execution remains with its separate owner.", - "Researcher/reviewer roles, resume/recovery, selected MCP, generation permission-negative tests, complete target lifecycle and target token routing remain open. Exact before/after process-name samples do not prove complete descendant cleanup.", - "Historical Claude task binding is CLI2.1.287. Current release2.1.288 reconciliation remains with the configuration owner and cannot retroactively change these captures." + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" ], - "path": "evidence/receipts/native-sdk-acceptance-20261002.json" + "path": "evidence/receipts/native-token-ci-github-20260920.json" }, { - "id": "native-sdk-role-mcp-followup-20261002", + "id": "native-tavily-cli-20260920", "kind": "native_cli_e2e", "component_ids": [ + "tavily-cli", + "codex", "claude-code" ], - "claim": "Retained Claude SDK evidence supports minimal inline MCP callback/terminal assertions with synthetic controls and one native deny-rule pair with a disarmed-rule control; the reviewer case completed without a discriminating control, and the researcher case is controlled for missing findings only. Prior researcher failures remain FAIL and complete role qualification remains incomplete.", + "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", "limitations": [ - "Retained independent case ACCEPT verdicts are observations, not qualified role acceptance. Reviewer negative grading has no discriminating control; the original researcher FAIL controls missing findings only, not wrong facts/citations or attribution.", - "Synthetic MCP0/1/1 controls discriminate callback presence and terminal success only. The separate native armed0/disarmed1 pair supports one actual deny-rule observation; definition visibility unknown, no can_use_tool callback configured.", - "Earlier query timestamps unknown; deny-pair UTC intervals captured. Counters retain separate scopes; interrupted whole-query usage/cost unknown. No billed-cost or efficiency claim.", - "Selected QMD/Serena, recovery, containment, complete lifecycle and whole-host qualification remain open; process samples are bounded and staging is not managed-upgrade acceptance.", - "Sanitized projections only; private original hashes, failed cases and corrections retained. The projection step ran no new provider/test/control execution and made no shared edits; registration in manifests/evidence.json is separate from that step." + "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", + "Claude global skill listing is not a Claude model-turn execution of every skill.", + "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", + "Search/Extract results do not independently establish their source claims or a complete research deliverable.", + "No native lifetime or exact provider-token savings counter is established.", + "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." ], - "path": "evidence/receipts/native-sdk-role-mcp-followup-20261002.json" + "path": "evidence/receipts/native-tavily-cli-20260920.json" }, { - "id": "native-sec-access-resolution-20260919", + "id": "native-nautilus-v2-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "nautilus-trader" ], - "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", + "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", "limitations": [ - "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", - "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", - "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", - "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", - "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", - "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", - "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", - "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." + "Release candidate, not production/live-capital acceptance.", + "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", + "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", + "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", + "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", + "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", + "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." ], - "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" + "path": "evidence/receipts/native-nautilus-v2-20260920.json" }, { - "id": "native-sec-new-host-20260924", - "kind": "native_cli_e2e", + "id": "native-harness-defaults-20260920", + "kind": "artifact_measurement", "component_ids": [ - "edgartools" + "codex", + "claude-code" ], - "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", + "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", "limitations": [ - "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", - "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", - "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", - "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", - "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", - "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", - "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." + "Saved instruction bytes are not proof that every future model decision will follow them.", + "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", + "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." ], - "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", - "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" + "path": "evidence/receipts/native-harness-defaults-20260920.json" }, { - "id": "native-security-identity-20260920", - "kind": "native_cli_e2e", + "id": "native-worker-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "alpaca-py", - "duckdb" + "claude-code" ], - "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", + "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", "limitations": [ - "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", - "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", - "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", - "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", - "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", - "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", - "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", - "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." + "One synthetic local fixture and one physical WSL host, not arbitrary application state.", + "Actual native child identities and paths remain private; hashes bind retained streams.", + "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", + "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", + "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", + "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", + "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." ], - "path": "blueprints/us-equities/identity-readiness/native-receipt.json" + "path": "evidence/receipts/native-worker-recovery-20260920.json" }, { - "id": "native-service-reboot-20260920", - "kind": "native_cli_e2e", + "id": "foundation-catalog-ui-20260920", + "kind": "artifact_measurement", "component_ids": [ - "dagu", - "systemd" + "agent-browser" ], - "claim": "A signed disposable Ubuntu guest automatically resumed the same native Dagu run after an orderly kernel reboot, preserved its checkpoint and produced one local effect. A dedicated read-only serial observer and independent journal review confirmed completion before postboot SSH; owned cleanup passed.", + "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", "limitations": [ - "One orderly disposable guest reboot with a synthetic workload; not a physical PC, power loss, production disaster recovery, provider recovery or broker acceptance.", - "The unchanged official Dagu retry tests are a selected upstream subset. The project planner, its original 12-test oracle and the guest experiment are local synthetic integration coverage.", - "Source, disk and process continuity cover this owned guest only; no distributed exactly-once or arbitrary external side-effect guarantee.", - "Public text projections replace owned home prefixes and synthetic UUIDs and normalize CRLF. Original artifact/stream hashes and explicit projection rules are retained; projected bytes are not labelled raw-byte-identical.", - "The full auth-free guest archive contains three hidden bookkeeping files omitted by loose-file artifact upload. Independent inspection used the intact archive.", - "Both prior failed attempts remain failures; retrospective successful workload records did not override their missing acceptance evidence.", - "No model was called and no provider or lifetime token-saving measurement was made." + "Source pin/publication URLs pending parent final source commit and regeneration.", + "No provider/broker execution or broad regression rerun performed.", + "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." ], - "path": "evidence/receipts/native-service-reboot-20260920.json" + "path": "evidence/receipts/foundation-catalog-ui-20260920.json" }, { - "id": "native-session-defaults-20260920", + "id": "native-worker-containment-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "ai-memory", - "context-mode", - "rtk", - "qmd" + "systemd", + "claude-code" ], - "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", + "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", "limitations": [ - "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", - "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", - "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", - "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", - "Claude startup events join four starts to four completions but do not identify individual configured commands.", - "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", - "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." + "Deterministic cgroup proof is not successful native child crash/resume acceptance.", + "Earlier same-child continuation still required explicit direct descendant cleanup.", + "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." ], - "path": "evidence/receipts/native-session-defaults-20260920.json" + "path": "evidence/receipts/native-worker-containment-20260920.json" }, { - "id": "native-simulation-research-dashboard-20260919", + "id": "native-nautilus-ci-20260920", "kind": "native_cli_e2e", "component_ids": [ - "grafana", - "loki" + "nautilus-trader" ], - "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", + "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", "limitations": [ - "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", - "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", - "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", - "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", - "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", - "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", - "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." + "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", + "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", + "Network namespace and available-interface observations are not measured counts of attempted external transports." ], - "path": "blueprints/us-equities/simulation-research/receipt.json" + "path": "evidence/receipts/native-nautilus-ci-20260920.json" }, { - "id": "native-tavily-cli-20260920", + "id": "native-catalog-retrieval-20260920", "kind": "native_cli_e2e", "component_ids": [ - "tavily-cli", - "codex", - "claude-code" + "qmd" ], - "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", + "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", "limitations": [ - "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", - "Claude global skill listing is not a Claude model-turn execution of every skill.", - "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", - "Search/Extract results do not independently establish their source claims or a complete research deliverable.", - "No native lifetime or exact provider-token savings counter is established.", - "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." + "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", + "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", + "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", + "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." ], - "path": "evidence/receipts/native-tavily-cli-20260920.json" + "path": "evidence/receipts/native-catalog-retrieval-20260920.json" }, { "id": "native-tavily-session-20260920", @@ -2815,127 +2357,60 @@ "path": "evidence/receipts/native-tavily-session-20260920.json" }, { - "id": "native-terminal-profiles-20260920", - "kind": "native_cli_e2e", + "id": "native-worker-cgroup-20260920", + "kind": "native_model_e2e", "component_ids": [ - "codex", "claude-code", - "qdrant", - "vllm" - ], - "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", - "limitations": [ - "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", - "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", - "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", - "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", - "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." - ], - "path": "evidence/receipts/native-terminal-profiles-20260920.json" - }, - { - "id": "native-token-ci-github-20260920", - "kind": "native_cli_e2e", - "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "systemd" ], - "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", + "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", + "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", + "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", + "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", + "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." ], - "path": "evidence/receipts/native-token-ci-github-20260920.json" + "path": "evidence/receipts/native-worker-cgroup-20260920.json" }, { - "id": "native-token-ci-local-20260920", + "id": "native-service-reboot-20260920", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "dagu", + "systemd" ], - "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", + "claim": "A signed disposable Ubuntu guest automatically resumed the same native Dagu run after an orderly kernel reboot, preserved its checkpoint and produced one local effect. A dedicated read-only serial observer and independent journal review confirmed completion before postboot SSH; owned cleanup passed.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "One orderly disposable guest reboot with a synthetic workload; not a physical PC, power loss, production disaster recovery, provider recovery or broker acceptance.", + "The unchanged official Dagu retry tests are a selected upstream subset. The project planner, its original 12-test oracle and the guest experiment are local synthetic integration coverage.", + "Source, disk and process continuity cover this owned guest only; no distributed exactly-once or arbitrary external side-effect guarantee.", + "Public text projections replace owned home prefixes and synthetic UUIDs and normalize CRLF. Original artifact/stream hashes and explicit projection rules are retained; projected bytes are not labelled raw-byte-identical.", + "The full auth-free guest archive contains three hidden bookkeeping files omitted by loose-file artifact upload. Independent inspection used the intact archive.", + "Both prior failed attempts remain failures; retrospective successful workload records did not override their missing acceptance evidence.", + "No model was called and no provider or lifetime token-saving measurement was made." ], - "path": "evidence/receipts/native-token-ci-local-20260920.json" + "path": "evidence/receipts/native-service-reboot-20260920.json" }, { - "id": "native-token-clean-prefix-20260920", + "id": "native-offhost-app-state-20260920", "kind": "native_cli_e2e", "component_ids": [ - "headroom", - "jcodemunch-mcp" - ], - "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", - "limitations": [ - "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", - "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", - "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", - "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", - "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", - "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", - "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", - "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." - ], - "path": "evidence/receipts/native-token-clean-prefix-20260920.json" - }, - { - "id": "native-token-focus-clients-20260920", - "path": "evidence/receipts/native-token-focus-clients-20260920.json", - "kind": "native_model_e2e", - "component_ids": [ - "codex", - "claude-code", - "context-mode", - "jcodemunch-mcp" - ], - "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", - "limitations": [ - "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", - "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", - "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", - "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", - "Raw private prompts, client streams, account identifiers and host paths are not published." - ] - }, - { - "id": "native-token-stack-final-20260920", - "kind": "native_model_e2e", - "component_ids": [ - "claude-code", - "codex", - "context-mode", - "jcodemunch-mcp", - "headroom", - "rtk", - "opentelemetry-collector-contrib", - "loki", - "prometheus" + "ai-memory", + "qdrant", + "restic" ], - "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", + "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", "limitations": [ - "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", - "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", - "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", - "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", - "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", - "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", - "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", - "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." + "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", + "Sequential native application snapshots do not establish an atomic cross-application transaction.", + "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", + "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", + "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", + "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", + "No model/provider/broker calls or causal token/cost savings measurement." ], - "path": "evidence/receipts/native-token-stack-final-20260920.json" + "path": "evidence/receipts/native-offhost-app-state-20260920.json" }, { "id": "native-ultracode-20260921", @@ -2957,480 +2432,849 @@ "path": "evidence/receipts/native-ultracode-20260921.json" }, { - "id": "native-worker-cgroup-20260920", - "kind": "native_model_e2e", + "id": "native-dashboard-access-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "systemd" + "dagu", + "qdrant", + "agentsview", + "grafana", + "prometheus", + "ntfy", + "agent-browser", + "omniroute" ], - "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", + "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", "limitations": [ - "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", - "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", - "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", - "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", - "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." + "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", + "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", + "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", + "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", + "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", + "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", + "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." ], - "path": "evidence/receipts/native-worker-cgroup-20260920.json" + "path": "evidence/receipts/native-dashboard-access-20260921.json" }, { - "id": "native-worker-containment-20260920", + "id": "full-stack-convergence-20260921", "kind": "native_cli_e2e", "component_ids": [ - "systemd", - "claude-code" + "agent-browser", + "agentsview", + "ai-memory", + "ccusage", + "claude-code", + "codex", + "context-mode", + "dagu", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "loki", + "omniroute", + "openresearch", + "prometheus", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "toon", + "vllm", + "worktrunk" ], - "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", + "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", "limitations": [ - "Deterministic cgroup proof is not successful native child crash/resume acceptance.", - "Earlier same-child continuation still required explicit direct descendant cleanup.", - "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." + "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", + "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", + "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", + "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", + "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", + "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", + "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", + "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." ], - "path": "evidence/receipts/native-worker-containment-20260920.json" + "path": "evidence/receipts/full-stack-convergence-20260921.json" }, { - "id": "native-worker-recovery-20260920", - "kind": "native_model_e2e", + "id": "memory-landscape-20260921", + "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "codex", "claude-code" ], - "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", + "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", "limitations": [ - "One synthetic local fixture and one physical WSL host, not arbitrary application state.", - "Actual native child identities and paths remain private; hashes bind retained streams.", - "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", - "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", - "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", - "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", - "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." + "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", + "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", + "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", + "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", + "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", + "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", + "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", + "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", + "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." ], - "path": "evidence/receipts/native-worker-recovery-20260920.json" + "path": "evidence/receipts/memory-landscape-20260921.json" }, { - "id": "native-worker-supervision-20260919", - "path": "blueprints/us-equities/worker-supervision/receipt.json", + "id": "memory-landscape-lifecycle-20260921", "kind": "native_cli_e2e", "component_ids": [ - "systemd" + "ai-memory", + "socraticode", + "qdrant", + "vllm", + "serena", + "qmd", + "codex", + "claude-code" ], - "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", + "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", "limitations": [ - "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", - "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", - "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", - "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", - "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", - "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", - "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", - "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", - "Hashes bind retained evidence bytes; they do not independently attest the execution.", - "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", - "Configured resource limits were inspected, not saturation-tested." - ] + "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", + "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", + "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", + "Exact memory session/lifetime savings are not returned and remain null.", + "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." + ], + "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" }, { - "id": "native-workflow-graceful-recovery-20260921", + "id": "alpaca-paper-e2e-20260921", "kind": "native_cli_e2e", "component_ids": [ + "alpaca-py", "claude-code" ], - "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", + "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", "limitations": [ - "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", - "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", - "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", - "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." + "One operational smoke trial, not profitable strategy or continuous trading acceptance.", + "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", + "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." ], - "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" + "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" }, { - "id": "native-workflow-writing-comparison-20260921", + "id": "nautilus-equity-replay-20260921", "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "nautilus-trader" ], - "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", + "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", "limitations": [ - "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", - "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", - "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." + "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", + "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", + "SPY/LEAN corporate-action parity and historical universe availability remain separate." ], - "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" + "path": "evidence/receipts/nautilus-equity-replay-20260921.json" }, { - "id": "native-wsl-restic-synthetic-20260920", + "id": "foundation-convergence-20260921", + "kind": "native_model_e2e", + "component_ids": [ + "codex", + "claude-code", + "context-mode", + "rtk", + "headroom", + "toon" + ], + "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", + "limitations": [ + "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", + "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", + "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", + "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", + "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." + ], + "path": "evidence/receipts/foundation-convergence-20260921.json" + }, + { + "id": "native-progress-capacity-20260921", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "loki", + "dagu" ], - "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", + "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", "limitations": [ - "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", - "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", - "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", - "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", - "No token, storage-efficiency or backup performance claim.", - "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", - "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", - "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", - "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", - "Ten offline oracle/guard tests are distinct from the actual native restic commands." + "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", + "No client restart, service restart or physical reboot was performed or verified.", + "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", + "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", + "No live provider inference, account change, new dependency or upstream version change for this repair." ], - "path": "blueprints/convergence-practice/wsl-restore/receipt.json" + "path": "observability/grand-dashboard/capacity-recovery-20260921.json" }, { - "id": "nautilus-equity-replay-20260921", + "id": "claude-upstream-checks-20260921", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "codex", + "codex-for-claude", + "context-mode", + "dagu", + "difftastic", + "gitleaks", + "grafana", + "headroom", + "jcodemunch-mcp", + "lean", + "loki", + "markitdown", + "mcporter", + "nautilus-trader", + "openresearch", + "opentelemetry-collector-contrib", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", + "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", "limitations": [ - "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", - "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", - "SPY/LEAN corporate-action parity and historical universe availability remain separate." + "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", + "Complete originals remain private; public excerpts are bounded and sanitized.", + "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." ], - "path": "evidence/receipts/nautilus-equity-replay-20260921.json" + "path": "evidence/receipts/claude-upstream-checks-20260921.json" }, { - "id": "new-wsl-embedding-model-20261002", + "id": "foundation-rd-20260921", "kind": "native_model_e2e", "component_ids": [ - "huggingface-hub-native" + "claude-code", + "codex", + "codex-for-claude", + "qmd" ], - "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02 and 2026-10-03, with the generation model swift-iq3s-s2o-64k resident, the preregistered comparison for the new WSL's embedding model gave the slot to E1: qwen3-embedding:0.6b (Q8_0, Ollama library manifest ac6da0dfba84a81fdbfbaf330198c33cd77c4cdfc53e8bc50eb581914a15621d) on Ollama 0.35.0 as qwen3-embedding-8k (num_ctx 8192). On MTEB 2.22.1's CQADupstackUnixRetrieval (test split: 47,382 documents, 1,072 queries) its nDCG@10 was 0.49827 against 0.41394 for EmbeddingGemma on the same server: E1 minus E2 0.084331, 95% paired bootstrap interval over queries 0.067738 to 0.100656 (10,000 resamples, seed 20260927). Nemotron-3-Embed-1B, which needs a second model server, scored 0.5014; E3 minus E1 was 0.003124 with an interval of -0.012194 to 0.018141 that includes zero, so by the second-server rule it does not take the slot. WeMM-Embedding-2B passed the fit gate but ran out of GPU memory in its full run and is out. The reranking condition was not run.", + "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", "limitations": [ - "One public retrieval task (CQADupstack Unix: English technical questions from a StackExchange forum), one workstation, one throwaway distribution, one run per arm: a local integration check, not an acceptance on the destination distribution.", - "Nemotron's tie holds for this task only; multilingual retrieval, longer documents and other domains were not measured.", - "The two Ollama arms are GGUF conversions served by the one model server; a difference from the reference weights is a difference of the systems, not of the models alone.", - "E1's and E2's prompts are MTEB's reference prompts as observed with a stub before the runs (amendment 4a): E1 sends the Qwen3 instruction before queries and nothing before documents; E2 sends EmbeddingGemma's query and document prompts.", - "Gate F reads the model server's listing: in window pb2 the card's memory in use fell between steps while the server kept listing the generation model entirely on the GPU, consistent with the Windows driver moving part of it off the card, so E3 passing gate F does not show co-residency. In window pb1 the readings matched the resident models, so E1's co-residency with the generation model is supported by both readings.", - "E4's first error text was lost: after its evaluation failed out of memory, the script's memory query raised the same sticky CUDA error and the outer handler replaced the text; the outcome is not in doubt, because only the evaluation's handler sets out_of_memory.", - "The reranking condition was not run: no installed retrieval owner can call an external reranker (QMD reranks in-process with its bundled model), and zerank-2 (7.49 GiB of weights) cannot be resident beside the generation model on this card.", - "Recorded, not deciding: evaluation time E1 1,166 s, E2 771 s, E3 460 s (E3 in-process, not comparable with the Ollama arms); resident sizes E1 2,857,191,341 bytes and E2 681,417,113 bytes.", - "manifests/stack.json has no Ollama or MTEB component; component_ids name huggingface-hub-native, the native route for the revision-pinned snapshots of E3 and E4, which the measurement downloaded through the huggingface_hub library at MTEB's registered revisions (its version is in the throwaway's freeze list, which was not retained).", - "The 31 MB prediction files and the run records stay private and are listed by sha256 in files.json; the published per-query nDCG@10 files reproduce the decision statistic.", - "With a server-wide context of 64,000 the embedder loaded at its full context and took 5.78 GB (Part A, A1b); the measured system sets the context per model (qwen3-embedding-8k, 8,192 tokens), never server-wide." + "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", + "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", + "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", + "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", + "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." ], - "path": "evidence/artifacts/new-wsl-local-models-20261002/part-b-receipt.json" + "path": "evidence/receipts/foundation-rd-20260921.json" }, { - "id": "new-wsl-local-generation-model-20261002", + "id": "claude-foundation-finalization-20260921", "kind": "native_model_e2e", "component_ids": [ + "claude-code", "codex", - "claude-code" + "agent-browser", + "repomix" ], - "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02, the preregistered comparison for the new WSL's local generation model gave the slot to S2o: Swift-1.5-Qwen3.8-27B IQ3_S (ukisai/Swift-1.5-Qwen3.8-27B-GSQ-RCO-GGUF at revision d74895bbe5db4bec1e0024e7cc87d59c02d7631a, file sha256 1333c6ea70ef348d4ac6d62732772e8ad6571ac5b3754c14ed54f1a0d904a786, 11,771,546,912 bytes) on Ollama 0.35.0 as swift-iq3s-s2o-64k (context 64,000). On the same 100 BFCL simple_python cases (inspect-evals 0.23.0 on Inspect AI 0.3.273) through the server's chat and responses surfaces, its first-pass valid tool calls were 200 of 200 against 175 of 200 for the control gpt-oss:20b: difference 0.125, 95% paired bootstrap interval over cases 0.065 to 0.19 (10,000 resamples, seed 20260927), not a tie. Both arms were entirely on the GPU with the embedder resident in the order of use, and both passed 10 of 10 client tasks (Codex 0.160.0 and Claude Code 2.1.287). Bonsai PTQ1_0, Bonsai PQ2_0 and Swift on PrismML's llama.cpp server failed the function gate (0 of 3 runs each: the server skips the Codex client's namespace tool type), and qwen3.8:27b was not entirely on the GPU at 64,000 tokens.", + "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", "limitations": [ - "One workstation, one throwaway distribution, one run per case and arm: a local integration check of the systems named, not an acceptance on the destination distribution.", - "First-pass tool-call validity on 100 simple public cases (BFCL simple_python) through two interfaces; nothing about coding quality, long tasks, throughput under concurrent requests or behaviour above 64,000 tokens.", - "The Anthropic-style messages surface was not evaluated through the package (Inspect AI 0.3.273 cannot read this thinking model's answer); it was exercised only by Claude Code in the client tasks, which both arms passed.", - "S2o was slower in these runs: 292 and 303 seconds for 100 cases on chat and responses against 100 and 139 for the control, and 43.1 against 108.9 output tokens per second on single long prompts that were not run as a speed comparison.", - "S2o leaves less GPU memory free: 21,579 of 24,564 MiB in use with the embedder resident while Windows applications held about 2,600 MiB; earlier the same day they held up to about 5,900 MiB, at which the same load would leave under one GB. Co-residency on a busier desktop and on the destination distribution is not measured.", - "The Ollama import is this measurement's system, not a route the publisher documents: the library qwen3.8:27b model's renderer, parser, parameters, template and licence lines with the Swift file as FROM. The publisher's own route (llama.cpp's server, here PrismML's fork) failed the function gate for a reason that lies in that server. The quantization's card says its quality tests used a 512-token context.", - "The arm that took the slot was added by the preregistration's extension (amendment 3) after the owner asked for the newest releases; the deciding measurement as the critic named it had two arms (qwen3.8:27b and gpt-oss:20b), the earlier result for gpt-oss:20b is kept as a historical result, and gpt-oss:20b ran A2 as the control under the same rules.", - "Three deviations are recorded (a void first window, the Codex client's model name with its tag, a reused label); none changed a case, a limit, the metric or the rule, and none was decided on an outcome.", - "Recorded, not deciding: the package's own score (S2o 97 and 95 of 100, the control 83 and 83) and the client tasks (10 of 10 for each arm).", - "manifests/stack.json has no Ollama, Inspect AI or PrismML llama.cpp component, so component_ids name the two clients that ran the client tasks (Codex also ran the function gate); they ran at Codex 0.160.0 and Claude Code 2.1.287, not at the stack's recorded 0.159.3 and 2.1.284.", - "Raw model outputs (the Inspect logs, the client run records, the server logs) stay private and are listed by sha256 in files.json; the published per-case validity files carry case ids, verdicts, reasons and timings, and the decision statistic reproduces from them.", - "The Swift file's licence is the publisher's own (Swift Open License v1.0, with the original Qwen parts under Apache-2.0); the Modelfile's LICENSE block is the library model's Apache-2.0 text. Recorded, not judged." + "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", + "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", + "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", + "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." ], - "path": "evidence/artifacts/new-wsl-local-models-20261002/part-a-receipt.json" + "path": "evidence/receipts/claude-foundation-finalization-20260921.json" }, { - "id": "nextjs-1638-qualification-20261001", + "id": "adaptive-paper-practice-20260921", "kind": "native_cli_e2e", "component_ids": [ - "nextjs" + "nautilus-trader", + "alpaca-py", + "claude-code", + "codex" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-10-01, the application-delivery recipe was qualified at Next.js 16.3.8 (tag v16.3.8, commit b0fad0d45eb4c4430fda5eeeb442e8a5af08a5f6, released 2026-09-30T16:13:46Z), whose release notes list seven security advisories, the most severe GHSA-cjq9-62q9-8jv4 (high: server-side request forgery in Image Optimization). The two-file patch (package.json and pnpm-lock.yaml, sha256 570ac44d237b6641a5087fe57b079aaf61dcb781b6496a721b0224dd17ea60d0) changes next, @next/env and the eight @next/swc-* lock entries, every other lock entry byte-identical. With Node v24.21.0 and pnpm 12.4.2 the frozen install, the peer check, the typecheck and the production build each exited 0 (recorded at 16:07:49Z), after a first frozen install at 12:13Z exited 1 with ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION for the ten packages published on 2026-09-30; no exclusion or policy change was made.", + "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", "limitations": [ - "Bounded recipe checks only: make verify with its PostgreSQL, API and browser stages was not run, so the 2026-09-20 receipts still qualify 16.3.5, not 16.3.6 or 16.3.8.", - "The pnpm store, node_modules and build cache were warm from the earlier attempt; no cold-store install is claimed.", - "This recipe's exposure to the seven advisories was not established; the move removes the vulnerable versions from its lock.", - "Labels 15 to 17 are the version prints of Node and pnpm and a git diff check; they are metadata, not acceptance.", - "No new-host install ran: that is unit U10 on the new distribution. Provider usage of the builder is unknown." + "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", + "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", + "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", + "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." ], - "path": "evidence/receipts/nextjs-1638-qualification-20261001.json" + "path": "evidence/receipts/adaptive-paper-practice-20260921.json" }, { - "id": "notification-types-20260929", + "id": "broad-universe-research-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "alpaca-py", + "duckdb", + "claude-code", + "codex" + ], + "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", + "limitations": [ + "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", + "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", + "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", + "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", + "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." + ], + "path": "evidence/receipts/broad-universe-research-20260921.json" + }, + { + "id": "ultracode-token-routing-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code", + "codex" + ], + "claim": "Claude Code 2.1.278 native Workflow stages re-routed to lean project agents cut the provider-returned first-request prompt from 42,396 tokens (default child) to 12,164 (named MCP grants behind ToolSearch) and 8,048 (source-scout) on one identical task; eight native review runs, two readiness audits, a builder run and probes plus one Codex cross-family review are retained as sanitized usage receipts; Haiku was not routed after an Opus-verified 9/14 versus 14/14 extraction trial; workflowSizeGuideline moved from small to unrestricted with a task sizing rule.", + "limitations": [ + "First-prompt figures come from one tiny task on one host and model; they bound a fixed spawn cost, not a savings rate.", + "The Haiku judgment rests on one packet and one Opus verifier.", + "The strict accepted envelope status was never returned in the deploying project; the commit gate was fix-and-commit after each review's findings were resolved.", + "Local suites are stubbed or synthetic; provider figures reach the receipts only as sanitized child-usage.mjs output, with raw transcripts outside Git.", + "Codex thread and turn identifiers were redacted from the cross-review record." + ], + "path": "evidence/receipts/ultracode-token-routing-20260921.json" + }, + { + "id": "portable-claude-native-qualification-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code", + "codex", + "prometheus" + ], + "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", + "limitations": [ + "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", + "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", + "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", + "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", + "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." + ], + "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" + }, + { + "id": "sota-convergence-20260922", + "kind": "historical_inventory", + "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "apple-container", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codebase-memory-mcp", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "fastapi", + "gitleaks", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "llama-cpp", + "loki", + "markitdown", + "mcp-inspector", + "mcporter", + "nextjs", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "playwright-cli", + "playwright-test", + "poppler", + "postgresql", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "react", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shanraisshan/claude-code-best-practice", + "shellcheck", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" + ], + "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", + "limitations": [ + "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", + "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", + "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", + "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." + ], + "path": "evidence/receipts/sota-convergence-20260922.json" + }, + { + "id": "claude-repository-evidence-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "alpaca-py", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "duckdb", + "edgartools", + "gitleaks", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "lean", + "loki", + "markitdown", + "mcp-inspector", + "mcporter", + "nautilus-trader", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "pandas", + "playwright-cli", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shellcheck", + "skfolio", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" + ], + "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", + "limitations": [ + "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", + "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", + "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", + "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", + "Superseded observations, including the author's own probe and invocation errors, remain recorded." + ], + "path": "evidence/receipts/claude-repository-evidence-20260921.json" + }, + { + "id": "github-automation-newpc-20260922", "kind": "native_cli_e2e", "component_ids": [ + "codex", "claude-code" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", + "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", "limitations": [ - "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", - "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", - "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", - "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", - "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", - "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", - "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", - "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", - "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", + "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", + "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", + "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", + "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", + "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." + ], + "path": "evidence/receipts/github-automation-newpc-20260922.json" + }, + { + "id": "exchange-calendars-native-check-20260922", + "kind": "native_cli_e2e", + "component_ids": [ + "exchange-calendars" + ], + "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", + "limitations": [ + "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", + "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", + "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", + "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", + "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." + ], + "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" + }, + { + "id": "adoption-macos-hosted-smoke-20260922", + "kind": "native_cli_e2e", + "component_ids": [ + "codex", + "claude-code", + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" + ], + "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", + "limitations": [ + "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", + "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", + "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", + "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", + "socraticode is the profile's documented unpinned skip and was not installed." + ], + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" + }, + { + "id": "catalog-freshness-20260923", + "kind": "upstream_provenance", + "component_ids": [ + "claude-code", + "codex", + "llama-cpp", + "mcp-inspector", + "openresearch", + "skfolio" + ], + "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", + "limitations": [ + "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", + "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", + "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", + "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." + ], + "path": "evidence/receipts/catalog-freshness-20260923.json" + }, + { + "id": "adoption-macos-hosted-smoke-20260923", + "kind": "native_cli_e2e", + "component_ids": [ + "codex", + "claude-code", + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" ], - "path": "evidence/receipts/notification-types-20260929.json" + "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", + "limitations": [ + "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", + "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", + "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", + "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." + ], + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" }, { - "id": "ns2604-e2e-20261004", - "kind": "native_model_e2e", + "id": "wsl-retrieval-20260920", + "kind": "historical_inventory", "component_ids": [ - "claude-code", - "codex", - "omniroute" + "ast-grep", + "qmd" ], - "claim": "The historical 2026-10-04 foundation E2E covered 15 units and 80 slots through native executor observations, independent model review and 22 adjudications. Final labels are READY 18, PARTIAL 31, FAIL 2, BY_DESIGN 12 and INTERIM 17, with zero unjudged slots. Readiness is (18 + 12) / 80 = 37.5%, rounded half up to 38%; all 22 executor/reviewer disagreements were adjudicated, with 14 keeping the reviewer's status and 8 taking the executor's. This publication independently checks and sanitizes the retained status chains; it does not repeat host or provider execution. The adjudication prompt as run, claude-opus-5-5 at max effort with evidence-reviewer run records and timestamps, and the separate 33-slot fix list are retained.", + "claim": "Incomplete historical WSL fixture reference: selected receipts report 22 source checks/six commands and 70 QMD lexical checks/17 commands. Offline byte and result consistency can be checked, but missing command argv/cwd, unrecovered raw logs and unsupported historical QMD installation prevent native E2E or adoption acceptance.", "limitations": [ - "Host state is as of 2026-10-04 19:10\u201320:10Z only; later adjudication and source merge timestamp 2026-10-04T20:26:16Z do not extend that observation window. Publication and repair perform artifact inspection and structural checks in the owned sandbox; they do not repeat native host probes.", - "Fixes are pending. The 33 PARTIAL/FAIL slots after adjudication are not accepted as ready: 25 repository-plan and 8 host fixes (evidence/artifacts/ns2604-e2e-20261004/fixes.json). Four INTERIM token slots (context-supply, command-output, output-compression, code-index) are held for PR #684, which has not merged. The two open token slots have separate fixes: ccusage (FAIL, plan) and statusline (PARTIAL, host).", - "This is not an upstream benchmark. Native executor observations, independent model judgments and adjudication are separate from upstream tests, structural checks, independent host replication and measured quality or token improvement.", - "The 17 INTERIM slots are held by design. They remain in the denominator and contribute zero to the readiness numerator; the 12 BY_DESIGN slots are intentional dispositions rather than proof that their tools executed.", - "Adjudication: claude-opus-5-5 at effort max (evidence-reviewer), prompt template as run in evidence/artifacts/ns2604-e2e-20261004/adjudication-prompt.md. Run wf_8bf450a9-d1e (17 agents) started 2026-10-04T20:06:45Z and completed 2026-10-04T20:20:30Z; run wf_cdbf70a0-02c (5 agents) started 2026-10-04T20:08:29Z and completed 2026-10-04T20:19:31Z.", - "Historical source command excerpts and raw conversations remain private. Public reasons are bounded to 60 words, fixes preserve the merge's 900-character bound before sanitization, and citations are limited to four per slot. Hashes establish byte identity, not success or adequacy of every native acceptance claim.", - "Reviewer records report the requested gateway model cx/gpt-6.1-sol-max and max effort; no resolved backend model identity is inferred. Independent model review is review of retained evidence, not independent execution on the host.", - "The coordinator registers all eight published files in manifests/evidence.json in the PR's final registry-only commit, and full repository validation passes at that head. Per-file scans and local receipt tests are structural evidence only." + "Historical reference only; not live verification, native E2E acceptance or adoption evidence. No new host/native/client acceptance follows from these artifacts.", + "Historical command facts omit argv and cwd. Exact raw-log locations are unavailable; no invocation was reconstructed or represented as observed.", + "The unchanged historical install receipt records npm --ignore-scripts --omit=optional. Future installation must use the current supported recipe with NODE_LLAMA_CPP_SKIP_DOWNLOAD=true and required dependency scripts enabled.", + "Both executed runner versions and the initial URI-checker failure are retained byte-for-byte. The future runner adds command provenance capture without changing past evidence.", + "Receipt-reported 22/70 checks and 6/17 commands describe selected local/synthetic fixtures. Five failed-attempt commands remain separate; no upstream-suite, semantic RAG, production, client or service acceptance.", + "Source currency remains September 20; offline completion and review do not refresh releases or native execution. Whole-task provider usage is unknown and no savings claim is made." ], - "path": "evidence/receipts/ns2604-e2e-20261004.json" + "path": "evidence/receipts/wsl-retrieval-20260920.json" }, { - "id": "omniroute-3851-npm-qualification-20260930", - "kind": "compatibility_attempt", + "id": "gitleaks-macos-memory-bound-20260924", + "kind": "native_cli_e2e", "component_ids": [ - "omniroute" + "gitleaks" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", + "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", "limitations": [ - "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", - "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", - "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", - "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", - "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", - "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", - "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", - "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", - "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." + "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", + "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", + "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", + "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", + "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", + "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", + "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." ], - "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" + "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" }, { - "id": "omniroute-claude-callsite-20260930", - "kind": "native_model_e2e", + "id": "env-freshness-wsl-ubuntu-main-20260924", + "kind": "artifact_measurement", "component_ids": [ - "claude-code", - "codex", - "omniroute" + "nautilus-trader", + "alpaca-py", + "duckdb", + "pandas", + "edgartools", + "exchange-calendars", + "vllm" ], - "claim": "A native Claude Opus5.5/Max coordinator discovered and read the project dispatcher, invoked the official Sol-Max Codex SDK worker through native Bash, and the retained original shows one unchanged fixture test with exit0.", + "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", "limitations": [ - "One bounded read-only callsite and existing arithmetic oracle; no universal quality or SDK winner claim.", - "Coordinator tool scope was Bash/Read/Skill for this acceptance; other coordinator tools and optional MCP services are not qualified.", - "Native Claude and external Codex SDK usage remain separate scopes; parent list-price cost is not complete provider billing.", - "The separate Claude SDK Devin bridge remains failed/unqualified; this native Claude-account coordinator run does not promote it.", - "Provider backend identity, overall task usage, failed/interrupted calls, remote cancellation and token savings remain unverified." + "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", + "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", + "One host; each PC publishes its own report under the same schema.", + "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." ], - "path": "evidence/receipts/omniroute-claude-callsite-20260930.json" + "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" }, { - "id": "omniroute-runtime-enhancements-20260930", + "id": "vllm-030-switch-20260925", "kind": "native_model_e2e", "component_ids": [ - "codex", - "omniroute", - "context-mode", - "serena", - "dagu" + "vllm", + "socraticode" ], - "claim": "A scoped native Codex SDK Sol-Max worker completed skill use, selected Context Mode/Serena MCP calls, one Astra-Max native judge and an unchanged oracle through OmniRoute in a successful bounded Dagu graph.", + "claim": "vLLM 0.30.0 now serves the production Nemotron-3-Embed-1B-BF16 embeddings on the NativeStack WSL2 RTX 4090 host. Qualified first on an owned instance against production 0.25.0 (identical model files, flags and route), then switched by a systemd drop-in that changes only the binary path; the live service returned identical embeddings and identical top-10 code-index results after the switch.", "limitations": [ - "One unchanged arithmetic fixture and bounded integration; no universal highest-quality model, framework or SDK ranking.", - "169 enabled skills were visible through native discovery. This run read using-superpowers and exercised three selected MCP calls; it does not qualify every installed skill, tool, language server, plugin or hook.", - "Native hook support and live web search are configured, but their execution is unmeasured here. No scheduler, schedule, hook or global account configuration was installed by this kit.", - "Native parent and child cumulative usage are separate scopes. Cached input and reasoning are subsets; observer response counters corroborate the same usage and must not be added. Failed/interrupted and complete provider usage, billing and token savings remain unknown.", - "Each observed completed stream also has an unclassified flow_error record. Native results completed; transport is not described as error-free, and requested model/provider labels are not backend identity attestation.", - "The separate Claude SDK Devin bridge retains its failed/unqualified status. Earlier native Claude-to-SDK acceptance is a historical separate callsite, not a rerun against this source.", - "The follow-up native Claude cooperation session was stopped after no confirmed SendMessage/final packet; no peer approval or new owner-contact count is claimed.", - "The isolated kit is a scoped private worker configuration. Live owners retain shared worker policy, host-wide catalogs/defaults and dashboard checkpoint ownership." + "One host (NativeStack, RTX 4090, WSL2 Windows driver 616.64) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", + "Retrieval equality covers 8 gate texts and 5 live code-index queries (top-10), not an aggregate retrieval-quality benchmark.", + "0.30.0 relies on its pinned-memory fallback for WSL (PR #56908); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", + "The 0.25.0 prefix is kept for rollback; the base unit still names it and only the drop-in points at 0.30.0." ], - "path": "evidence/receipts/omniroute-runtime-enhancements-20260930.json" + "path": "evidence/receipts/vllm-030-switch-20260925.json" }, { - "id": "omniroute-runtime-workers-20260930", - "kind": "native_model_e2e", + "id": "rtk-050-qualification-20260925", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "omniroute" + "rtk" ], - "claim": "The retained official Codex SDK Sol-Max worker passed one upstream coding fixture, native resume and fresh recovery through the selected OmniRoute Responses lane. Interrupted usage and Claude bridge qualification remain unknown/failed.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", "limitations": [ - "One arithmetic fixture and lifecycle acceptance; no universal SDK or model quality ranking.", - "Actual provider trials invoked the SDK from root, rather than through a Claude coordinator. Native project dispatch skill is supplied and structurally checked; its coordinator invocation remains unmeasured.", - "Native Codex SDK remains the incumbent. The separate frozen three-arm SDK gate remains unresolved.", - "Native gateway requested/returned model labels are not backend attestation.", - "All 136 skills are available in the owned project, with two bodies exercised; full role coverage and optional service acceptance remain incomplete.", - "Native Codex repeated in-process fixtures emit stdout/stderr ResourceWarnings; standalone per-invocation child exit is qualified separately.", - "Complete provider usage, spending, remote cancellation and token savings remain unknown.", - "Public record is sanitized selected actual return fields and independent observations; original private returned artifacts remain outside the checkout." + "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", + "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", + "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", + "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", + "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", + "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", + "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." ], - "path": "evidence/receipts/omniroute-runtime-workers-20260930.json" + "path": "evidence/receipts/rtk-050-qualification-20260925.json" }, { - "id": "omniroute-sdk-worker-0160-20261003", - "kind": "native_model_e2e", + "id": "markitdown-018-qualification-20260925", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "omniroute", - "context-mode" + "markitdown" ], - "claim": "The SDK 0.160.0 B3 review candidate addresses all five PR #628 bot findings and passed twelve of twelve twenty-five-test native loopback fixture invocations, 26 local Claude SDK tests, six observer tests and final Ruff checks. Each reported bug has a retained failing-before-repair command and a passing counterpart. B2 metadata preflight and the earlier builder/coordinator live observations remain historical; no B3 live model task ran. Writing dispatch, live keyed-shell/search qualification and backend effort remain unobserved.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", "limitations": [ - "Authored loopback SSE fixtures, local Claude SDK tests and observer tests are integration/synthetic checks, not unchanged upstream suites or provider-model trials.", - "The pre-B2 builder live task returned the correct data while two native shell attempts failed in its enclosing Codex sandbox and a Context Mode call failed with Transport closed. A separate coordinator, outside a nested Codex sandbox, observed read-only shell success at that candidate. The repaired bytes have no new live-model run; error-free MCP transport and writing (workspace-write) dispatch remain unqualified at 0.160.0.", - "Plugin disabling is the selected native feature gate. Tests observe direct app-server PID termination and absence of clone directories; descendant cleanup and global non-loopback egress are not observed.", - "Metadata preflight submits no inference. No skill was installed in the new private home and no --require-skill was used; inherited/project catalog discovery does not qualify every skill or tool.", - "Requested model/Max effort and live catalog entry are observed; gateway-forwarded effort, backend model identity, complete provider usage, cost, remote cancellation and token savings remain unknown.", - "September 30 receipts and original observations remain historical. This refresh does not rerun the historical coding oracle, Claude callsite, Astra judge, Dagu graph or unchanged upstream SDK suite.", - "Exactly pinned private SDK preflight/PID attributes require review on every pin move. Stable Python SDK and experimental, unsupported-for-production app-server are separate support boundaries.", - "Expected ResourceWarning messages and argparse rejection output remain in private fixture logs. Long-lived SDK pools, alternative approval modes, alternate binary, credential-variable path, workspace-write live execution and scheduled Dagu acceptance remain unqualified.", - "Initial Ruff failure exits are retained from native task returns, but exact full output/timing was not saved. Repository validators prove declared consistency, not the truth of provider or historical claims.", - "Earlier checkout and alternate-index validation failures are retained as before-B2 attempts. The coordinator force-added the project skill to the real index; B2 acceptance uses that actual checkout index. Historical source archive acceptance does not replace current checkout acceptance.", - "If the cleanup bound expires during retained startup or close, cleanup_status is unresolved and the CLI exits nonzero. Continued deferred cleanup is observed only while the embedding event loop remains running; no post-bound standalone cleanup or remote termination guarantee is made.", - "B3 repairs have local regression/configuration acceptance only: no live model tasks, keyed gateway shell trial, standalone search endpoint trial or native Claude connect fault injection. The native SDK retains its own shielded cleanup/transport bounds; wrapper grace does not override them." + "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", + "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", + "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", + "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", + "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", + "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", + "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", + "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." ], - "path": "evidence/receipts/omniroute-sdk-worker-0160-20261003.json" + "path": "evidence/receipts/markitdown-018-qualification-20260925.json" }, { - "id": "openresearch-0215-qualification-20261003", + "id": "ai-memory-240-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "openresearch" + "ai-memory" ], - "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", "limitations": [ - "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", - "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", + "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", + "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", + "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", + "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", + "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", + "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." ], - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" }, { - "id": "otelcol-contrib-0162-qualification-20261003", + "id": "mcporter-0141-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "opentelemetry-collector-contrib" + "mcporter" ], - "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", "limitations": [ - "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", - "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", + "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", + "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", + "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", + "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", + "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." ], - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" }, { - "id": "playwright-cli-0122-qualification-20261003", + "id": "ai-memory-241-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "playwright-cli" + "ai-memory" ], - "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", "limitations": [ - "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", - "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", - "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", + "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", + "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", + "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", + "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", + "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", + "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." ], - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" }, { - "id": "portable-claude-native-qualification-20260921", + "id": "headroom-039-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "prometheus" + "headroom" ], - "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, headroom-ai 0.39.0 was qualified against the pinned 0.37.0 and not switched; production stays on 0.37.0. Tag v0.39.0 is 66f426171bab32692cf93d2b656a8e4be9004186 and contains d971f7c3 (#3748; compare behind_by 0). Its manylinux_2_28_x86_64 wheel (14,199,952 bytes, sha256 8c7594012ce0dcd28202af471fb1bd08c6f226c8e10fc6a682b3fb233e809a74) matched PyPI JSON, the PyPI simple API and the GitHub release asset, and was installed with uv into the new prefix tools/headroom-ai-0.39.0; 555 of 555 headroom/ RECORD digests match the verified wheel and `headroom --version` printed 'headroom, version 0.39.0'. The unchanged upstream test file tests/test_transforms/test_content_detector_timestamp_search.py (blob 23b66a27) passed 6 of 6 on 0.39.0 and 4 of 6 on 0.37.0. Through `headroom mcp serve --proxy-url http://127.0.0.1:1` over stdio, 0.39.0 listed headroom_compress, headroom_retrieve and headroom_stats; compressed the 600-line ISO-timestamped fixture A 16820 -> 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", "limitations": [ - "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", - "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", - "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", - "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", - "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." + "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", + "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", + "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", + "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", + "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", + "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", + "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", + "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." ], - "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" + "path": "evidence/receipts/headroom-039-qualification-20260925.json" }, { - "id": "portable-cli-artifacts", - "kind": "native_cli_e2e", + "id": "vllm-030-switch-laptop-20260926", + "kind": "native_model_e2e", "component_ids": [ - "shellcheck", - "difftastic", - "markitdown", - "ast-grep", - "toon", - "repomix" + "vllm", + "socraticode", + "ai-memory" ], - "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", + "claim": "vLLM 0.30.0 was qualified on this laptop (WSL2, RTX 5090 Laptop GPU 24GB) as a drop-in candidate for the production Nemotron-3-Embed-1B-BF16 embedder (vLLM 0.25.0), then switched into production by a systemd --user drop-in that changes only the ExecStart binary path and PATH. Of the six qualification gates: (a) gate-text cosine, (c) batch invariance and (e) ai-memory vector reconstruction passed their pass bars; (b) mini-corpus retrieval and (d) live-code-index retrieval met top-10 SET identity on every query and trial (b: 40/40, d: 20/20 query-trials) but failed their strict top-10 ORDER bar in 3 of 4 trials each; (f) latency is report-only, with no pass bar. A prod-vs-prod control run (candidate never started) shows the same order-swap behavior already exists in production alone: gate b had 6 of 50 mismatched query-trials for the candidate (including an earlier, superseded run) against 10 of 80 for production compared with itself; gate d had 3 of 20 against 4 of 40; production against itself even had a worse single trial (6 of 10 identical) than any candidate trial. Gate (c)'s batch-invariance minimum cosine (0.9999562552851937) was bit-for-bit identical between production alone and the candidate, on the same minimizing text. The production switch itself re-checked only 30 gate texts (cosine 0.9999999999999998 before vs after) and confirmed dependents (ai-memory's vector stream, SocratiCode search); it did not re-run a post-switch top-10 retrieval check.", "limitations": [ - "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", - "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." + "One host (laptop, RTX 5090 Laptop GPU 24GB, WSL2) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", + "Retrieval equality covers 30 gate texts (a), a 50-paragraph mini-corpus over 10 queries (b), and 5 live code-index queries (d), not an aggregate retrieval-quality benchmark. Gates b and d met top-10 content-SET identity on every query and trial (b: 40/40 query-trials across the 4 recorded trials, plus full set overlap on one earlier superseded run; d: 20/20 query-trials) but did not meet strict top-10 ORDER identity on every trial (that earlier superseded run's own order count was 9 of 10). Counting every recorded run: gate b had 6 of 50 candidate query-trials with an order mismatch against 10 of 80 for a prod-vs-prod control (candidate never started, run twice -- an earlier, superseded control and the current one -- both included since only the second run's own prod_score diagnostic sub-field needed a fix, not its order counts); gate d had 3 of 20 against 4 of 40. Production compared with itself had a worse single trial (6 of 10 identical, i.e. 4 mismatched) than any candidate trial (worst: 7 of 10 identical, 3 mismatched), so this order-swap behavior is pre-existing production batching noise, not attributable to the 0.30.0 upgrade. The swap-gap range is 3.5e-05 to 8.2e-04 across all 23 recorded swaps (candidate run and both control runs combined), far smaller than the ~0.02-0.05 gaps between other adjacent ranks in the same rankings.", + "The reference receipt's own qualification-time number for this style of check (mini_corpus_top10_overlap, '10/10 on each of 10 queries') is a content-SET overlap claim, not a strict-order claim; it does not report whether its own order matched on every query, so gate (b)'s order tracking here is additional detail, not a comparison against a reported order result. The reference receipt's one reported ORDER number (production_switch.code_queries_identical_top10_order, '5/5') comes from its own post-switch production check with 5 live code queries, a different procedure from this run's own gate (d) qualification check (5 queries against the live SocratiCode index, run before any switch); the two are not directly comparable, and this run made no post-switch top-10 check of its own (see production_switch below: only 30 gate texts and a cosine value were re-checked after the switch) -- unlike the reference, which also re-checked 5 code queries' top-10 order after its own switch (that same code_queries_identical_top10_order, '5/5').", + "0.30.0 relies on its pinned-memory fallback for WSL (vllm-project/vllm PR #56908, the same warning the reference receipt's owned instance logged); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", + "The 0.25.0 unit is kept for rollback; only a drop-in override (nemotron-embed-agent-lab.service.d, ExecStart and PATH only) points production at 0.30.0.", + "A diagnostic-only bug in this run's own gate (b) script (prod_scores_by_idx had score and index reversed) made the order_diff_detail[].prod_score sub-field in every candidate-vs-prod gate (b) file (gate_b_result.json and gate_b_trial{1,2,3}.json) and in the first, superseded prod-vs-prod control unreliable; it did not affect any cosine value, top-10 set, or pass/fail boolean -- only that one diagnostic sub-field -- and was fixed before the second, current prod-vs-prod control run. See raw/ERRATUM-gate_b-order_diff_detail-prod_score-bug.txt.", + "results.json's own generated prose has two internal inconsistencies against its own structured fields, corrected in this receipt from the underlying per-trial gate files (raw/gate_b_result.json, gate_b_trial{1,2,3}.json, gate_d_result.json, gate_d_trial{1,2,3}.json): its gate (b) finding text lists strict-order counts as '9, 7, 9 and 10' where the adjacent structured array and the per-file queries_with_identical_order fields agree on '10, 9, 7 and 9' (same four numbers, wrong order in the prose only); its gate (d) finding text says strict order held on '3, 5, 4 and 4' of 5 queries where the adjacent structured array and the per-file queries_identical_count fields agree on '4, 5, 4 and 4'.", + "The laptop's vllm-0.30.0 prefix pre-existed this run (never pip-installed into by this task, per its own instructions), so no direct_url.json or install log exists on this host to independently re-hash its wheel; the pin identity below is the value the workstation's own switch receipt recorded for the same pinned release, reused for cross-host comparison, not independently re-verified here. What IS independently verified on this host: both production (0.25.0) and the candidate (0.30.0) point at the identical, single model directory (same absolute path in both /v1/models responses), and this host's own sha256 of that directory's model.safetensors is recorded below.", + "independent_review: an independent reviewer subagent checked this receipt against the retained raw files (recomputed the reported counts, re-hashed the model file, compared production's before/after flags) and re-ran no gate; that review produced every correction listed above." ], - "path": "evidence/receipts/portable-cli-artifacts.json" + "path": "evidence/receipts/vllm-030-switch-laptop-20260926.json" }, { - "path": "adoption/receipt.json", - "id": "portable-sdk-adoption-20260919", + "id": "codex-01571-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "duckdb" + "codex" ], - "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", "limitations": [ - "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", - "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", - "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", - "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", - "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", - "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", - "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." - ] + "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", + "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", + "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", + "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", + "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", + "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", + "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", + "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", + "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", + "Linux x86_64 only, one host; nothing here is macOS evidence." + ], + "path": "evidence/receipts/codex-01571-qualification-20260926.json" }, { - "id": "portable-userspace-install-20260921", + "id": "mcp-inspector-280-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon", - "codex", - "claude-code" + "mcp-inspector" ], - "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", "limitations": [ - "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", - "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", - "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", - "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", - "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", - "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", - "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", - "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", - "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." + "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", + "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", + "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", + "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", + "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." ], - "path": "evidence/receipts/portable-userspace-install-20260921.json" + "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" }, { "id": "prometheus-3150-qualification-20260926", @@ -3453,174 +3297,127 @@ "path": "evidence/receipts/prometheus-3150-qualification-20260926.json" }, { - "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", - "id": "qdrant-native-state-recovery-20260919", + "id": "tavily-research-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "qdrant", - "restic" + "tavily-cli" ], - "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", "limitations": [ - "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", - "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", - "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", - "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", - "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." - ] - }, - { - "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", - "id": "qmd-bm25-retrieval-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "qmd" + "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", + "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", + "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", + "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", + "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", + "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", + "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", + "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." ], - "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", - "limitations": [ - "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", - "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", - "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", - "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", - "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", - "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", - "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", - "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", - "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", - "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", - "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." - ] + "path": "evidence/receipts/tavily-research-qualification-20260926.json" }, { - "id": "restic-local-public-reference-20260919", - "kind": "native_cli_e2e", + "id": "local-inference-c2-serving-switch-20260926", + "kind": "native_model_e2e", "component_ids": [ - "restic" + "llama-cpp" ], - "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", "limitations": [ - "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", - "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", - "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", - "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", - "Credential loss recovery requires separately approved secure key escrow." + "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", + "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", + "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", + "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", + "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", + "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", + "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." ], - "path": "blueprints/us-equities/hosting/backup/receipt.json" + "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" }, { - "id": "rtk-050-qualification-20260925", - "kind": "native_cli_e2e", + "id": "claude-advisor-usage-scan-20260928", + "kind": "artifact_measurement", "component_ids": [ - "rtk" + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", + "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", "limitations": [ - "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", - "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", - "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", - "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", - "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", - "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", - "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", + "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", + "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", + "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", + "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", + "Whether ccusage or ecosystem-token-report count these entries was not checked." ], - "path": "evidence/receipts/rtk-050-qualification-20260925.json" + "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" }, { - "id": "rtk-051-qualification-20261004", + "id": "claude-host-practice-readback-20260928", "kind": "native_cli_e2e", "component_ids": [ - "rtk" - ], - "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed rtk 0.51.0 from the checksummed Linux release archive and returned rtk 0.51.0 with exit 0. rtk verify returned 151/151 inline self-tests with exit 0; 24 hook payloads matched 0.50.0 output and exits (16 rewritten, 0 differing), and 26 permission-deny hook decisions matched with no auto-allows. Direct git/proxy calls succeeded and the existing tracking database was read and later updated. This receipt republishes bounded sanitized facts from the historical host records; it is not a new host or model run.", - "limitations": [ - "No macOS execution; the Darwin archive is artifact-checked only. No upstream cargo test suite was run in these records; rtk verify is the native inline self-test, and the 115-test parser run (14 skipped) is local integration.", - "rtk gain, session and cc-economics are tool self-reports, not provider counts, invoice data or causal savings. Cumulative snapshots are not added together.", - "No fresh live-client acceptance or rtk init re-run was recorded. The --shell compatibility review is source-based; the host hook comparison covered only its 24 payloads and 26 deny entries. Existing exact-output exceptions and dated replay gates remain scoped to their original evidence.", - "gh attestation verification returned HTTP 404 (exit 1); no signature verification or source rebuild was recorded. Later upstream fixes and issue #4404 are follow-ups, not included in this stable pin.", - "NativeStack runs AgentsView 0.44.0 ahead of the repository pin. The 2026-09-27 qualification hold stands: synthetic_ccusage_parity failed, fresh_four_native_lanes is blocked, and the v0.44.0 MCP reported zero Codex counters. The recorded recipe rewire and qualification must pass in a separate follow-up before a repository pin move.", - "RTK replay is unavailable at 0.51.0: vendored child-usage.mjs and the test_token_measurement.py/test_skill_usage.py replay gates require exactly rtk 0.50.0. Skipped replay tests are not coverage; the kernel and gates remain unchanged.", - "The repair-round placeholder guard probes allowed the --shell form rtk test --shell sh 'cat ~/.ssh/config' (exit 0), while rtk proxy cat ~/.ssh/config was blocked (exit 2). These strings were guard input only; no credential reader was executed. This finding belongs to PR #685; the guard is unchanged in this pin move.", - "2026-10-04 control correction after PR #693 CI run 37226622626: v0.51.0 intentionally folds grep file lists (feac25d), so the former byte-unchanged grep control is superseded by counted prefix-plus-tail reconstruction of the exact native path set, byte-identical proxy recovery and a CR-filename verbatim guard fixture (3223a80). The diff half is unchanged. The repaired native fixture passes nine checks over 11 cases / 33 arms; this is local integration of the installed Linux CLI, not new host or upstream Cargo-suite acceptance. Agent-facing expansion of folded paths is unmeasured; an E2E observation of a wrong expanded path leads to adding grep -l/-rl to hook exclusions. Sources and retained red-then-green observations: docs/decisions/2026-10-04-rtk-file-list-control.md.", - "2026-10-04 PR #698 follow-up from the pre-rebase review head 45a7218c0 (rebased onto 38ac9aca1; no branch keeps it): the grep inverse now preserves native engine order, and a CR-free explicit-operand t6c sibling proves that the same grep -l shape folds without the 3223a80 guard signal. Native distinctness and the CR-case LF record count have isolating rejection controls with separate predicate-deletion red runs and restored green runs. The installed Linux CLI passes ten checks across 12 cases / 36 arms / 76 fixture commands plus one version command. Historical shell_sites line 1477 is retained; a dated appended entry corrects the direct-argv locator. Minimal sanitized original red/green outputs from job 035 and new job 042 outputs are retained under evidence/artifacts/rtk-051-file-list-control-20261004/ (README.md and native-controls.json), with the dated decision at docs/decisions/2026-10-04-rtk-file-list-control.md. This is local integration, not a WSL rerun, upstream Cargo-suite, new-host or native-model acceptance; model interpretation remains unmeasured." - ], - "path": "evidence/receipts/rtk-051-qualification-20261004.json" - }, - { - "id": "runtime-sdk-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "codex" + "claude-code", + "claude-hud", + "headroom", + "mcporter", + "jcodemunch-mcp", + "agent-browser", + "qmd" ], - "claim": "Retained coordinator results for the same-host Codex SDK/CLI 0.160.0 pair report strict-hash installation, matching bundled/npm-platform binaries and completed native-account SDK, gateway SDK and gateway CLI marker canaries. Sanitized outputs, native CLI usage, scripts, hashes, mtimes and discriminating replay controls are now retained; missing original SDK invocation/source and process start/end evidence limit this to a compatibility attempt. The separate A4 record adds fail-closed Linux package-resolution/executable-tree repairs, offline integration controls and a fresh isolated bootstrap of the shipped Codex pin; it does not upgrade the SDK/gateway canary evidence class.", + "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", "limitations": [ - "Existing-host compatibility observations and completed marker canaries only; incomplete original command/timing provenance prevents native_cli_e2e acceptance. Not new-host or model-quality acceptance.", - "Gateway backend model and effort were not read from the call log; configured/requested routes and efforts do not prove backend selection.", - "The shared host launcher, daemon and production prefix still run 0.159.3 until a separate coordinated switch.", - "The 0.159.3 queue, Hindsight and October 1 SDK receipts retain their original scope; they do not qualify 0.160.0.", - "Sanitized native canary stdout/stderr, CLI events/last message and their hashes are retained. SDK caller exit codes 0 are coordinator-verified, not fields in the supplied facts. Gateway backend billed usage and monetary cost remain unrecorded.", - "Original process start/end times and SDK outer executable/cwd are unrecorded. Source mtimes are filesystem observations only. The native heredoc is reconstructed from facts and the retained gateway example, not attested as the original source.", - "SDK last and total usage snapshots match for each canary and must be counted once; cached input and reasoning output are subsets, not additional tokens.", - "No unchanged upstream test suite, shared daemon restart, whole-system cleanup/recovery acceptance, package signature or provenance attestation verification is recorded here. The separate A4 bootstrap record retains local migration/publication fault injection and an isolated native installation.", - "The move is inside the seven-day cooldown recorded in docs/decisions/2026-09-25-workstation-sota-refresh.md, as the prior 0.159.2 and 0.159.3 moves were (docs/decisions/2026-09-27-model-currency.md).", - "This repository change records existing coordinator qualification; it performs no new model run or shared-host switch.", - "The CLI script prints the inner Codex exit but does not propagate it as its own final shell exit; the recorded inner exit 0 is supported by the coordinator facts and completed native events." - ], - "path": "evidence/receipts/runtime-sdk-20261003.json" - }, - { - "id": "runtime-tools", - "path": "evidence/receipts/runtime-tools.json", - "kind": "native_cli_e2e", - "component_ids": [ - "gitleaks", - "sandbox-runtime" + "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", + "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", + "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", + "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", + "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", + "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", + "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." ], - "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", - "limitations": [ - "No claim of full security certification.", - "Sandbox network denial configured but not separately exercised." - ] + "path": "evidence/receipts/claude-host-practice-readback-20260928.json" }, { - "id": "sec-catalyst-dataset-native-20260920", + "id": "socraticode-1150-qualification-20260927", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "socraticode" ], - "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", "limitations": [ - "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", - "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", - "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", - "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", - "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", - "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", - "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", - "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", - "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." + "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", + "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", + "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", + "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", + "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", + "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", + "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", + "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", + "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", + "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", + "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." ], - "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" + "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" }, { - "id": "sec-financial-data-20260919", - "kind": "compatibility_attempt", + "id": "ccusage-20026-qualification-20260927", + "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "ccusage" ], - "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", "limitations": [ - "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", - "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", - "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", - "Current API snapshots do not reconstruct historical point-in-time knowledge.", - "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", - "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." + "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", + "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", + "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", + "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", + "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", + "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", + "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", + "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", + "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", + "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", + "New hosts receive this pin only after the next release tag." ], - "path": "blueprints/us-equities/financial-data/receipt.json" + "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" }, { "id": "skills-listing-restore-20260928", @@ -3666,27 +3463,104 @@ "path": "evidence/receipts/skills-m4-host-removal-20260928.json" }, { - "id": "socraticode-1150-qualification-20260927", + "id": "claude-model-effort-probes-20260929", "kind": "native_cli_e2e", "component_ids": [ - "socraticode" + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", + "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", "limitations": [ - "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", - "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", - "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", - "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", - "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", - "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", - "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", - "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", - "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", - "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", - "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", + "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", + "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", + "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", + "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." ], - "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" + "path": "evidence/receipts/claude-model-effort-probes-20260929.json" + }, + { + "id": "claude-max-default-effort-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", + "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", + "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", + "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", + "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", + "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", + "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", + "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." + ], + "path": "evidence/receipts/claude-max-default-effort-20260929.json" + }, + { + "id": "claude-project-effort-flag-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", + "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", + "The Ultracode reminder is an indicator, not proof of workflow orchestration.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." + ], + "path": "evidence/receipts/claude-project-effort-flag-20260929.json" + }, + { + "id": "claude-spend-attribution-20260929", + "kind": "artifact_measurement", + "component_ids": [ + "claude-code", + "ccusage" + ], + "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", + "limitations": [ + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", + "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", + "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", + "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", + "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", + "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", + "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", + "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", + "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", + "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." + ], + "path": "evidence/receipts/claude-spend-attribution-20260929.json" + }, + { + "id": "wsl-terminal-defaults-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code", + "codex" + ], + "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, and 2.1.283 in a second distro; Codex 0.157.1; bash 5.2.21; Windows Terminal 1.24.11911.0) the repository now carries the terminal defaults that had been set by hand on the host. Merging the linux-wsl2 Claude Code overlay into the live settings with the repository's merge tool changed nothing (the merge equalled the live file), exactly one Notification group holds the bell command, and its matcher equals the overlay's (the acceptance script checks the matcher because the merge alone cannot see it). The rendered Codex template loads under `codex --strict-config` (the run stops at authentication, never at configuration); a wrong type for `[tui] notifications` and an unknown top-level key are refused, and an unknown key inside `[tui]` is not. The static `adoption_status.py --login-shell` model agreed with the real bash login search in all 512 combinations of three startup files over eight states, a FIFO made bash block (the model calls it unusable and unread), and a control that takes an empty file as absent disagreed in 26. In the second distro, the two per-project Claude profiles of the Windows Terminal settings dropped `suppressApplicationTitle` and gained the quiet bell, the audible-and-taskbar bell style and `COLORTERM` through the profile environment key, with every other profile and setting unchanged; the overlay merged into that distro's Claude settings changed only `$schema`, `hooks` and `preferredNotifChannel`, and its installed hook command printed exactly one BEL. The host practice repository's terminal-profile check now scans the live settings file and passed with 0 findings (the pre-change settings file fails it with 8 findings on the two per-project profiles), and its 22 single-defect controls each failed for exactly their rule.", + "limitations": [ + "One workstation and one Ubuntu 24.04 distro plus one second distro (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own evidence, and none of the new files is in the pinned release: a new host gets them only after a release carries them and the manifest is re-pinned.", + "No Windows Terminal tab was opened or measured after the second distro's profile change, and no session of that distro was started or observed after its overlay. Claude Code applies edits to `hooks` to a running session without a restart (settings reference, \"When edits take effect\"), so open sessions there should pick the overlay up; that was not observed, and an audible or taskbar bell for the alert path was not observed by the user in this work.", + "The profile example was checked as JSON against the policy. It declares no `guid`, so Windows Terminal derives a stable one from the folder and profile names (read in its source at the installed tag); it was not loaded into Windows Terminal or installed on any host. The host's deployed fragment is the practice repository's own file.", + "The `--login-shell` check reads file metadata only and models bash's login search from the source of bash 5.3 (shell.c execute_profile_file, builtins/evalfile.c) and the installed 5.2.21 on Linux; it does not run a login shell, read a startup file (so a non-empty file's hand-off is unknown, reported as null), or cover /etc/profile, ~/.bashrc, another shell, --noprofile, POSIX mode, an sh-mode login or macOS's bash 3.2. A special file is reported unusable: bash reads a device as empty and blocks on a FIFO, and both end the search; an unusable ~/.profile is reached but not read, so profile_read is false; HOME is the environment's, else the passwd entry's, else \"/\", the way bash falls back.", + "The Codex acceptance is a configuration load: no Codex notification was produced in this work, `async-question` does not exist at the macOS pin's tag (inert there) and Codex 0.155.1 was not run. Codex does not validate keys inside `[tui]`, so the repository's test pins that table's setting names. A `request_user_input` question notifies as `plan-mode-prompt` at both tags (tool_requests.rs L449-458), so `async-question` adds only the asynchronous questions 0.155.1 lacks.", + "The second distro's `tui` is `fullscreen` by its own setting; `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` was not set, as the upstream documentation makes it a reactive fix and no stale rendering was observed or measured.", + "The host practice repository has no remote (commits fcd291f, 396d1c1, 9500656, c14e8c3, 9f615ad and d0c7d9c); its check and controls are recorded here as results only. The Windows Terminal settings patch and the second distro's merge were host operations on private files, recorded as values.", + "The second distro's Claude Code is 2.1.283, one release before this host's. A scan of the installed binaries (this host's 2.1.282, 2.1.283 and 2.1.284, and that distro's 2.1.283) found the `notifications_disabled` and `terminalSequence` literals and `worker_permission_prompt` emitted from the same two team-inbox call sites in each (the second distro's binary is byte-identical to this host's 2.1.283 by SHA-256 prefix, and its occurrence counts by `grep -a -o` equal this host's scan), so the whole matcher is live there. The changelog dates `terminalSequence` to 2.1.141 and has no entry for `notifications_disabled`, which the settings reference documents. The hook was run in that distro.", + "The merge de-duplicates hooks by command anywhere in the event, so it never changes the matcher of a Notification hook that already runs the bell command: after a later matcher change the old group must be edited or removed first. The acceptance script checks the group count and the matcher for that reason, and a unit test proves it refuses a catch-all group and an older matcher.", + "The Codex `[tui] notifications` list is in the template that a macOS host also renders. Codex keeps its own per-terminal channel there, so needed kinds still notify natively and the turn-complete one stops; at the macOS pin `async-question` does not exist and is inert. This was decided and documented, and not observed on a Mac.", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): codex_tui_strict_check.py counts a run as loaded only with Codex's session banner and exits 1 unless the template loaded and both configuration controls were refused; overlay_noop_check.py also requires disableAllHooks not to be true and labels its verdict as a check of the user settings file only; login_shell_bash_truth.py and the 512-combination test now also compare first_read; the platform page's advice about profiles.defaults was corrected (Windows Terminal ranks a profile's own value, then profiles.defaults, then a fragment's profile). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + ], + "path": "evidence/receipts/wsl-terminal-defaults-20260929.json" }, { "id": "socraticode-1160-qualification-20260929", @@ -3710,152 +3584,112 @@ "path": "evidence/receipts/socraticode-1160-qualification-20260929.json" }, { - "id": "sota-convergence-20260922", - "kind": "historical_inventory", + "id": "omniroute-3851-npm-qualification-20260930", + "kind": "compatibility_attempt", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "apple-container", - "ast-grep", - "beads", - "ccusage", - "claude-code", - "claude-hud", - "codebase-memory-mcp", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "fastapi", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "llama-cpp", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nextjs", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "playwright-cli", - "playwright-test", - "poppler", - "postgresql", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "react", - "repomix", - "restic", - "rtk", - "sandbox-runtime", - "serena", - "shanraisshan/claude-code-best-practice", - "shellcheck", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "omniroute" ], - "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", "limitations": [ - "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", - "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", - "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", - "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." + "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", + "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", + "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", + "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", + "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", + "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", + "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", + "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", + "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." ], - "path": "evidence/receipts/sota-convergence-20260922.json" + "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" }, { - "id": "syft-1540-qualification-20261003", + "id": "codex-01592-qualification-20260930", "kind": "native_cli_e2e", "component_ids": [ - "syft" + "codex" ], - "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", "limitations": [ - "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", - "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", - "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", + "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", + "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", + "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", + "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", + "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", + "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", + "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", + "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", + "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", + "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", + "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", + "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", + "Linux x86_64 only, one host; nothing here is macOS evidence." ], - "path": "evidence/receipts/syft-1540-qualification-20261003.json" + "path": "evidence/receipts/codex-01592-qualification-20260930.json" }, { - "path": "blueprints/us-equities/supply-chain/receipt.json", - "id": "syft-sdk-inventory-20260919", + "id": "notification-types-20260929", "kind": "native_cli_e2e", "component_ids": [ - "syft" + "claude-code" ], - "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", "limitations": [ - "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", - "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", - "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", - "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", - "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", - "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", - "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", - "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", - "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", - "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." - ] + "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", + "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", + "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", + "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", + "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", + "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", + "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", + "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", + "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + ], + "path": "evidence/receipts/notification-types-20260929.json" }, { - "id": "synthetic-catalyst-contract-20260920", + "id": "login-shell-contract-20260929", "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "claude-code", + "codex" ], - "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", "limitations": [ - "Protocol thresholds are exploratory choices, not fitted or proven optimal.", - "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", - "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", - "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", - "No provider calls, broker orders, new model turn or net token-savings measurement." + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", + "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", + "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", + "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", + "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", + "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", + "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", + "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", + "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." ], - "path": "blueprints/us-equities/catalyst-experiment/receipt.json" + "path": "evidence/receipts/login-shell-contract-20260929.json" }, { - "id": "tavily-research-qualification-20260926", - "kind": "native_cli_e2e", + "id": "cross-family-review-terminal-lane-20260930", + "kind": "native_model_e2e", "component_ids": [ - "tavily-cli" + "codex", + "omniroute", + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", + "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", "limitations": [ - "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", - "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", - "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", - "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", - "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", - "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", - "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", - "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", + "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", + "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", + "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", + "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", + "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", + "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." ], - "path": "evidence/receipts/tavily-research-qualification-20260926.json" + "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" }, { "id": "terminal-experience-20260928", @@ -3882,480 +3716,497 @@ "path": "evidence/receipts/terminal-experience-20260928.json" }, { - "id": "token-native-retained-functional-20260920", - "path": "evidence/receipts/token-native-retained-functional-20260920.json", - "kind": "native_cli_e2e", + "id": "codex-shell-snapshot-cleanup-20260930", + "kind": "artifact_measurement", "component_ids": [ - "context-hub", - "headroom", - "mcp-inspector", - "promptfoo", - "worktrunk" + "codex" ], - "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", + "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", "limitations": [ - "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", - "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", - "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", - "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", - "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", - "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." - ] + "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", + "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", + "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", + "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." + ], + "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" }, { - "id": "token-practice-artifacts-20260920", + "id": "agent-browser-lna-20260930", "kind": "artifact_measurement", "component_ids": [ "agent-browser", - "ast-grep", - "edgartools", - "markitdown", - "qmd", - "repomix", - "rtk", - "socraticode", - "syft", - "toon" + "playwright-test" ], - "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", + "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", "limitations": [ - "Counts describe retained original host artifacts. This public aggregate omits the private originals; CI validates aggregate integrity, not an independent recount of those private bytes.", - "Most pairs select or transform information lossily. Shorter output does not establish equivalent answer quality or lower complete task usage.", - "Pairs overlap, including shared HTML sources and retrieval services. Do not sum them or attribute the same difference independently to dependencies.", - "Exact provider savings remain null. Tokenizer counts are not provider billing, subscription savings or causal per-repository effects.", - "The Syft table preserves checked package name/version/type columns while omitting other SBOM metadata; this is a view selection, not equivalent full SBOM content." + "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", + "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", + "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", + "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." ], - "path": "evidence/receipts/token-practice-artifacts-20260920.json" + "path": "evidence/receipts/agent-browser-lna-20260930.json" }, { - "id": "token-practice-catalog-toon-20260920", + "id": "guard-k3-verification-20260930", "kind": "artifact_measurement", "component_ids": [ - "toon" + "claude-code" ], - "claim": "A reversible full-catalog TOON conversion had a smaller native heuristic estimate but a larger exact token count than compact JSON; the guard retained compact JSON.", + "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", "limitations": [ - "This is one later artifact comparison, separate from the ten original token-practice pairs. Do not sum it with cumulative native counters or provider usage.", - "Native tokenx estimates and exact o200k_base counts use different estimators and JSON representations; they are not interchangeable savings metrics.", - "The public aggregate omits the private captured output files. Published hashes establish identity, not independent CI recount of the private bytes.", - "Exact provider savings remain unknown. The successful strict round trip establishes data equivalence for this conversion only.", - "Command templates replace host-specific source and output locations with portable placeholders." + "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", + "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", + "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", + "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", + "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1068,7 +1064,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.80.0", + "version": "0.79.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1083,21 +1079,20 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "worktrunk-0800-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" ], - "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", + "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.162.0", + "version": "0.161.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1117,15 +1112,13 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "otelcol-contrib-0162-qualification-20261003" + "claude-repository-evidence-20260921" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" + "https://github.com/open-telemetry/opentelemetry-collector-contrib" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "prometheus", @@ -1408,10 +1401,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.54.0", + "version": "1.52.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", + "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1420,14 +1413,13 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921", - "syft-1540-qualification-20261003" + "claude-repository-evidence-20260921" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.54.0" + "https://github.com/anchore/syft/releases/tag/v1.52.0" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." + "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." }, { "id": "alpaca-py", @@ -1690,7 +1682,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.327", + "version": "1.108.319", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1703,7 +1695,7 @@ } } ], - "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1716,14 +1708,13 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "jcodemunch-1108327-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", - "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", + "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", + "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 87184985a03a4c4bfd172db31b34253f152a6166 Mon Sep 17 00:00:00 2001 From: Scout Date: Mon, 5 Oct 2026 00:56:53 -0400 Subject: [PATCH 28/50] Reapply this branch's manifests/evidence.json manifests/stack.json edits on the merge base (hot-file protocol: every hot-file edit in the last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 5904 ++++++++++++++++++++------------------- manifests/stack.json | 79 +- 2 files changed, 3118 insertions(+), 2865 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 3952640a2..e30453dbd 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -2,518 +2,791 @@ "schema_version": 1, "receipts": [ { - "id": "memory-lifecycle-probe-20260921", + "id": "adaptive-paper-practice-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "nautilus-trader", + "alpaca-py", + "claude-code", + "codex" ], - "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", + "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", "limitations": [ - "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", - "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", - "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", - "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", - "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", - "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." + "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", + "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", + "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", + "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." ], - "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" + "path": "evidence/receipts/adaptive-paper-practice-20260921.json" }, { - "id": "catalog-runtime-review-20260921", - "kind": "native_model_e2e", + "id": "adoption-macos-hosted-smoke-20260922", + "kind": "native_cli_e2e", "component_ids": [ "codex", "claude-code", - "dagu" + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" ], - "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", + "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", "limitations": [ - "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", - "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", - "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." + "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", + "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", + "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", + "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", + "socraticode is the profile's documented unpinned skip and was not installed." ], - "path": "evidence/receipts/catalog-runtime-review-20260921.json" + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" }, { - "id": "catalog-clean-install-20260921", + "id": "adoption-macos-hosted-smoke-20260923", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "codex", + "claude-code", + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" ], - "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", + "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", "limitations": [ - "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", - "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", - "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." + "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", + "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", + "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", + "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." ], - "path": "evidence/receipts/catalog-clean-install-20260921.json" + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" }, { - "id": "dashboard-gap-resolution-20260921", - "kind": "native_cli_e2e", + "id": "agent-browser-lna-20260930", + "kind": "artifact_measurement", "component_ids": [ - "ai-memory", - "codex", - "claude-code", - "agentsview", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo", - "vllm" + "agent-browser", + "playwright-test" ], - "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", + "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", "limitations": [ - "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", - "Fresh PreCompact event and active Desktop session end remain unforced.", - "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", - "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", - "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", - "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." + "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", + "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", + "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", + "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." ], - "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" + "path": "evidence/receipts/agent-browser-lna-20260930.json" }, { - "id": "dashboard-render-e2e-20260921", + "id": "ai-memory-240-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qdrant", - "socraticode", - "serena", - "agentsview", - "dagu", - "omniroute", - "agent-browser", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo" + "ai-memory" ], - "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", "limitations": [ - "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", - "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", - "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", - "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", - "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", - "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", - "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", + "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", + "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", + "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", + "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", + "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", + "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." ], - "path": "evidence/receipts/dashboard-render-e2e-20260921.json" + "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" }, { - "id": "hf-memory-models-20260921", + "id": "ai-memory-241-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "vllm", - "grafana" + "ai-memory" ], - "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", + "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", "limitations": [ - "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", - "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", - "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", - "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", - "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", - "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", + "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", + "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", + "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", + "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", + "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", + "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." ], - "path": "evidence/receipts/hf-memory-models-20260921.json" + "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" }, { - "id": "native-memory-rag-alignment-20260921", + "path": "blueprints/us-equities/state-recovery/memory/receipt.json", + "id": "ai-memory-native-state-recovery-20260919", "kind": "native_cli_e2e", "component_ids": [ "ai-memory", - "socraticode", - "qdrant", - "qmd", - "vllm", - "grafana", - "loki" + "restic" ], - "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", + "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", "limitations": [ - "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", - "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", - "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", - "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", - "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", - "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", - "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." - ], - "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" + "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", + "38 pages table rows include historical versions, not 38 current pages.", + "Native backup excludes raw/, model caches, logs and external native session transcripts.", + "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", + "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", + "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." + ] }, { - "id": "native-returned-results-20260921", + "path": "blueprints/us-equities/order-contract/receipt.json", + "id": "alpaca-offline-order-contract-20260919", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "rtk", - "context-mode", - "qmd", - "serena", - "ai-memory", - "socraticode", - "qdrant", - "agentsview", - "grafana", - "loki", - "prometheus", - "dagu", - "ntfy", - "omniroute", - "agent-browser", - "promptfoo", - "headroom", - "jcodemunch-mcp" + "alpaca-py" ], - "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", + "claim": "Installed alpaca-py request models silently dropped synthetic advanced fields; this explicit broker-disconnected basic-intent boundary rejected those inputs and eight additional negative cases while preserving canonical decimal strings.", "limitations": [ - "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", - "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", - "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", - "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", - "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", - "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", - "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", - "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", - "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." - ], - "path": "evidence/receipts/native-returned-results-20260921.json" + "Local contract is not wired into unrelated SDK calls or existing workers; explicit future adapter adoption is required.", + "No broker account, key, asset lookup, risk approval, live/paper order or provider wire behavior was exercised.", + "Whole-share basic create-intent subset only; advanced, replacement, cancellation, retries, order journals and reconciliation remain gated.", + "Input representation cap and symbol/client-ID syntax are local conservative policies, not provider or risk authorization.", + "Python SDK float conversion is observed; the canonical exact decimal envelope is deliberately not serialized through those float fields.", + "JavaScript advanced support is pinned-source evidence only; no alternative SDK was installed or executed.", + "Python audit events and the Linux namespace substantiate this scoped probe, not a universal sandbox or macOS acceptance.", + "Canonical content hashes do not establish client-ID uniqueness, deduplication or safe retry semantics.", + "No token-saving claim or model inference belongs to this deterministic task." + ] }, { - "id": "native-workflow-writing-comparison-20260921", + "id": "alpaca-paper-e2e-20260921", "kind": "native_cli_e2e", "component_ids": [ + "alpaca-py", "claude-code" ], - "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", + "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", "limitations": [ - "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", - "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", - "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." + "One operational smoke trial, not profitable strategy or continuous trading acceptance.", + "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", + "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." ], - "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" + "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" }, { - "id": "native-workflow-graceful-recovery-20260921", - "kind": "native_cli_e2e", + "id": "artifact-reductions", + "path": "evidence/receipts/artifact-reductions.json", + "kind": "artifact_measurement", "component_ids": [ - "claude-code" + "rtk", + "socraticode", + "openresearch", + "context-mode" ], - "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", + "claim": "Recorded exact selected-text reductions, distinct from model usage.", "limitations": [ - "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", - "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", - "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", - "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." - ], - "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" + "Lossy selections compare retained text to full-file/paper counterfactuals.", + "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." + ] }, { - "id": "portable-userspace-install-20260921", + "id": "broad-universe-research-20260921", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon", - "codex", - "claude-code" + "alpaca-py", + "duckdb", + "claude-code", + "codex" ], - "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", + "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", "limitations": [ - "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", - "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", - "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", - "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", - "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", - "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", - "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", - "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", - "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." + "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", + "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", + "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", + "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", + "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." ], - "path": "evidence/receipts/portable-userspace-install-20260921.json" + "path": "evidence/receipts/broad-universe-research-20260921.json" }, { - "id": "claude-selective-context-pilot-20260921", - "kind": "native_model_e2e", + "id": "canary-proof-verification-20261001", + "kind": "artifact_measurement", "component_ids": [ "claude-code", - "context-mode" + "codex", + "systemd" ], - "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", + "claim": "The canary proof tool (tools/credentials/canary_proof.py, 1,834 lines, with the contained scan worker tools/credentials/canary_scan_worker.py, 2,114 lines) passed its synthetic acceptance on the workstation on 2026-10-01 on main with the K4 guard: its unit suite ran 143 tests, OK, with none skipped (including 12 cases that start transient systemd user scopes); its mutation runner killed 138 of 138 mutants by failures of their named permanent tests after 90 passing unmutated runs; and the credential, guard, Codex worker-lane and pre-commit suites ran 531 tests with one failure by design (the installed host copy of the guard). The tool plants a unique synthetic canary, lets named consumers use it through the key runner, and searches the named sinks with ripgrep in a worker that runs in a finite systemd user scope; its classifier refuses unless every required check has a fresh, complete result bound to the run. Reviews: a read-only GPT-6 verification found seven paths to a false clean verdict and four high findings, and an Opus build review found one blocking gap in the contract's acceptance cases; one repair round by a GPT-6 runtime worker fixed them, each with a permanent test and a mutant; an Opus re-check confirmed 37 of 42 dispositions and found one more false-clean path (a Git object store with no HEAD, refs or .git name, reached directly) and a record-validation defect, which one bounded fix round closed with tests and mutants. No end-to-end proof has run: it is the new distribution's acceptance after its guard install.", "limitations": [ - "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", - "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", - "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", - "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", - "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", - "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", - "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", - "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." + "Synthetic acceptance only: every sink, canary, Git store, SQLite database and journal in these runs is a fixture the tests build under a temporary directory; no real consumer, transcript, log, journal or credential was used, and no proof claim is made before the end-to-end run.", + "Containment evidence is workstation scope enforcement: the real-scope classes start transient systemd user scopes on this host (12 cases, all passing); hosted CI runners skip them where no user scope exists.", + "Scanner: ripgrep 14.1.0 is the executed version; the runtime also accepts 15.2.0 on a source-reviewed output grammar that no run has executed.", + "Size: the implementation (3,948 coordinator and worker lines) and the permanent test file (3,632 lines) exceed the contract's ceilings (1,800 and 2,800); the coordinator accepted the deviation for the required coverage and containment logic, and the reviews' dead-code findings were removed.", + "Residuals from the Opus re-check, recorded in the decision record: a completed but too-early or stale final is labelled requested_incomplete; the WAL/SHM-without-valid-main guard, Walk.covered's exclusion, time, special-file and symlinked-parent branches, and several O12 changes have no test of their own; three mutants are missing (END count/aux, --text, a count-based Git reconcile); bind_scope's refusal paths and the real scope_populated parser are untested; the scan's exit code still comes from events it does not validate.", + "Evidence classes differ: the unit, mutation and suite runs were made by the coordinator on the final head outside any sandbox; the reviews are read-only cross-family reads, not proofs." ], - "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" + "path": "evidence/receipts/canary-proof-verification-20261001.json" }, { - "id": "native-dashboard-data-20260921", + "id": "catalog-clean-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qmd", - "qdrant", - "agentsview", - "grafana", - "loki", - "rtk", - "context-mode", - "headroom", - "jcodemunch-mcp", - "promptfoo", - "serena", - "systemd" + "codex" ], - "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", + "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", "limitations": [ - "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", - "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", - "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", - "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", - "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", - "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", - "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", - "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", - "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." + "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", + "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", + "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." ], - "path": "evidence/receipts/native-dashboard-data-20260921.json" + "path": "evidence/receipts/catalog-clean-install-20260921.json" }, { - "id": "foundation-closure-20260921", - "kind": "native_cli_e2e", + "id": "catalog-freshness-20260923", + "kind": "upstream_provenance", "component_ids": [ "claude-code", "codex", - "affaan-m/ECC", - "context-mode" + "llama-cpp", + "mcp-inspector", + "openresearch", + "skfolio" ], - "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", + "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", "limitations": [ - "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", - "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", - "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", - "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", - "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", - "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", - "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", - "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." + "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", + "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", + "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", + "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." ], - "path": "evidence/receipts/foundation-closure-20260921.json" + "path": "evidence/receipts/catalog-freshness-20260923.json" }, { - "id": "native-quality-defaults-20260920", - "kind": "native_cli_e2e", + "id": "catalog-runtime-review-20260921", + "kind": "native_model_e2e", "component_ids": [ "codex", - "claude-code" + "claude-code", + "dagu" ], - "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", + "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", "limitations": [ - "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", - "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", - "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", - "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", - "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." + "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", + "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", + "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." ], - "path": "evidence/receipts/native-quality-defaults-20260920.json" + "path": "evidence/receipts/catalog-runtime-review-20260921.json" }, { - "id": "native-terminal-profiles-20260920", + "id": "ccusage-20026-qualification-20260927", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "qdrant", - "vllm" + "ccusage" ], - "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", "limitations": [ - "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", - "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", - "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", - "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", - "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." + "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", + "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", + "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", + "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", + "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", + "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", + "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", + "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", + "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", + "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", + "New hosts receive this pin only after the next release tag." ], - "path": "evidence/receipts/native-terminal-profiles-20260920.json" + "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" }, { - "id": "native-claude-profile-20260920", - "kind": "native_cli_e2e", + "id": "claude-advisor-usage-scan-20260928", + "kind": "artifact_measurement", + "component_ids": [ + "claude-code" + ], + "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", + "limitations": [ + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", + "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", + "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", + "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", + "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", + "Whether ccusage or ecosystem-token-report count these entries was not checked." + ], + "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" + }, + { + "id": "claude-foundation-finalization-20260921", + "kind": "native_model_e2e", "component_ids": [ "claude-code", "codex", - "affaan-m/ECC", - "context-mode", - "rtk" + "agent-browser", + "repomix" ], - "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", + "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", "limitations": [ - "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", - "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", - "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", - "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", - "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", - "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", - "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", - "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", - "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." + "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", + "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", + "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", + "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." ], - "path": "evidence/receipts/native-claude-profile-20260920.json" + "path": "evidence/receipts/claude-foundation-finalization-20260921.json" }, { - "id": "native-offhost-restic-20260920", + "id": "claude-host-practice-readback-20260928", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "claude-code", + "claude-hud", + "headroom", + "mcporter", + "jcodemunch-mcp", + "agent-browser", + "qmd" ], - "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", + "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", "limitations": [ - "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", - "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", - "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", - "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", - "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", - "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." + "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", + "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", + "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", + "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", + "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", + "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", + "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." ], - "path": "evidence/receipts/native-offhost-restic-20260920.json" + "path": "evidence/receipts/claude-host-practice-readback-20260928.json" }, { - "id": "native-dagu-retry-tests-20260920", + "id": "claude-hud-0100-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "dagu" + "claude-hud" ], - "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", "limitations": [ - "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", - "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", - "No broker/provider operations or token savings were measured.", - "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" }, { - "id": "native-token-stack-final-20260920", - "kind": "native_model_e2e", + "id": "claude-hud-0100-qualification-20261004", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", + "claude-hud" + ], + "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed claude-hud 0.10.0 from tag v0.10.0 through native Claude plugin commands after an initial marketplace-source mismatch failed. Native marketplace remove/add and plugin install succeeded; plugin list showed version 0.10.0 enabled at user scope. Direct and configured statusline commands rendered a sample payload with exit 0. This is historical plugin and sample-render evidence, not a new interactive terminal session or model run.", + "limitations": [ + "No macOS execution and no upstream test suite run. There are no release assets for this tag; the supported installation remains a native Claude Code plugin, not a tarball bootstrap kind.", + "First marketplace add failed with exit 1 due to the old source entry; native remove/add/install recovered it. Sample statusline rendering does not establish a fresh interactive Claude session or provider usage.", + "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" + }, + { + "id": "claude-max-default-effort-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", + "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", + "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", + "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", + "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", + "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", + "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", + "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." + ], + "path": "evidence/receipts/claude-max-default-effort-20260929.json" + }, + { + "id": "claude-model-effort-probes-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", + "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", + "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", + "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", + "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." + ], + "path": "evidence/receipts/claude-model-effort-probes-20260929.json" + }, + { + "id": "claude-project-effort-flag-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", + "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", + "The Ultracode reminder is an indicator, not proof of workflow orchestration.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." + ], + "path": "evidence/receipts/claude-project-effort-flag-20260929.json" + }, + { + "id": "claude-repository-evidence-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "alpaca-py", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codex", + "codex-for-claude", + "context-hub", "context-mode", - "jcodemunch-mcp", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "duckdb", + "edgartools", + "gitleaks", + "grafana", "headroom", - "rtk", - "opentelemetry-collector-contrib", + "huggingface-hub-native", + "jcodemunch-mcp", + "lean", "loki", - "prometheus" + "markitdown", + "mcp-inspector", + "mcporter", + "nautilus-trader", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "pandas", + "playwright-cli", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shellcheck", + "skfolio", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", + "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", "limitations": [ - "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", - "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", - "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", - "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", - "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", - "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", - "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", - "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." + "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", + "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", + "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", + "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", + "Superseded observations, including the author's own probe and invocation errors, remain recorded." ], - "path": "evidence/receipts/native-token-stack-final-20260920.json" + "path": "evidence/receipts/claude-repository-evidence-20260921.json" }, { - "id": "native-rag", - "path": "evidence/receipts/native-rag.json", + "id": "claude-selective-context-pilot-20260921", "kind": "native_model_e2e", "component_ids": [ - "codex", "claude-code", - "socraticode", - "qdrant", - "vllm", - "huggingface-hub-native" + "context-mode" ], - "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", + "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", "limitations": [ - "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", - "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." - ] + "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", + "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", + "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", + "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", + "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", + "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", + "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", + "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." + ], + "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" }, { - "id": "native-memory", - "path": "evidence/receipts/native-memory.json", - "kind": "native_model_e2e", + "id": "claude-spend-attribution-20260929", + "kind": "artifact_measurement", "component_ids": [ + "claude-code", + "ccusage" + ], + "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", + "limitations": [ + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", + "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", + "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", + "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", + "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", + "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", + "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", + "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", + "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", + "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." + ], + "path": "evidence/receipts/claude-spend-attribution-20260929.json" + }, + { + "id": "claude-spend-window-20261004", + "kind": "artifact_measurement", + "component_ids": [ + "claude-code", + "ccusage", + "context-mode" + ], + "claim": "Retained Claude-only ccusage daily costs rise from $2,823.79 and $2,427.25 on October 1/2 to $5,940.56 on October 3. The supplied executor window comparison reproduces exactly from count-only scanner outputs: IET per 24 h rises 2.121 times, counted call rows 2.419 times, and subagents started 2.824 times, while mean context per call falls from 271,790 to 216,230 tokens. The unfiltered retained session-view export is $12,404.88 and its workflow share is 61.402%; removing 17 rows with pre-10-03 last activity leaves $11,151.92, with coordinator-tree shares 63.296% and 33.787%. These are session-selection views, not spend since 10-03. Net pre-first-call attachment growth excluding UI is about 2.9 KB (0.8K rough tokens), rather than the positive-only 4.3 KB (1.2K) estimate. These are scoped observations, not subscription charges or a quality comparison. Adding the retained advisor-cohort estimate gives 830.270M and 1,777.960M IET per 24 h (2.141 times); all 689 A and 1,209 B advisor iterations in those cohorts used Fable. Fable is $2,092.87, or 35.230% of priced Claude dollars on 10-03. The user subsequently selected an Opus 5.5 advisor.", + "limitations": [ + "API-equivalent prices are not the subscription meter. ccusage leaves claude-sonnet-5-5 unpriced; its dollars therefore do not price every counted Claude model.", + "ccusage days are local time and Prometheus days are UTC. These scopes and the scanner windows must not be summed or equated.", + "Prometheus keeps one week; this retained export starts with the UTC day 2026-09-27 and ends with 2026-10-03.", + "The attr byte shares use unfitted weights, so they show direction only; receipt context shares exclude UI records before normalization.", + "The hook_success records are UI-only and are not counted as context. Pre-first-call attachment sizes are serialized metadata bytes, not exact model input or tokenization.", + "NativeStack only, because NativeStack2604's telemetry has no listener. This scope is the coordinator's stated observation boundary, not a new listener check.", + "10-04 is a partial day. The scanner ends at 14:00Z; no full-day projection is a measured total.", + "This is a re-derivation of retained native outputs and scanner aggregates, not a new provider/model run, an upstream acceptance test, or a quality/savings A/B.", + "window_compare.py includes synthetic zero-usage rows in its call counts and uses per-field maximum deduplication. Its subagent calls-per-file statistic spans each selected file, whereas its call and IET windows filter call timestamps.", + "Window hook text is not retained in the aggregate inputs. Historical hook-text estimates are reported as estimates; current installed carrier and upstream static hook sizes are distinct observations and do not establish historical hook outputs.", + "The unfiltered session export includes pre-10-03 activity: 17 rows worth $1,252.96 have lastActivity before 2026-10-03T04:00Z. The raw and activity-selected shares have different denominators. Filtering lastActivity does not restrict the dates of every token in a session total; neither view is established as spend since 10-03.", + "The reproduction artifact extends the supplied analysis with advisor-cohort rows. Original executor output is unchanged. Its private raw output includes source identifiers; only sanitized aggregates are retained here.", + "Advisor iterations are absent from calls.tsv and retained only as per-file tot values in files.jsonl. Grouping them by file first_ts reproduces the reviewed cohorts, but files can cross window boundaries. Executor-plus-advisor-cohort IET is an estimate with mixed timestamp scopes, not an exact call-window total; advisor iterations have no recorded effort here.", + "IET applies the same coefficients to every model: input 1, cache read 0.1, five-minute and unclassified cache writes 1.25, one-hour cache writes 2, and output 5, with thinking already in output. There is no model-specific base-price multiplier. Advisor aggregates lack cache-write duration splits and weight all cache writes at 1.25. Thus IET model shares and window ratios are relative-index measures, not dollar shares or actual spend ratios; Fable dollars from ccusage remain separate. Historical Fable usage precedes the new Opus advisor decision." + ], + "path": "evidence/receipts/claude-spend-window-20261004.json" + }, + { + "id": "claude-upstream-checks-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "agent-browser", + "agentsview", "ai-memory", + "alertmanager", + "ast-grep", + "beads", + "ccusage", + "claude-code", "codex", - "claude-code" + "codex-for-claude", + "context-mode", + "dagu", + "difftastic", + "gitleaks", + "grafana", + "headroom", + "jcodemunch-mcp", + "lean", + "loki", + "markitdown", + "mcporter", + "nautilus-trader", + "openresearch", + "opentelemetry-collector-contrib", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", + "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", "limitations": [ - "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", - "No historical archive backfill or LLM/embedding consolidation pipeline enabled." - ] + "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", + "Complete originals remain private; public excerpts are bounded and sanitized.", + "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." + ], + "path": "evidence/receipts/claude-upstream-checks-20260921.json" }, { - "id": "native-context-memory", - "path": "evidence/receipts/native-context-memory.json", - "kind": "native_model_e2e", + "id": "codex-01571-qualification-20260926", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", + "limitations": [ + "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", + "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", + "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", + "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", + "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", + "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", + "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", + "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", + "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", + "Linux x86_64 only, one host; nothing here is macOS evidence." + ], + "path": "evidence/receipts/codex-01571-qualification-20260926.json" + }, + { + "id": "codex-01592-qualification-20260930", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", + "limitations": [ + "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", + "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", + "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", + "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", + "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", + "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", + "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", + "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", + "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", + "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", + "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", + "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", + "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", + "Linux x86_64 only, one host; nothing here is macOS evidence." + ], + "path": "evidence/receipts/codex-01592-qualification-20260930.json" + }, + { + "id": "codex-01593-hindsight-native-memory-20261001", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "Fresh native Codex automatic capture and independent recollection from the selected Hindsight bank passed in both headless exec and daemon-backed interactive resume/queue paths.", + "limitations": [ + "Two invented canaries and their record budgets are explicitly synthetic, not project policy, market data or trading acceptance.", + "This is supported native command/API execution with synthetic inputs and independent observation, not an executed upstream Docker or Cargo test suite.", + "Headless exec and daemon-backed TUI are distinct paths; each has its own fresh provider-backed observations below.", + "Knowledge-page search completed but did not contain either canary. Native Hindsight reflect supplied the correct values; page population or cron refresh is not qualified here.", + "Backend seed/survey completion was not established. Native status reported synced=false with active operations; the coordinator separately owns seed-job recovery.", + "Native model token usage excludes Hindsight backend extraction/reflection usage. Backend usage and monetary cost are unknown.", + "No production-quality or token-efficiency comparison is claimed, and no unrelated session or authentication store was read." + ], + "path": "evidence/receipts/codex-01593-hindsight-native-memory-20261001.json" + }, + { + "id": "codex-01593-native-queue-20261001", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "Fresh provider-backed native queue delivery succeeded while the owned daemon-backed thread was idle, while a preceding turn was busy, and after its TUI disconnected and resumed. Three official Hindsight hook definitions were individually trusted through the native UI.", + "limitations": [ + "Synthetic messaging inputs qualify these native operations, not production task quality or the whole ecosystem.", + "No upstream Cargo test suite was run; upstream test sources were reviewed and native commands were exercised.", + "No daemon restart was attempted during live qualification, and no unrelated session was inspected or interrupted.", + "Queue delivery to a concurrently running embedded receiver, cross-family bridge delivery, cross-account isolation, remote hosts, and Hindsight retrieval/retention are outside this receipt.", + "Hindsight capture remained disabled during hook trust. Hook trust is not memory acceptance.", + "Provider monetary cost is unknown. Native usage counters do not establish improvement against another configuration." + ], + "path": "evidence/receipts/codex-01593-native-queue-20261001.json" + }, + { + "id": "codex-desktop-live-20260920", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", "context-mode", + "jcodemunch-mcp", "serena", - "rtk" + "ai-memory", + "socraticode", + "rtk", + "headroom", + "qmd", + "loki", + "prometheus" ], - "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", + "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", "limitations": [ - "Earlier Serena/RTK run uses its original CLI version.", - "PreCompact was not induced; current Desktop catalog is distinct from child native clients." - ] + "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", + "Tools without native savings ledgers remain unavailable, not zero.", + "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", + "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", + "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", + "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", + "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", + "No fresh Prometheus turn sample in the selected window; no three-way observation join." + ], + "path": "evidence/receipts/codex-desktop-live-20260920.json" }, { - "id": "runtime-tools", - "path": "evidence/receipts/runtime-tools.json", + "id": "codex-session-environment-20260920", "kind": "native_cli_e2e", "component_ids": [ - "gitleaks", - "sandbox-runtime" + "codex", + "context-mode", + "jcodemunch-mcp", + "serena", + "ai-memory", + "socraticode" ], - "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", + "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", "limitations": [ - "No claim of full security certification.", - "Sandbox network denial configured but not separately exercised." - ] + "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", + "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", + "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", + "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", + "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", + "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", + "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." + ], + "path": "evidence/receipts/codex-session-environment-20260920.json" }, { - "id": "artifact-reductions", - "path": "evidence/receipts/artifact-reductions.json", + "id": "codex-shell-snapshot-cleanup-20260930", "kind": "artifact_measurement", "component_ids": [ - "rtk", - "socraticode", - "openresearch", - "context-mode" + "codex" ], - "claim": "Recorded exact selected-text reductions, distinct from model usage.", + "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", "limitations": [ - "Lossy selections compare retained text to full-file/paper counterfactuals.", - "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." - ] + "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", + "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", + "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", + "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." + ], + "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" }, { "id": "component-history", @@ -564,61 +837,116 @@ ] }, { - "id": "native-cli-gaps", - "path": "evidence/receipts/native-cli-gaps.json", + "id": "cross-family-review-terminal-lane-20260930", "kind": "native_model_e2e", "component_ids": [ - "qmd", - "codebase-memory-mcp", - "agent-browser" + "codex", + "omniroute", + "claude-code" ], - "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", + "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", "limitations": [ - "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", - "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." - ] + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", + "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", + "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", + "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", + "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", + "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", + "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." + ], + "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" }, { - "id": "worktrunk-list", - "path": "evidence/receipts/worktrunk-list.json", + "id": "current-session-observation-20260920", "kind": "native_cli_e2e", "component_ids": [ - "worktrunk" + "agentsview", + "ai-memory", + "alertmanager", + "ccusage", + "claude-hud", + "context-mode", + "grafana", + "headroom", + "jcodemunch-mcp", + "loki", + "mcporter", + "ntfy", + "opentelemetry-collector-contrib", + "otel-tui", + "prometheus", + "rtk", + "serena", + "socraticode" ], - "claim": "Native wt list enumerated the actual publication worktree set.", + "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", "limitations": [ - "Model-free repository inventory, not multi-agent correctness." - ] + "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", + "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", + "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", + "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", + "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", + "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", + "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", + "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." + ], + "path": "evidence/receipts/current-session-observation-20260920.json" }, { - "id": "desktop-direct-rag", - "kind": "native_model_e2e", + "id": "dashboard-gap-resolution-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "socraticode", - "qdrant", - "vllm", - "ai-memory" + "ai-memory", + "codex", + "claude-code", + "agentsview", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo", + "vllm" ], - "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", + "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", "limitations": [ - "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", - "No whole-task provider usage/savings attribution is claimed." + "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", + "Fresh PreCompact event and active Desktop session end remain unforced.", + "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", + "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", + "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", + "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." ], - "path": "evidence/receipts/desktop-direct-rag.json" + "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" }, { - "id": "vllm-compatibility", - "kind": "compatibility_attempt", + "id": "dashboard-render-e2e-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "vllm", - "socraticode" + "ai-memory", + "qdrant", + "socraticode", + "serena", + "agentsview", + "dagu", + "omniroute", + "agent-browser", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo" ], - "claim": "Latest vLLM0.29.0 native install succeeded but GPU startup failed on WSL; publisher-validated0.25.0 restored and direct retrieval passed.", + "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", "limitations": [ - "This is a host-specific failure, not a claim0.29is universally unusable.", - "The resolver success does not establish GPU/runtime compatibility." + "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", + "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", + "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", + "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", + "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", + "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", + "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." ], - "path": "evidence/receipts/vllm-compatibility.json" + "path": "evidence/receipts/dashboard-render-e2e-20260921.json" }, { "id": "desktop-cli-workflows", @@ -637,72 +965,20 @@ "path": "evidence/receipts/desktop-cli-workflows.json" }, { - "id": "portable-cli-artifacts", - "kind": "native_cli_e2e", - "component_ids": [ - "shellcheck", - "difftastic", - "markitdown", - "ast-grep", - "toon", - "repomix" - ], - "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", - "limitations": [ - "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", - "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." - ], - "path": "evidence/receipts/portable-cli-artifacts.json" - }, - { - "id": "native-observability", - "kind": "native_cli_e2e", - "component_ids": [ - "codex", - "claude-code", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana", - "alertmanager", - "ntfy" - ], - "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", - "limitations": [ - "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", - "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", - "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", - "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", - "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", - "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." - ], - "path": "observability/receipt.json" - }, - { - "id": "native-observability-followup", + "id": "desktop-direct-rag", "kind": "native_model_e2e", "component_ids": [ - "codex", - "context-mode", - "ai-memory", "socraticode", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana" + "qdrant", + "vllm", + "ai-memory" ], - "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", + "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", "limitations": [ - "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", - "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", - "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", - "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", - "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", - "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." + "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", + "No whole-task provider usage/savings attribution is claimed." ], - "path": "observability/followup-receipt.json" + "path": "evidence/receipts/desktop-direct-rag.json" }, { "id": "desktop-restart-acceptance", @@ -730,817 +1006,746 @@ "path": "observability/restart-receipt.json" }, { - "id": "sec-financial-data-20260919", - "kind": "compatibility_attempt", + "id": "env-freshness-wsl-ubuntu-main-20260924", + "kind": "artifact_measurement", "component_ids": [ - "duckdb" + "nautilus-trader", + "alpaca-py", + "duckdb", + "pandas", + "edgartools", + "exchange-calendars", + "vllm" ], - "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", + "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", "limitations": [ - "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", - "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", - "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", - "Current API snapshots do not reconstruct historical point-in-time knowledge.", - "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", - "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." + "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", + "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", + "One host; each PC publishes its own report under the same schema.", + "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." ], - "path": "blueprints/us-equities/financial-data/receipt.json" + "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" }, { - "id": "restic-local-public-reference-20260919", + "id": "exchange-calendars-native-check-20260922", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "exchange-calendars" ], - "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", + "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", "limitations": [ - "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", - "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", - "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", - "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", - "Credential loss recovery requires separately approved secure key escrow." + "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", + "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", + "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", + "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", + "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." ], - "path": "blueprints/us-equities/hosting/backup/receipt.json" + "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" }, { - "id": "native-research-runtime-20260919", - "kind": "native_model_e2e", + "id": "foundation-catalog-ui-20260920", + "kind": "artifact_measurement", "component_ids": [ - "claude-code", - "dagu", - "lean", - "duckdb", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "agent-browser" ], - "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", + "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", "limitations": [ - "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", - "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", - "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", - "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", - "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", - "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", - "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", - "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." + "Source pin/publication URLs pending parent final source commit and regeneration.", + "No provider/broker execution or broad regression rerun performed.", + "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." ], - "path": "blueprints/us-equities/research-runtime/receipt.json" + "path": "evidence/receipts/foundation-catalog-ui-20260920.json" }, { - "path": "blueprints/us-equities/state-recovery/memory/receipt.json", - "id": "ai-memory-native-state-recovery-20260919", + "id": "foundation-closure-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "restic" + "claude-code", + "codex", + "affaan-m/ECC", + "context-mode" ], - "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", + "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", "limitations": [ - "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", - "38 pages table rows include historical versions, not 38 current pages.", - "Native backup excludes raw/, model caches, logs and external native session transcripts.", - "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", - "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", - "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." - ] - }, - { - "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", - "id": "qdrant-native-state-recovery-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "qdrant", - "restic" + "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", + "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", + "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", + "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", + "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", + "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", + "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", + "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." ], - "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", - "limitations": [ - "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", - "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", - "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", - "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", - "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." - ] + "path": "evidence/receipts/foundation-closure-20260921.json" }, { - "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", - "id": "qmd-bm25-retrieval-20260919", - "kind": "native_cli_e2e", + "id": "foundation-convergence-20260921", + "kind": "native_model_e2e", "component_ids": [ - "qmd" + "codex", + "claude-code", + "context-mode", + "rtk", + "headroom", + "toon" ], - "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", + "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", "limitations": [ - "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", - "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", - "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", - "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", - "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", - "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", - "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", - "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", - "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", - "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", - "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." - ] + "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", + "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", + "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", + "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", + "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." + ], + "path": "evidence/receipts/foundation-convergence-20260921.json" }, { - "path": "blueprints/us-equities/convergence-review/receipt.json", - "id": "native-claude-convergence-review-20260919", - "kind": "native_model_e2e", + "id": "foundation-native-20260920", + "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "qmd", + "qdrant", + "vllm", + "socraticode", + "serena", + "context-mode", + "jcodemunch-mcp", + "rtk", + "headroom", + "repomix", + "toon", + "codex", "claude-code", "opentelemetry-collector-contrib", "prometheus", - "loki" + "loki", + "omniroute" ], - "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", + "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", "limitations": [ - "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", - "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", - "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", - "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", - "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", - "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." - ] - }, - { - "path": "blueprints/us-equities/supply-chain/receipt.json", - "id": "syft-sdk-inventory-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "syft" + "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", + "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", + "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", + "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", + "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", + "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", + "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", + "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", + "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." ], - "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", - "limitations": [ - "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", - "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", - "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", - "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", - "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", - "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", - "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", - "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", - "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", - "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." - ] + "path": "evidence/receipts/foundation-native-20260920.json" }, { - "path": "adoption/receipt.json", - "id": "portable-sdk-adoption-20260919", - "kind": "native_cli_e2e", + "id": "foundation-rd-20260921", + "kind": "native_model_e2e", "component_ids": [ + "claude-code", "codex", - "duckdb" + "codex-for-claude", + "qmd" ], - "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", + "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", "limitations": [ - "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", - "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", - "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", - "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", - "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", - "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", - "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." - ] + "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", + "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", + "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", + "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", + "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." + ], + "path": "evidence/receipts/foundation-rd-20260921.json" }, { - "path": "adoption/paired/receipt.json", - "id": "native-paired-adoption-20260919", - "kind": "native_model_e2e", + "id": "full-stack-convergence-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "codex", + "agent-browser", + "agentsview", + "ai-memory", + "ccusage", "claude-code", - "duckdb", + "codex", + "context-mode", "dagu", - "lean", - "opentelemetry-collector-contrib", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "loki", + "omniroute", + "openresearch", "prometheus", - "loki" + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "toon", + "vllm", + "worktrunk" ], - "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", + "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", "limitations": [ - "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", - "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", - "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", - "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", - "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", - "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", - "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", - "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." - ] + "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", + "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", + "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", + "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", + "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", + "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", + "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", + "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." + ], + "path": "evidence/receipts/full-stack-convergence-20260921.json" }, { - "path": "blueprints/us-equities/architecture/receipt.json", - "id": "native-architecture-review-20260919", - "kind": "native_model_e2e", + "id": "github-automation-newpc-20260922", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "claude-code" ], - "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", + "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", "limitations": [ - "The models reviewed supplied evidence and did not independently inspect primary sources. Their critiques are advisory and were adjudicated; agreement does not establish correctness or trading performance.", - "This is a native architecture-review task, not another LEAN/Dagu backtest run, full MCP/RAG acceptance, broker integration, hosted deployment or universal SOTA census.", - "The44,214 combined native reported tokens exclude coordinator and source-research workers. They are usage, not causal tokens saved or a billing measurement across identical tokenizers.", - "Astra cached input is included in input and reasoning output in output. Claude thinking is included in output; duplicate per-model/iteration/stream views are not added again.", - "Native model selection and terminal usage are not independent provider attestation. Full account/session/process identifiers and raw event streams remain private.", - "The offline Alpaca observation detects synthetic field loss only; no client/network/order, valid advanced-order fixture, entitlement or execution adapter was tested.", - "New machines must reproduce their own selected native profile and sign-in; these local WSL receipts do not establish macOS or unattended-host acceptance." - ] + "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", + "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", + "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", + "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", + "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", + "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." + ], + "path": "evidence/receipts/github-automation-newpc-20260922.json" }, { - "path": "blueprints/us-equities/execution-realism/receipt.json", - "id": "native-lean-execution-sensitivity-20260919", + "id": "gitleaks-macos-memory-bound-20260924", "kind": "native_cli_e2e", "component_ids": [ - "lean" + "gitleaks" ], - "claim": "Native LEAN completed three fixed-order historical simulations with distinct upstream fee/slippage assumptions; serialized fill cash reconciles to native rounded summaries and all mounted engine/data input hashes remained unchanged.", + "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", "limitations": [ - "Exact arithmetic over serialized native event values; exported five-decimal fill prices and cent-rounded summaries do not expose all internal precision.", - "Illustrative fees and slippage are assumptions, not calibrated market or Alpaca execution observations.", - "Full-quantity market fills remain assumed; participation, partial fills, impact, latency, queueing, cancellation and broker reconciliation remain unaccepted.", - "Bundled five-day data do not establish PIT/corporate-action/universe quality or investment returns.", - "The normal dotnet build/restore route timed out twice; only the installed native C# compiler route is accepted.", - "Mounted input hashes do not prove every file was read; successful request logs list 13 paths plus possible separately read metadata.", - "No broker connection, account entitlement, deployment, strategy promotion, provider usage or token saving is established." - ] + "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", + "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", + "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", + "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", + "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", + "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", + "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." + ], + "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" }, { - "path": "blueprints/us-equities/point-in-time/receipt.json", - "id": "native-point-in-time-contract-20260919", - "kind": "native_cli_e2e", + "id": "guard-k3-verification-20260930", + "kind": "artifact_measurement", "component_ids": [ - "duckdb" + "claude-code" ], - "claim": "DuckDB 1.5.5 materialized and selected a synthetic temporal snapshot; late revisions, universe state, feed/adjustment scope and pinned snapshot integrity were exercised through native Python SDK/SQL commands.", + "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", "limitations": [ - "Synthetic observations only; no entitled or accepted market dataset, SEC download, vendor API, model or broker call occurred.", - "Availability timestamps and evidence references are declarations, not independently authenticated vendor publication evidence.", - "Local snapshot ingestion time is separate from source publication and original capture time.", - "Scope is realized observations and effective universe state; it does not model every corporate action, event forecast, symbol mapping or delisting history.", - "Hash checks require the caller to retain a trusted manifest digest independently; local file permissions are not immutable storage or off-host recovery." - ] + "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", + "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", + "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", + "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", "limitations": [ - "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", - "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", - "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", - "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", - "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", - "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", - "No broker, trading strategy, actual feed or net token-saving acceptance." - ] + "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", + "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", + "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", + "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", + "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", + "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", + "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", + "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." + ], + "path": "evidence/receipts/headroom-039-qualification-20260925.json" }, { - "id": "native-worker-supervision-20260919", - "path": "blueprints/us-equities/worker-supervision/receipt.json", + "id": "hf-memory-models-20260921", "kind": "native_cli_e2e", "component_ids": [ - "systemd" + "ai-memory", + "socraticode", + "vllm", + "grafana" ], - "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", + "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", "limitations": [ - "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", - "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", - "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", - "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", - "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", - "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", - "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", - "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", - "Hashes bind retained evidence bytes; they do not independently attest the execution.", - "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", - "Configured resource limits were inspected, not saturation-tested." - ] + "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", + "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", + "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", + "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", + "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", + "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." + ], + "path": "evidence/receipts/hf-memory-models-20260921.json" }, { - "id": "native-grand-dashboard-20260919", - "path": "observability/grand-dashboard/receipt.json", + "id": "jcodemunch-1108327-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "grafana", - "loki", - "prometheus", - "dagu" + "jcodemunch-mcp" ], - "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", "limitations": [ - "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", - "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", - "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", - "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", - "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", - "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", - "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", - "Recorded worker/decision state is not a live process registry.", - "No broker execution, exact-once accounting, universal coverage or net token savings.", - "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." - ] + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" }, { - "id": "native-convergence-review-20260919", - "path": "blueprints/us-equities/convergence-program/review-receipt.json", + "id": "local-inference-c2-serving-switch-20260926", "kind": "native_model_e2e", "component_ids": [ - "codex", - "claude-code", - "dagu" + "llama-cpp" ], - "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", "limitations": [ - "Models checked packet/report consistency, not original sources or underlying native artifacts.", - "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", - "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", - "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", - "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", - "Usage belongs to this pair only; not whole-goal consumption or causal savings." - ] - }, - { - "id": "native-historical-leverage-stress-20260919", - "path": "blueprints/us-equities/historical-simulation/receipt.json", - "kind": "native_cli_e2e", - "component_ids": [ - "lean" + "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", + "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", + "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", + "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", + "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", + "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", + "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." ], - "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", - "limitations": [ - "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", - "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", - "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", - "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", - "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", - "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", - "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", - "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", - "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", - "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", - "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", - "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", - "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", - "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", - "No paper/live orders or automatic promotion." - ] + "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" }, { - "id": "native-chronological-controls-20260919", + "id": "login-shell-contract-20260929", "kind": "native_cli_e2e", "component_ids": [ - "skfolio", - "pandas", - "lean" + "claude-code", + "codex" ], - "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", "limitations": [ - "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", - "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", - "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", - "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", - "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", - "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", - "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", - "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", + "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", + "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", + "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", + "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", + "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", + "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", + "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", + "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." ], - "path": "blueprints/us-equities/research-evaluation/receipt.json" + "path": "evidence/receipts/login-shell-contract-20260929.json" }, { - "id": "native-edgartools-catalyst-20260919", + "id": "mac-memory-patch-20260920", + "path": "evidence/receipts/mac-memory-patch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "ai-memory" ], - "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", + "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", "limitations": [ - "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", - "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", - "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", - "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", - "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", - "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", - "Native text/byte counts are not provider token savings.", - "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." - ], - "path": "blueprints/us-equities/catalyst-provenance/receipt.json" + "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", + "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", + "No provider or whole-task token savings measurement." + ] }, { - "id": "native-simulation-research-dashboard-20260919", + "id": "mac-native-application-migration-20260920", "kind": "native_cli_e2e", "component_ids": [ - "grafana", - "loki" + "fastapi", + "postgresql" ], - "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", + "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", "limitations": [ - "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", - "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", - "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", - "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", - "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", - "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", - "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." + "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", + "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", + "No model calls; whole-task provider usage unknown." ], - "path": "blueprints/us-equities/simulation-research/receipt.json" + "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" }, { - "id": "native-sec-access-resolution-20260919", + "id": "mac-native-container-storage-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "apple-container", + "postgresql" ], - "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", + "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", "limitations": [ - "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", - "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", - "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", - "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", - "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", - "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", - "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", - "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." + "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", + "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", + "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", + "Images remain cached; only owned empty failed container, test database container and test volume were removed.", + "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." ], - "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" + "path": "blueprints/convergence-practice/container-storage/receipt.json" }, { - "id": "native-sec-new-host-20260924", + "id": "mac-native-document-ingestion-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "poppler" ], - "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", + "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", "limitations": [ - "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", - "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", - "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", - "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", - "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", - "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", - "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." + "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", + "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", + "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", + "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", + "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." ], - "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", - "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" + "path": "blueprints/convergence-practice/document-ingestion/receipt.json" }, { - "id": "sec-catalyst-dataset-native-20260920", + "id": "markitdown-018-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "markitdown" ], - "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", "limitations": [ - "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", - "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", - "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", - "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", - "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", - "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", - "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", - "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", - "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." + "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", + "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", + "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", + "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", + "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", + "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", + "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", + "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." ], - "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" + "path": "evidence/receipts/markitdown-018-qualification-20260925.json" }, { - "id": "native-corporate-actions-20260920", + "id": "mcp-inspector-280-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "lean" + "mcp-inspector" ], - "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", "limitations": [ - "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", - "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", - "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", - "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", - "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", - "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." + "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", + "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", + "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", + "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", + "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." ], - "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" + "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" }, { - "id": "native-alpaca-historical-20260920", + "id": "mcp-inspector-290-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "lean" + "mcp-inspector" ], - "claim": "Native Alpaca-py0.44.0 GET transport acquired25 AAPL SIP/raw daily bars and2 corporate actions over5 HTTP200 pages. Terminal pagination and private artifacts verified;25 raw closes and both numeric action values match the frozen LEAN probe. Dividend currency and original historical availability remain unestablished.", + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", "limitations": [ - "One retrospective AAPL sample only; no all-equities universe, delisting completeness, intraday mover coverage or original point-in-time availability.", - "Cash amount and split ratio numerically match; missing dividend currency prevents fully qualified cash-unit reconciliation. No holdings, dividend cash posting, total return, financing or strategy performance modeled.", - "Historical SIP response does not establish real-time access, unlimited history, Elite margin/order entitlement or broker execution. No orders or account resets.", - "Five bounded authenticated GET requests; no IEX downgrade, retries after access refusal, paid data or SDK upgrade.", - "Prior LEAN direct probe passed, but its separate upstream NUnit host aborted before executing tests; this wave does not repair or supersede that failure.", - "No new model task or whole-task causal token-savings experiment in this wave." + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "blueprints/us-equities/authenticated-data/native-receipt.json" + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" }, { - "id": "native-security-identity-20260920", + "id": "mcporter-0141-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "duckdb" + "mcporter" ], - "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", "limitations": [ - "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", - "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", - "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", - "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", - "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", - "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", - "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", - "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." + "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", + "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", + "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", + "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", + "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", + "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." ], - "path": "blueprints/us-equities/identity-readiness/native-receipt.json" + "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" }, { - "id": "token-practice-artifacts-20260920", - "kind": "artifact_measurement", + "id": "mcporter-0142-qualification-20261003", + "kind": "compatibility_attempt", "component_ids": [ - "agent-browser", - "ast-grep", - "edgartools", - "markitdown", - "qmd", - "repomix", - "rtk", - "socraticode", - "syft", - "toon" + "mcporter" ], - "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", "limitations": [ - "Counts describe retained original host artifacts. This public aggregate omits the private originals; CI validates aggregate integrity, not an independent recount of those private bytes.", - "Most pairs select or transform information lossily. Shorter output does not establish equivalent answer quality or lower complete task usage.", - "Pairs overlap, including shared HTML sources and retrieval services. Do not sum them or attribute the same difference independently to dependencies.", - "Exact provider savings remain null. Tokenizer counts are not provider billing, subscription savings or causal per-repository effects.", - "The Syft table preserves checked package name/version/type columns while omitting other SBOM metadata; this is a view selection, not equivalent full SBOM content." + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/token-practice-artifacts-20260920.json" + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" }, { - "id": "token-practice-native-pairs-20260920", - "kind": "native_model_e2e", + "id": "mcporter-0142-qualification-20261004", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode" + "mcporter" ], - "claim": "Four native coding trials passed shared visible, hidden and file-scope acceptance gates; one fixed-order Context Mode non-use/explicit-use pair per client produced mixed observed task-usage differences.", + "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed mcporter 0.14.2 and returned version 0.14.2 with exit 0. Registry provenance matched openclaw/mcporter release.yml at v0.14.2, and a scratch npm audit verified 43 registry signatures and 15 attestations. Ad-hoc stdio jcodemunch session statistics and context-mode ctx_stats calls returned exit 0. Configured-daemon calls failed on a stale rendezvous and were not recovered. This receipt republishes sanitized historical host observations, not a new host execution.", "limitations": [ - "One baseline-first pair per client is not randomized, repeated or cache-matched. Native cache warmth and plugin tool availability were not fully controlled.", - "Observed differences are not causal per-repository savings, a whole-stack saving rate or evidence that either model is generally better.", - "Codex cached input and reasoning output are subsets. Claude ordinary input, cache creation, cache reads and output are separate categories; thinking is included in output.", - "Final cumulative session counters are used once. Coordinator, reviewers, audit tooling and report production are outside these four task totals.", - "Billed cost is unknown. Token counts and cached reads do not establish subscription charges or money saved.", - "Private transcripts, session identifiers and commands are not published. Hashes bind retained evidence, not independent attestation of provider execution." + "No macOS execution and no upstream test suite run. The npm tarball hash is artifact evidence and does not pin the transitive dependency tree or rolldown platform binding.", + "Configured-server list/call failures are retained. The stale daemon was not recovered and keep-alive transport acceptance is not claimed; dist/daemon/client.js was recorded byte-identical across 0.14.1 and 0.14.2.", + "npm audit signatures --global failed with EAUDITGLOBAL (exit 1); only the later scratch-project audit succeeded. The ad-hoc MCP statistics are self-reports, not provider counts or savings.", + "The Mac keeps its separately qualified MCPorter 0.13.13 pin until a Mac qualifies 0.14.2. The platform-independent tarball artifact check is not Mac execution or Mac qualification." ], - "path": "evidence/receipts/token-practice-native-pairs-20260920.json" + "path": "evidence/receipts/mcporter-0142-qualification-20261004.json" }, { - "id": "token-practice-coverage-20260920", - "kind": "historical_inventory", + "id": "memory-landscape-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", "ai-memory", - "ast-grep", - "ccusage", - "claude-code", - "claude-hud", - "codebase-memory-mcp", "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "davila7/claude-code-templates", - "difftastic", - "gitleaks", - "headroom", - "huggingface-hub-native", - "markitdown", - "mcp-inspector", - "mcporter", - "openresearch", - "playwright-cli", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "rtk", - "sandbox-runtime", - "serena", - "shanraisshan/claude-code-best-practice", - "shellcheck", - "socraticode", - "toon", - "vllm", - "worktrunk", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana", - "alertmanager", - "ntfy", - "duckdb", - "restic", - "dagu", - "lean", - "syft", - "alpaca-py", - "systemd", - "pandas", - "skfolio", - "edgartools" + "claude-code" ], - "claim": "A dated 52-component audit distinguishes native artifact/task pairs, bounded functionality, current queries, configuration validation, historical-only evidence, host failures and non-executable guidance.", + "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", "limitations": [ - "This historical coverage inventory records the dated audit only; it is not 52 fresh end-to-end passes or new-host acceptance.", - "Seventy captured operations include four retained failed attempts; successful corrections do not erase the initial OTel environment and Dagu environment-filter failures.", - "Two Linux Playwright invocations failed with ENOENT; the Windows installation does not establish Linux availability.", - "Guidance repositories are not executable tools. Current state, backup and cache queries or configuration validation do not prove complete lifecycle behavior.", - "Native RTK, TOON, Context Mode and Headroom counters have different scopes and estimators. They cannot be summed with artifact differences or provider usage.", - "Exact causal per-component provider saving values remain unknown rather than zero." + "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", + "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", + "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", + "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", + "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", + "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", + "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", + "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", + "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." ], - "path": "evidence/receipts/token-practice-coverage-20260920.json" + "path": "evidence/receipts/memory-landscape-20260921.json" }, { - "id": "token-practice-catalog-toon-20260920", - "kind": "artifact_measurement", + "id": "memory-landscape-lifecycle-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "toon" + "ai-memory", + "socraticode", + "qdrant", + "vllm", + "serena", + "qmd", + "codex", + "claude-code" ], - "claim": "A reversible full-catalog TOON conversion had a smaller native heuristic estimate but a larger exact token count than compact JSON; the guard retained compact JSON.", + "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", "limitations": [ - "This is one later artifact comparison, separate from the ten original token-practice pairs. Do not sum it with cumulative native counters or provider usage.", - "Native tokenx estimates and exact o200k_base counts use different estimators and JSON representations; they are not interchangeable savings metrics.", - "The public aggregate omits the private captured output files. Published hashes establish identity, not independent CI recount of the private bytes.", - "Exact provider savings remain unknown. The successful strict round trip establishes data equivalence for this conversion only.", - "Command templates replace host-specific source and output locations with portable placeholders." + "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", + "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", + "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", + "Exact memory session/lifetime savings are not returned and remain null.", + "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." ], - "path": "evidence/receipts/token-practice-catalog-toon-20260920.json" + "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" }, { - "id": "token-practice-native-counters-20260920", - "kind": "historical_inventory", + "id": "memory-lifecycle-probe-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "context-mode", - "headroom", - "rtk", - "toon" + "ai-memory" ], - "claim": "Dated native counter snapshots retain RTK output, the capped Headroom ledger result, per-conversion TOON estimates and three separate Context Mode runtime scopes without treating them as exact provider savings.", + "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", "limitations": [ - "This historical snapshot is a dated report only, not a live dashboard or new-host execution acceptance.", - "RTK counters estimate retained command history and default to 90-day retention; selected-project values are a subset of the global result. Do not add snapshots or assume a forever ledger.", - "Headroom 0.37.0 caps the report at 30 days despite naming a field lifetime; zero ledger calls do not establish zero offline guard use or provider usage.", - "Context Mode uses byte/event heuristics and separate runtime state. Illustrative cost estimates are not bills, and persisted files must not be added to a direct MCP connection snapshot.", - "TOON statistics are tokenx heuristics for one conversion, not a native cumulative ledger. The compact-JSON exact counterexample is represented by the separate catalog receipt and must not be counted twice.", - "Raw private files, host paths, full command outputs and session identifiers are omitted. Sanitized fields and aggregate hashes do not independently attest provider activity." + "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", + "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", + "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", + "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", + "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", + "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." ], - "path": "evidence/receipts/token-practice-native-counters-20260920.json" + "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" }, { - "id": "token-practice-gap-followup-20260920", + "id": "native-ai-memory-maintenance-20260920", + "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "playwright-cli", - "agentsview", - "ccusage", - "claude-hud", - "openresearch", - "codex-for-claude", - "codex" + "ai-memory" ], - "claim": "Six separately scoped follow-ups exercised a pinned Linux browser fixture, a single-session archive query, offline usage parsing, a synthetic HUD renderer, public-paper retrieval and one read-only native bridge backend task.", + "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", "limitations": [ - "These later bounded results do not turn the earlier dated 52-component audit into 52 full end-to-end passes. Individual scopes below remain authoritative.", - "Three failed attempts remain: file-protocol navigation rejection, implicit archive auto-start message failure and archive restart-lock failure. Successful recovery does not erase them.", - "Playwright used an existing Chrome installation and a fixture-only loopback HTTP endpoint. Its Playwright dependencies are alpha builds; no default browser download or arbitrary-site acceptance was tested.", - "The archive was restricted to one explicit project session. Full private transcripts, authentication material and session identifiers are omitted; automatic archive discovery did not pass.", - "HUD acceptance is a synthetic renderer fixture, not a live interactive account display. OpenResearch acceptance is public-paper retrieval, not an agent research workflow or research-quality assessment.", - "The ccusage reports overlap and must not be added. Upstream parser categories and totals are not bills or a matched provider savings comparison. The first date-only query returned an empty window.", - "The bridge trial is additional observed provider usage, not savings. It used one backend task without an outer Claude interaction or matched baseline; cached input is a subset of native input.", - "Tracked source remained unchanged; native MCP startup created untracked metadata. All owned temporary services were stopped. Public aggregate hashes bind retained evidence but do not independently reproduce private logs." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", + "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", + "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", + "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", + "Forward-only migrations may require restoring the retained private backup to downgrade." ], - "path": "evidence/receipts/token-practice-gap-followup-20260920.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-lifecycle-sample-20260920", + "id": "native-alpaca-historical-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "alpaca-py", + "lean" ], - "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", + "claim": "Native Alpaca-py0.44.0 GET transport acquired25 AAPL SIP/raw daily bars and2 corporate actions over5 HTTP200 pages. Terminal pagination and private artifacts verified;25 raw closes and both numeric action values match the frozen LEAN probe. Dividend currency and original historical availability remain unestablished.", "limitations": [ - "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", - "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", - "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", - "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", - "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", - "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." + "One retrospective AAPL sample only; no all-equities universe, delisting completeness, intraday mover coverage or original point-in-time availability.", + "Cash amount and split ratio numerically match; missing dividend currency prevents fully qualified cash-unit reconciliation. No holdings, dividend cash posting, total return, financing or strategy performance modeled.", + "Historical SIP response does not establish real-time access, unlimited history, Elite margin/order entitlement or broker execution. No orders or account resets.", + "Five bounded authenticated GET requests; no IEX downgrade, retries after access refusal, paid data or SDK upgrade.", + "Prior LEAN direct probe passed, but its separate upstream NUnit host aborted before executing tests; this wave does not repair or supersede that failure.", + "No new model task or whole-task causal token-savings experiment in this wave." ], - "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" + "path": "blueprints/us-equities/authenticated-data/native-receipt.json" }, { - "id": "synthetic-catalyst-contract-20260920", + "id": "native-application-delivery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "nextjs", + "react", + "fastapi", + "postgresql" ], - "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", + "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", "limitations": [ - "Protocol thresholds are exploratory choices, not fitted or proven optimal.", - "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", - "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", - "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", - "No provider calls, broker orders, new model turn or net token-savings measurement." + "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", + "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", + "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", + "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", + "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", + "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", + "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", + "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." ], - "path": "blueprints/us-equities/catalyst-experiment/receipt.json" + "path": "blueprints/convergence-practice/application-delivery/receipt.json" }, { - "id": "native-research-efficiency-20260920", + "path": "blueprints/us-equities/architecture/receipt.json", + "id": "native-architecture-review-20260919", "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki" + ], + "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", + "limitations": [ + "The models reviewed supplied evidence and did not independently inspect primary sources. Their critiques are advisory and were adjudicated; agreement does not establish correctness or trading performance.", + "This is a native architecture-review task, not another LEAN/Dagu backtest run, full MCP/RAG acceptance, broker integration, hosted deployment or universal SOTA census.", + "The44,214 combined native reported tokens exclude coordinator and source-research workers. They are usage, not causal tokens saved or a billing measurement across identical tokenizers.", + "Astra cached input is included in input and reasoning output in output. Claude thinking is included in output; duplicate per-model/iteration/stream views are not added again.", + "Native model selection and terminal usage are not independent provider attestation. Full account/session/process identifiers and raw event streams remain private.", + "The offline Alpaca observation detects synthetic field loss only; no client/network/order, valid advanced-order fixture, entitlement or execution adapter was tested.", + "New machines must reproduce their own selected native profile and sign-in; these local WSL receipts do not establish macOS or unattended-host acceptance." + ] + }, + { + "id": "native-catalog-retrieval-20260920", + "kind": "native_cli_e2e", + "component_ids": [ "qmd" ], - "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", + "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", "limitations": [ - "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", - "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", - "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", - "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", - "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", - "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", - "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", - "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", - "Local supervision does not prove provider-side cancellation; no run timed out.", - "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." + "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", + "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", + "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", + "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." ], - "path": "blueprints/us-equities/research-efficiency/native-receipt.json" + "path": "evidence/receipts/native-catalog-retrieval-20260920.json" + }, + { + "id": "native-chronological-controls-20260919", + "kind": "native_cli_e2e", + "component_ids": [ + "skfolio", + "pandas", + "lean" + ], + "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", + "limitations": [ + "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", + "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", + "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", + "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", + "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", + "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", + "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", + "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." + ], + "path": "blueprints/us-equities/research-evaluation/receipt.json" }, { "id": "native-ci-security-20260920", @@ -1572,88 +1777,92 @@ "path": "blueprints/convergence-practice/native-worker/receipt.json" }, { - "id": "upstream-native-tools-20260920", - "path": "evidence/receipts/upstream-native-tools-20260920.json", - "kind": "native_cli_e2e", + "path": "blueprints/us-equities/convergence-review/receipt.json", + "id": "native-claude-convergence-review-20260919", + "kind": "native_model_e2e", "component_ids": [ - "beads", - "skills-ref", - "otel-tui" + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Three supplemental upstream tools installed on the source Linux/WSL host: Beads persisted task claims and dependency transitions, skills-ref validated and rendered a selected skill, and otel-tui ingested and displayed one synthetic loopback trace.", + "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "Bounded native CLI/TUI acceptance on Linux/WSL; no new native Codex or Claude provider task was run for these additions.", - "Beads used one owned Git fixture with embedded Dolt, explicit task scope, skipped agent-instruction generation and skipped hooks. It does not replace ai-memory.", - "skills-ref is upstream's reference/demo implementation; successful portable-format validation does not certify production client extensions or tool semantics.", - "otel-tui received one synthetic local trace; no production or native-provider telemetry session was evaluated and no persistent exporter was installed.", - "None of these three tools exposes a verified cumulative token-savings counter. Exact causal lifetime provider savings remain null.", - "Public command forms substitute portable variables for private host paths; private raw operation logs are not published." + "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", + "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", + "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", + "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", + "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", + "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." + ] + }, + { + "id": "native-claude-hud-interactive-20260920", + "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", + "kind": "compatibility_attempt", + "component_ids": [ + "claude-hud" ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", + "limitations": [ + "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", + "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", + "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." + ] }, { - "id": "native-ai-memory-maintenance-20260920", - "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", + "id": "native-claude-profile-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "claude-code", + "codex", + "affaan-m/ECC", + "context-mode", + "rtk" ], - "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", + "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", - "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", - "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", - "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", - "Forward-only migrations may require restoring the retained private backup to downgrade." + "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", + "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", + "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", + "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", + "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", + "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", + "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", + "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", + "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "evidence/receipts/native-claude-profile-20260920.json" }, { - "id": "native-linux-zizmor-20260920", - "path": "evidence/receipts/native-linux-zizmor-20260920.json", - "kind": "native_cli_e2e", + "id": "native-claude-session-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "zizmor" + "claude-code" ], - "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", + "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", - "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", - "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", - "No provider task was run and zizmor supplies no verified lifetime token-savings counter." + "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", + "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", + "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", + "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "evidence/receipts/native-claude-session-recovery-20260920.json" }, { - "id": "native-dagu-job-recovery-20260920", - "kind": "native_cli_e2e", + "id": "native-cli-gaps", + "path": "evidence/receipts/native-cli-gaps.json", + "kind": "native_model_e2e", "component_ids": [ - "dagu" + "qmd", + "codebase-memory-mcp", + "agent-browser" ], - "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", + "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", "limitations": [ - "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", - "Initial native schema failure and earlier Mac success are retained; no savings comparison." - ], - "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" + "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", + "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." + ] }, { "id": "native-codex-session-recovery-20260920", @@ -1670,708 +1879,845 @@ "path": "evidence/receipts/native-codex-session-recovery-20260920.json" }, { - "id": "native-gpu-patch-20260920", + "id": "native-context-memory", + "path": "evidence/receipts/native-context-memory.json", "kind": "native_model_e2e", "component_ids": [ - "llama-cpp" + "codex", + "claude-code", + "context-mode", + "serena", + "rtk" ], - "claim": "One pinned Qwen3.8-27B Q4_K_M local CUDA partial-offload repair passed independent source review and all12 original planner tests on WSL RTX4090.", + "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", "limitations": [ - "One visible fixture, one trial, configured32GPUlayers; exact layer placement count unavailable at native log verbosity.", - "Generation took179.191seconds near the180second cap. This is not an interactive default or frontier-model comparison.", - "Minimum whole-device sampled freeVRAM8223MiB includes other allocations; not an isolated process-peak benchmark.", - "Native model and archives were downloaded and hash-verified; archive attestations verified. CUDA licensing reviewed for local use, not redistribution.", - "No host recovery, concurrent serving, provider billing or whole-task savings qualification." - ], - "path": "evidence/receipts/native-gpu-patch-20260920.json" + "Earlier Serena/RTK run uses its original CLI version.", + "PreCompact was not induced; current Desktop catalog is distinct from child native clients." + ] }, { - "id": "native-claude-session-recovery-20260920", + "id": "native-convergence-review-20260919", + "path": "blueprints/us-equities/convergence-program/review-receipt.json", "kind": "native_model_e2e", "component_ids": [ - "claude-code" + "codex", + "claude-code", + "dagu" ], - "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", + "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", "limitations": [ - "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", - "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", - "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", - "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." - ], - "path": "evidence/receipts/native-claude-session-recovery-20260920.json" + "Models checked packet/report consistency, not original sources or underlying native artifacts.", + "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", + "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", + "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", + "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", + "Usage belongs to this pair only; not whole-goal consumption or causal savings." + ] }, { - "id": "token-native-retained-functional-20260920", - "path": "evidence/receipts/token-native-retained-functional-20260920.json", + "id": "native-corporate-actions-20260920", "kind": "native_cli_e2e", "component_ids": [ - "context-hub", - "headroom", - "mcp-inspector", - "promptfoo", - "worktrunk" + "lean" ], - "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", + "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", "limitations": [ - "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", - "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", - "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", - "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", - "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", - "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." - ] + "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", + "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", + "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", + "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", + "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", + "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." + ], + "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" }, { - "id": "native-jcodemunch-20260920", - "path": "evidence/receipts/native-jcodemunch-20260920.json", + "id": "native-dagu-job-recovery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "jcodemunch-mcp" + "dagu" ], - "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", + "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", "limitations": [ - "Single bounded code-reading task, not a native provider A/B trial.", - "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", - "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", - "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", - "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", - "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", - "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." - ] + "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", + "Initial native schema failure and earlier Mac success are retained; no savings comparison." + ], + "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" }, { - "id": "native-headroom-mcp-20260920", - "path": "evidence/receipts/native-headroom-mcp-20260920.json", + "id": "native-dagu-retry-tests-20260920", "kind": "native_cli_e2e", "component_ids": [ - "headroom" + "dagu" ], - "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", + "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", "limitations": [ - "Owned synthetic acceptance artifacts demonstrate artifact reduction, not lifetime production or provider-token savings", - "MCP summary is not a lossless replacement of the original; its exact full retrieval consumes the original token count", - "Upstream Headroom CLI has no compress subcommand; on-demand compression/retrieval is exposed through MCP or SDK", - "No automatic agent-traffic interception was configured", - "Global native upstream savings ledger remains0; isolated fixture ledger is not merged into it", - "No new provider task or automatic native-client traffic interception is established by this direct MCP fixture." - ] + "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", + "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", + "No broker/provider operations or token savings were measured.", + "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." + ], + "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" }, { - "id": "native-token-focus-clients-20260920", - "path": "evidence/receipts/native-token-focus-clients-20260920.json", - "kind": "native_model_e2e", + "id": "native-dashboard-access-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "jcodemunch-mcp" + "dagu", + "qdrant", + "agentsview", + "grafana", + "prometheus", + "ntfy", + "agent-browser", + "omniroute" ], - "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", + "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", "limitations": [ - "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", - "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", - "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", - "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", - "Raw private prompts, client streams, account identifiers and host paths are not published." - ] + "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", + "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", + "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", + "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", + "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", + "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", + "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." + ], + "path": "evidence/receipts/native-dashboard-access-20260921.json" }, { - "id": "native-sandbox-network-20260920", - "path": "evidence/receipts/native-sandbox-network-20260920.json", + "id": "native-dashboard-data-20260921", "kind": "native_cli_e2e", "component_ids": [ - "sandbox-runtime" + "ai-memory", + "socraticode", + "qmd", + "qdrant", + "agentsview", + "grafana", + "loki", + "rtk", + "context-mode", + "headroom", + "jcodemunch-mcp", + "promptfoo", + "serena", + "systemd" ], - "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", + "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", "limitations": [ - "HTTP proxy path tested on this Linux/WSL host", - "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", - "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", - "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." - ] + "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", + "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", + "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", + "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", + "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", + "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", + "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", + "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", + "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." + ], + "path": "evidence/receipts/native-dashboard-data-20260921.json" }, { - "id": "native-claude-hud-interactive-20260920", - "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", - "kind": "compatibility_attempt", + "id": "native-edgartools-catalyst-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "claude-hud" + "edgartools" ], - "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", + "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", "limitations": [ - "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", - "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", - "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." - ] + "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", + "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", + "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", + "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", + "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", + "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", + "Native text/byte counts are not provider token savings.", + "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." + ], + "path": "blueprints/us-equities/catalyst-provenance/receipt.json" }, { - "id": "native-application-delivery-20260920", + "id": "native-exact-nanosecond-replay-20260919", + "path": "blueprints/us-equities/nanosecond-replay/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "nextjs", - "react", - "fastapi", - "postgresql" - ], - "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", - "limitations": [ - "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", - "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", - "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", - "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", - "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", - "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", - "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", - "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." + "duckdb", + "pandas" ], - "path": "blueprints/convergence-practice/application-delivery/receipt.json" + "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", + "limitations": [ + "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", + "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", + "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", + "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", + "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", + "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", + "No broker, trading strategy, actual feed or net token-saving acceptance." + ] }, { - "id": "mac-native-document-ingestion-20260920", - "kind": "native_cli_e2e", + "id": "native-gpu-patch-20260920", + "kind": "native_model_e2e", "component_ids": [ - "poppler" + "llama-cpp" ], - "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", + "claim": "One pinned Qwen3.8-27B Q4_K_M local CUDA partial-offload repair passed independent source review and all12 original planner tests on WSL RTX4090.", "limitations": [ - "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", - "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", - "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", - "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", - "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." + "One visible fixture, one trial, configured32GPUlayers; exact layer placement count unavailable at native log verbosity.", + "Generation took179.191seconds near the180second cap. This is not an interactive default or frontier-model comparison.", + "Minimum whole-device sampled freeVRAM8223MiB includes other allocations; not an isolated process-peak benchmark.", + "Native model and archives were downloaded and hash-verified; archive attestations verified. CUDA licensing reviewed for local use, not redistribution.", + "No host recovery, concurrent serving, provider billing or whole-task savings qualification." ], - "path": "blueprints/convergence-practice/document-ingestion/receipt.json" + "path": "evidence/receipts/native-gpu-patch-20260920.json" }, { - "id": "native-wsl-restic-synthetic-20260920", + "id": "native-grand-dashboard-20260919", + "path": "observability/grand-dashboard/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "grafana", + "loki", + "prometheus", + "dagu" ], - "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", + "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", "limitations": [ - "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", - "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", - "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", - "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", - "No token, storage-efficiency or backup performance claim.", - "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", - "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", - "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", - "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", - "Ten offline oracle/guard tests are distinct from the actual native restic commands." - ], - "path": "blueprints/convergence-practice/wsl-restore/receipt.json" + "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", + "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", + "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", + "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", + "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", + "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", + "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", + "Recorded worker/decision state is not a live process registry.", + "No broker execution, exact-once accounting, universal coverage or net token savings.", + "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." + ] }, { - "id": "mac-native-container-storage-20260920", - "kind": "native_cli_e2e", + "id": "native-harness-defaults-20260920", + "kind": "artifact_measurement", "component_ids": [ - "apple-container", - "postgresql" + "codex", + "claude-code" ], - "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", + "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", "limitations": [ - "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", - "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", - "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", - "Images remain cached; only owned empty failed container, test database container and test volume were removed.", - "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." + "Saved instruction bytes are not proof that every future model decision will follow them.", + "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", + "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." ], - "path": "blueprints/convergence-practice/container-storage/receipt.json" + "path": "evidence/receipts/native-harness-defaults-20260920.json" }, { - "id": "mac-native-application-migration-20260920", + "id": "native-headroom-mcp-20260920", + "path": "evidence/receipts/native-headroom-mcp-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "fastapi", - "postgresql" + "headroom" ], - "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", + "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", "limitations": [ - "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", - "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", - "No model calls; whole-task provider usage unknown." - ], - "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" + "Owned synthetic acceptance artifacts demonstrate artifact reduction, not lifetime production or provider-token savings", + "MCP summary is not a lossless replacement of the original; its exact full retrieval consumes the original token count", + "Upstream Headroom CLI has no compress subcommand; on-demand compression/retrieval is exposed through MCP or SDK", + "No automatic agent-traffic interception was configured", + "Global native upstream savings ledger remains0; isolated fixture ledger is not merged into it", + "No new provider task or automatic native-client traffic interception is established by this direct MCP fixture." + ] }, { - "id": "velanext-native-quality-tools-20260920", + "id": "native-historical-leverage-stress-20260919", + "path": "blueprints/us-equities/historical-simulation/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "gitleaks", - "worktrunk" + "lean" ], - "claim": "On VelaNext, exact gitleaks8.30.1 detected one inert test credential and accepted the clean control with redacted reports. Worktrunk0.78.0 created/listed/removed owned worktrees while refusing dirty removal without loss.", + "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", "limitations": [ - "Isolated synthetic Linux/WSL fixtures; no arbitrary repository safety/security certification or Mac acceptance inferred.", - "Original executed runner and attempt retained. Second attempt follows exact-pin/archive/binary/version binding and timeout-evidence hardening;20 offline guards passed on Mac and WSL.", - "GitHub attestation endpoints returned404. Publisher checksum, GitHub archive digest and exact pinned license checks passed; no attestation claim.", - "No accounts, shared services, project hooks or model calls changed by qualification. Global promotion, when performed, is separate host deployment evidence.", - "Whole coordinator/worker provider usage is unknown; no token or monetary savings claim." - ], - "path": "blueprints/convergence-practice/wsl-native-tools/receipt.json" + "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", + "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", + "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", + "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", + "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", + "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", + "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", + "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", + "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", + "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", + "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", + "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", + "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", + "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", + "No paper/live orders or automatic promotion." + ] }, { - "id": "mac-memory-patch-20260920", - "path": "evidence/receipts/mac-memory-patch-20260920.json", + "id": "native-jcodemunch-20260920", + "path": "evidence/receipts/native-jcodemunch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "jcodemunch-mcp" ], - "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", + "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", "limitations": [ - "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", - "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", - "No provider or whole-task token savings measurement." + "Single bounded code-reading task, not a native provider A/B trial.", + "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", + "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", + "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", + "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", + "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", + "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." ] }, { - "path": "evidence/receipts/wsl-application-20260920.json", - "id": "wsl-application-20260920", + "path": "blueprints/us-equities/execution-realism/receipt.json", + "id": "native-lean-execution-sensitivity-20260919", "kind": "native_cli_e2e", "component_ids": [ - "nextjs", - "react", - "fastapi", - "postgresql", - "playwright-test" + "lean" ], - "claim": "Clean isolated WSL runtime restored the same locked application, passed12 API checks, migration reversal, schema/types, production build and real browser flow; exact row/history persisted after PostgreSQL/API/Next restart.", + "claim": "Native LEAN completed three fixed-order historical simulations with distinct upstream fee/slippage assumptions; serialized fill cash reconciles to native rounded summaries and all mounted engine/data input hashes remained unchanged.", "limitations": [ - "Synthetic loopback application; no production deployment, user authentication or another-host acceptance.", - "Official exact Ubuntu packages were extracted task-only with signed metadata/SHA verification; no package scripts or system database changes.", - "Historical application inputs remain frozen; Makelevel/TIME_WAIT recipe fixes were qualified separately with five real make/socket tests on Mac and WSL.", - "No model calls by application commands; whole-task usage remains unknown." + "Exact arithmetic over serialized native event values; exported five-decimal fill prices and cent-rounded summaries do not expose all internal precision.", + "Illustrative fees and slippage are assumptions, not calibrated market or Alpaca execution observations.", + "Full-quantity market fills remain assumed; participation, partial fills, impact, latency, queueing, cancellation and broker reconciliation remain unaccepted.", + "Bundled five-day data do not establish PIT/corporate-action/universe quality or investment returns.", + "The normal dotnet build/restore route timed out twice; only the installed native C# compiler route is accepted.", + "Mounted input hashes do not prove every file was read; successful request logs list 13 paths plus possible separately read metadata.", + "No broker connection, account entitlement, deployment, strategy promotion, provider usage or token saving is established." ] }, { - "id": "wsl-transport-recovery-20260920", + "id": "native-lifecycle-sample-20260920", "kind": "native_cli_e2e", "component_ids": [ - "dagu" + "edgartools", + "duckdb" ], - "claim": "An owned nonmultiplexed SSH client was terminated; fresh reconnect observed the same native Dagu job running with one unchanged checkpoint, then native completion without stop or retry.", + "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", "limitations": [ - "Controlled client termination and a deliberately detached deterministic job; not a real network outage, host restart, model-session recovery or distributed exactly-once guarantee.", - "First harness attempt misclassified native SSH exit255 and stopped the job; its narrower same-run finalizer retry is retained separately from corrected survival acceptance.", - "Original12-test oracle passed before and after; observed owned processes/listener retired; whole-task provider usage remains unknown." + "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", + "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", + "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", + "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", + "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", + "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." ], - "path": "evidence/receipts/wsl-transport-recovery-20260920.json" + "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" }, { - "id": "wsl-document-ingestion-20260920", + "id": "native-linux-zizmor-20260920", + "path": "evidence/receipts/native-linux-zizmor-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "poppler" + "zizmor" ], - "claim": "Native Poppler26.09.0 built in a clean WSL prefix and passed the frozen3-page,24-cell,8-positive/4-absent document protocol; four extraction/retrieval artifacts exactly match Mac output.", + "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", "limitations": [ - "Designed born-digital Latin fixture with explicit table geometry; no OCR, inferred layout, general semantic retrieval or broad upstream corpus qualification.", - "Exact source signature, signed package extraction and native dependency checks preceded execution; failed first public-key lookup remains recorded.", - "No global package/service/client change or model/GPU invocation; whole-task provider usage unknown." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", + "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", + "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", + "No provider task was run and zizmor supplies no verified lifetime token-savings counter." ], - "path": "evidence/receipts/wsl-document-ingestion-20260920.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "wsl-memory-maintenance-20260920", + "id": "native-memory", + "path": "evidence/receipts/native-memory.json", + "kind": "native_model_e2e", + "component_ids": [ + "ai-memory", + "codex", + "claude-code" + ], + "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", + "limitations": [ + "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", + "No historical archive backfill or LLM/embedding consolidation pipeline enabled." + ] + }, + { + "id": "native-memory-lifecycle-20260919", + "path": "blueprints/us-equities/memory-lifecycle/receipt.json", "kind": "native_cli_e2e", "component_ids": [ "ai-memory" ], - "claim": "Official Linux ai-memory2.3.2 passed65 synthetic native checks across exact scope, Unicode/reserved paths, restart, upstream HTTP backup and native restore; four owned processes exited0.", + "claim": "A disposable, network-isolated native ai-memory fixture passed 23 lifecycle/routing checks across 31 MCP calls; exact-path TTL behavior and explicit sweep limits retained.", "limitations": [ - "Isolated fresh synthetic store and39 MCP tool calls; not production activation, native-client integration or prior-version migration.", - "Automatic capture, embeddings, generation, watcher and autowire disabled; no OS-confinement claim.", - "Native backup/restore both exit0; complete private logs retained, fixture model calls0 and whole-task provider usage unknown." - ], - "path": "evidence/receipts/wsl-memory-maintenance-20260920.json" + "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", + "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", + "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", + "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", + "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", + "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", + "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", + "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", + "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", + "Isolated fixture, not the live memory store or all client hooks.", + "TTL is default-search visibility until sweep, not immediate access revocation.", + "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." + ] }, { - "id": "token-practice-confirmation-20260920", - "kind": "historical_inventory", + "id": "native-memory-rag-alignment-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "context-mode", - "headroom", - "jcodemunch-mcp" + "ai-memory", + "socraticode", + "qdrant", + "qmd", + "vllm", + "grafana", + "loki" ], - "claim": "Dated direct upstream counter outputs, current release metadata, independent artifact rechecks and reconciled recorded monitoring support explicit baseline selection without claiming causal lifetime provider savings.", + "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", "limitations": [ - "Historical source-host observations only; not live acceptance on the reader's PC.", - "Upstream retained-history estimates, exact artifact counts and provider consumption are different quantities and must not be summed.", - "Artifact and client rechecks inspected existing retained inputs and streams; no new model task or reinstall was performed in this confirmation.", - "Public native fields are allowlisted unchanged from private outputs; host paths, process identifiers and account details are omitted.", - "Latest monitoring queries returned no matching observations in their six-hour window; this does not mean zero usage or newly confirmed savings.", - "Latest-release equality was checked only for the four selected token tools; accepted specialist compatibility pins are separate." + "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", + "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", + "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", + "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", + "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", + "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", + "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." ], - "path": "evidence/receipts/token-practice-confirmation-20260920.json" + "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" }, { - "id": "native-token-clean-prefix-20260920", + "id": "native-nautilus-ci-20260920", "kind": "native_cli_e2e", "component_ids": [ - "headroom", - "jcodemunch-mcp" + "nautilus-trader" ], - "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", + "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", "limitations": [ - "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", - "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", - "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", - "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", - "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", - "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", - "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", - "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." + "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", + "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", + "Network namespace and available-interface observations are not measured counts of attempted external transports." ], - "path": "evidence/receipts/native-token-clean-prefix-20260920.json" + "path": "evidence/receipts/native-nautilus-ci-20260920.json" }, { - "id": "current-session-observation-20260920", + "id": "native-nautilus-v2-20260920", "kind": "native_cli_e2e", "component_ids": [ - "agentsview", - "ai-memory", - "alertmanager", - "ccusage", - "claude-hud", - "context-mode", - "grafana", - "headroom", - "jcodemunch-mcp", - "loki", - "mcporter", - "ntfy", - "opentelemetry-collector-contrib", - "otel-tui", - "prometheus", - "rtk", - "serena", - "socraticode" + "nautilus-trader" ], - "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", + "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", "limitations": [ - "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", - "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", - "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", - "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", - "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", - "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", - "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", - "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." + "Release candidate, not production/live-capital acceptance.", + "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", + "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", + "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", + "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", + "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", + "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." ], - "path": "evidence/receipts/current-session-observation-20260920.json" + "path": "evidence/receipts/native-nautilus-v2-20260920.json" }, { - "id": "foundation-native-20260920", + "id": "native-observability", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qmd", - "qdrant", - "vllm", - "socraticode", - "serena", - "context-mode", - "jcodemunch-mcp", - "rtk", - "headroom", - "repomix", - "toon", "codex", "claude-code", + "agent-browser", "opentelemetry-collector-contrib", "prometheus", "loki", - "omniroute" + "grafana", + "alertmanager", + "ntfy" ], - "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", + "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", "limitations": [ - "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", - "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", - "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", - "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", - "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", - "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", - "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", - "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", - "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." + "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", + "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", + "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", + "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", + "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", + "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." ], - "path": "evidence/receipts/foundation-native-20260920.json" + "path": "observability/receipt.json" }, { - "id": "codex-session-environment-20260920", - "kind": "native_cli_e2e", + "id": "native-observability-followup", + "kind": "native_model_e2e", "component_ids": [ "codex", "context-mode", - "jcodemunch-mcp", - "serena", "ai-memory", - "socraticode" + "socraticode", + "agent-browser", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "grafana" ], - "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", + "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", "limitations": [ - "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", - "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", - "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", - "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", - "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", - "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", - "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." + "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", + "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", + "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", + "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", + "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", + "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." ], - "path": "evidence/receipts/codex-session-environment-20260920.json" + "path": "observability/followup-receipt.json" }, { - "id": "codex-desktop-live-20260920", + "id": "native-offhost-app-state-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "context-mode", - "jcodemunch-mcp", - "serena", "ai-memory", - "socraticode", - "rtk", - "headroom", - "qmd", - "loki", - "prometheus" + "qdrant", + "restic" ], - "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", + "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", "limitations": [ - "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", - "Tools without native savings ledgers remain unavailable, not zero.", - "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", - "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", - "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", - "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", - "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", - "No fresh Prometheus turn sample in the selected window; no three-way observation join." + "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", + "Sequential native application snapshots do not establish an atomic cross-application transaction.", + "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", + "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", + "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", + "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", + "No model/provider/broker calls or causal token/cost savings measurement." ], - "path": "evidence/receipts/codex-desktop-live-20260920.json" + "path": "evidence/receipts/native-offhost-app-state-20260920.json" }, { - "id": "native-session-defaults-20260920", + "id": "native-offhost-restic-20260920", "kind": "native_cli_e2e", + "component_ids": [ + "restic" + ], + "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", + "limitations": [ + "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", + "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", + "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", + "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", + "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", + "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." + ], + "path": "evidence/receipts/native-offhost-restic-20260920.json" + }, + { + "path": "adoption/paired/receipt.json", + "id": "native-paired-adoption-20260919", + "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", - "ai-memory", - "context-mode", - "rtk", - "qmd" + "duckdb", + "dagu", + "lean", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", + "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", "limitations": [ - "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", - "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", - "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", - "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", - "Claude startup events join four starts to four completions but do not identify individual configured commands.", - "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", - "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." + "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", + "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", + "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", + "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", + "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", + "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", + "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", + "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." + ] + }, + { + "path": "blueprints/us-equities/point-in-time/receipt.json", + "id": "native-point-in-time-contract-20260919", + "kind": "native_cli_e2e", + "component_ids": [ + "duckdb" ], - "path": "evidence/receipts/native-session-defaults-20260920.json" + "claim": "DuckDB 1.5.5 materialized and selected a synthetic temporal snapshot; late revisions, universe state, feed/adjustment scope and pinned snapshot integrity were exercised through native Python SDK/SQL commands.", + "limitations": [ + "Synthetic observations only; no entitled or accepted market dataset, SEC download, vendor API, model or broker call occurred.", + "Availability timestamps and evidence references are declarations, not independently authenticated vendor publication evidence.", + "Local snapshot ingestion time is separate from source publication and original capture time.", + "Scope is realized observations and effective universe state; it does not model every corporate action, event forecast, symbol mapping or delisting history.", + "Hash checks require the caller to retain a trusted manifest digest independently; local file permissions are not immutable storage or off-host recovery." + ] }, { - "id": "native-token-ci-local-20260920", + "id": "native-progress-capacity-20260921", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "loki", + "dagu" ], - "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", + "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", + "No client restart, service restart or physical reboot was performed or verified.", + "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", + "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", + "No live provider inference, account change, new dependency or upstream version change for this repair." ], - "path": "evidence/receipts/native-token-ci-local-20260920.json" + "path": "observability/grand-dashboard/capacity-recovery-20260921.json" }, { - "id": "native-token-ci-github-20260920", + "id": "native-quality-defaults-20260920", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "codex", + "claude-code" ], - "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", + "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", + "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", + "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", + "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", + "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." ], - "path": "evidence/receipts/native-token-ci-github-20260920.json" + "path": "evidence/receipts/native-quality-defaults-20260920.json" }, { - "id": "native-tavily-cli-20260920", - "kind": "native_cli_e2e", + "id": "native-rag", + "path": "evidence/receipts/native-rag.json", + "kind": "native_model_e2e", "component_ids": [ - "tavily-cli", "codex", - "claude-code" + "claude-code", + "socraticode", + "qdrant", + "vllm", + "huggingface-hub-native" ], - "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", + "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", "limitations": [ - "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", - "Claude global skill listing is not a Claude model-turn execution of every skill.", - "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", - "Search/Extract results do not independently establish their source claims or a complete research deliverable.", - "No native lifetime or exact provider-token savings counter is established.", - "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." + "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", + "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." + ] + }, + { + "id": "native-research-efficiency-20260920", + "kind": "native_model_e2e", + "component_ids": [ + "codex", + "claude-code", + "qmd" ], - "path": "evidence/receipts/native-tavily-cli-20260920.json" + "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", + "limitations": [ + "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", + "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", + "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", + "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", + "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", + "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", + "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", + "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", + "Local supervision does not prove provider-side cancellation; no run timed out.", + "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." + ], + "path": "blueprints/us-equities/research-efficiency/native-receipt.json" }, { - "id": "native-nautilus-v2-20260920", - "kind": "native_cli_e2e", + "id": "native-research-runtime-20260919", + "kind": "native_model_e2e", "component_ids": [ - "nautilus-trader" + "claude-code", + "dagu", + "lean", + "duckdb", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", + "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", "limitations": [ - "Release candidate, not production/live-capital acceptance.", - "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", - "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", - "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", - "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", - "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", - "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." + "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", + "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", + "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", + "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", + "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", + "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", + "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", + "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." ], - "path": "evidence/receipts/native-nautilus-v2-20260920.json" + "path": "blueprints/us-equities/research-runtime/receipt.json" }, { - "id": "native-harness-defaults-20260920", - "kind": "artifact_measurement", + "id": "native-returned-results-20260921", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code" + "claude-code", + "rtk", + "context-mode", + "qmd", + "serena", + "ai-memory", + "socraticode", + "qdrant", + "agentsview", + "grafana", + "loki", + "prometheus", + "dagu", + "ntfy", + "omniroute", + "agent-browser", + "promptfoo", + "headroom", + "jcodemunch-mcp" ], - "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", + "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", "limitations": [ - "Saved instruction bytes are not proof that every future model decision will follow them.", - "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", - "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." + "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", + "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", + "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", + "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", + "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", + "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", + "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", + "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", + "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." ], - "path": "evidence/receipts/native-harness-defaults-20260920.json" + "path": "evidence/receipts/native-returned-results-20260921.json" }, { - "id": "native-worker-recovery-20260920", + "id": "native-runtime-role-resolution-20260930", "kind": "native_model_e2e", "component_ids": [ + "omniroute", "claude-code" ], - "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", + "claim": "One host installed separately versioned OpenHands CLI1.16.0/SDK1.50.1 and DeepAgents0.7.21 candidates through native supported interfaces. CLI108 and final SDK184 unchanged upstream tests passed; DeepAgents361 passed with1 expected failure in its separate upstream-lock environment. Actual OmniRoute Sol-Max requests passed one OpenHands native LLM exact-output round-trip and bounded DeepAgents selected-skill/single-specialist research, saved-context repair and fresh-process SQLite continuation. All results are scoped, not a universal framework winner or global default promotion.", "limitations": [ - "One synthetic local fixture and one physical WSL host, not arbitrary application state.", - "Actual native child identities and paths remain private; hashes bind retained streams.", - "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", - "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", - "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", - "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", - "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." + "CLI SDK1.21 Jinja cache hard-codes real user home; strict cache isolation remains held.", + "Final SDK native configuration/tests exercise skills/plugins/MCP/condenser interfaces; production MCP, full Conversation/condenser/provider execution and optional extensions are not qualified by them.", + "Original DeepAgents24-step attempt failed; one changed32-step saved-context repair passed. No arbitrary interrupted-tool replay, OS confinement or comparative winner is qualified.", + "Complete provider billing/backend identity and whole-task token savings remain unknown; cached/reasoning counters are subsets.", + "Native Claude Opus/Max peer timed out180s exit124 without a verdict; later peer turns reached account usage limits. Completed earlier reviews are preserved; no new acknowledgement/approval is claimed.", + "Original full output stays private with exact hashes; public excerpts replace private paths and omit raw conversations, marker values, credentials and flow identifiers.", + "Exact executed sources are archived. Initial whitespace/comment cleanup had identical ASTs; the current worker subsequently adopts native secret-aware serialization after CodeQL, verified by native fixture and fresh saved-state checks. No new provider run is claimed." ], - "path": "evidence/receipts/native-worker-recovery-20260920.json" + "path": "evidence/receipts/native-runtime-role-resolution-20260930.json" }, { - "id": "foundation-catalog-ui-20260920", - "kind": "artifact_measurement", + "id": "native-sandbox-network-20260920", + "path": "evidence/receipts/native-sandbox-network-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "agent-browser" + "sandbox-runtime" ], - "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", + "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", "limitations": [ - "Source pin/publication URLs pending parent final source commit and regeneration.", - "No provider/broker execution or broad regression rerun performed.", - "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." - ], - "path": "evidence/receipts/foundation-catalog-ui-20260920.json" + "HTTP proxy path tested on this Linux/WSL host", + "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", + "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", + "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." + ] }, { - "id": "native-worker-containment-20260920", + "id": "native-sdk-acceptance-20261002", "kind": "native_cli_e2e", "component_ids": [ - "systemd", + "codex", "claude-code" ], - "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", + "claim": "Actual Claude SDK task failed its independent oracle despite successful protocol completion; a separate informed Codex SDK repair passed all four unchanged cases. Unchanged Claude and OpenHands default source suites passed within recorded skip, warning and environment limits.", "limitations": [ - "Deterministic cgroup proof is not successful native child crash/resume acceptance.", - "Earlier same-child continuation still required explicit direct descendant cleanup.", - "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." + "Two different model tasks and source-test suites have different evidence scopes; this is not a model-quality or token-efficiency comparison, global SOTA winner claim or full foundation closure.", + "Claude original useful-task acceptance remains FAILED. Codex passes only the four-case informed repair; its requested model/effort are bound, but resolved model/provider identity and billing cost were not returned.", + "Coordinator observed invocation, native exits and process samples. Independent reviewers checked retained source/artifact/outcome bindings without rerunning; hash equality alone is not execution provenance.", + "Public attachments are declared projections, exact resulting candidates and selected native output. Complete permitted streams remain private; raw conversations, auth/session metadata and personal paths are not published.", + "Claude default source suite has six skips, with five collection identities inferred from source/dependencies. OpenHands retains seven optional ToolShield skips, 12 xfails, 83 warnings, default stress/ACP-live exclusions and a preserved failed environment attempt; exact fetched model-map bytes were not retained.", + "OpenHands is supplemental source-test evidence, not a new adopted stack component. Its FACTS provider task remains unrun in this lane; Codex default source-suite execution remains with its separate owner.", + "Researcher/reviewer roles, resume/recovery, selected MCP, generation permission-negative tests, complete target lifecycle and target token routing remain open. Exact before/after process-name samples do not prove complete descendant cleanup.", + "Historical Claude task binding is CLI2.1.287. Current release2.1.288 reconciliation remains with the configuration owner and cannot retroactively change these captures." ], - "path": "evidence/receipts/native-worker-containment-20260920.json" + "path": "evidence/receipts/native-sdk-acceptance-20261002.json" }, { - "id": "native-nautilus-ci-20260920", + "id": "native-sdk-role-mcp-followup-20261002", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "claude-code" ], - "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", + "claim": "Retained Claude SDK evidence supports minimal inline MCP callback/terminal assertions with synthetic controls and one native deny-rule pair with a disarmed-rule control; the reviewer case completed without a discriminating control, and the researcher case is controlled for missing findings only. Prior researcher failures remain FAIL and complete role qualification remains incomplete.", "limitations": [ - "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", - "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", - "Network namespace and available-interface observations are not measured counts of attempted external transports." + "Retained independent case ACCEPT verdicts are observations, not qualified role acceptance. Reviewer negative grading has no discriminating control; the original researcher FAIL controls missing findings only, not wrong facts/citations or attribution.", + "Synthetic MCP0/1/1 controls discriminate callback presence and terminal success only. The separate native armed0/disarmed1 pair supports one actual deny-rule observation; definition visibility unknown, no can_use_tool callback configured.", + "Earlier query timestamps unknown; deny-pair UTC intervals captured. Counters retain separate scopes; interrupted whole-query usage/cost unknown. No billed-cost or efficiency claim.", + "Selected QMD/Serena, recovery, containment, complete lifecycle and whole-host qualification remain open; process samples are bounded and staging is not managed-upgrade acceptance.", + "Sanitized projections only; private original hashes, failed cases and corrections retained. The projection step ran no new provider/test/control execution and made no shared edits; registration in manifests/evidence.json is separate from that step." ], - "path": "evidence/receipts/native-nautilus-ci-20260920.json" + "path": "evidence/receipts/native-sdk-role-mcp-followup-20261002.json" }, { - "id": "native-catalog-retrieval-20260920", + "id": "native-sec-access-resolution-20260919", "kind": "native_cli_e2e", "component_ids": [ - "qmd" + "edgartools" ], - "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", + "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", "limitations": [ - "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", - "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", - "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", - "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." + "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", + "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", + "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", + "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", + "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", + "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", + "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", + "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." ], - "path": "evidence/receipts/native-catalog-retrieval-20260920.json" + "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" }, { - "id": "native-tavily-session-20260920", + "id": "native-sec-new-host-20260924", "kind": "native_cli_e2e", "component_ids": [ - "tavily-cli" + "edgartools" ], - "claim": "The current Desktop task received eight Tavily skill entries, loaded the Search/Extract skills, ran both upstream commands and extracted the official IBKR adapter prerequisites.", + "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", "limitations": [ - "Host-supplied active-task skill discovery is distinct from the prior fresh native-process probes. Only Search and Extract were exercised in this task.", - "The broad search returned three official IBKR sources but missed the intended Nautilus adapter guide; direct known-URL extraction supplied the needed evidence.", - "Extracted current documentation is a source check, not an executed broker connection or version-pinned adapter behavior.", - "No provider usage, per-skill performance comparison or lifetime token-saving counter is claimed." + "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", + "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", + "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", + "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", + "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", + "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", + "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." ], - "path": "evidence/receipts/native-tavily-session-20260920.json" + "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", + "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" }, { - "id": "native-worker-cgroup-20260920", - "kind": "native_model_e2e", + "id": "native-security-identity-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "systemd" + "alpaca-py", + "duckdb" ], - "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", + "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", "limitations": [ - "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", - "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", - "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", - "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", - "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." + "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", + "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", + "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", + "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", + "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", + "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", + "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", + "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." ], - "path": "evidence/receipts/native-worker-cgroup-20260920.json" + "path": "blueprints/us-equities/identity-readiness/native-receipt.json" }, { "id": "native-service-reboot-20260920", @@ -2393,888 +2739,698 @@ "path": "evidence/receipts/native-service-reboot-20260920.json" }, { - "id": "native-offhost-app-state-20260920", + "id": "native-session-defaults-20260920", "kind": "native_cli_e2e", "component_ids": [ + "codex", + "claude-code", "ai-memory", - "qdrant", - "restic" + "context-mode", + "rtk", + "qmd" ], - "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", + "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", "limitations": [ - "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", - "Sequential native application snapshots do not establish an atomic cross-application transaction.", - "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", - "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", - "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", - "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", - "No model/provider/broker calls or causal token/cost savings measurement." + "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", + "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", + "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", + "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", + "Claude startup events join four starts to four completions but do not identify individual configured commands.", + "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", + "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." ], - "path": "evidence/receipts/native-offhost-app-state-20260920.json" + "path": "evidence/receipts/native-session-defaults-20260920.json" }, { - "id": "native-ultracode-20260921", + "id": "native-simulation-research-dashboard-20260919", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "context-mode" + "grafana", + "loki" ], - "claim": "Claude Code 2.1.278 executed a Fable 5.1/xhigh native Workflow with Sonnet 5/medium and Opus 5/high workers returning results. The same coordinator resumed at high effort and completed a native same-host message round trip, source verification and one-shot idle notification with a separate Sonnet session. Native agent and restored workflow dashboards rendered the completed work.", + "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", "limitations": [ - "Read-only task contracts are not OS isolation; no writing-worker, mid-run cancellation, cross-host or reboot qualification.", - "Initial worker classifications were inaccurate and corrected after independent source review; both worker outputs exceeded their requested word contracts and one schema retry occurred.", - "Native worker identity was observed in child messages; choices are not a comparative quality or token-cost benchmark.", - "Same-host messaging and idle notification only; permission-mismatch behavior, delivery failures, retries and persistent scheduling were not tested.", - "Updated maintenance configuration is not proof of its next timed execution; no new recurring Claude loop was created.", - "Two native success events share cumulative model usage; no causal savings or exhaustive provider-accounting claim.", - "Native PTY rendering and process observations were recorded by the coordinator; message and workflow traces received independent read-only audit. Private raw logs and identifiers remain outside Git." + "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", + "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", + "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", + "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", + "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", + "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", + "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." ], - "path": "evidence/receipts/native-ultracode-20260921.json" + "path": "blueprints/us-equities/simulation-research/receipt.json" }, { - "id": "native-dashboard-access-20260921", + "id": "native-tavily-cli-20260920", "kind": "native_cli_e2e", "component_ids": [ - "dagu", - "qdrant", - "agentsview", - "grafana", - "prometheus", - "ntfy", - "agent-browser", - "omniroute" + "tavily-cli", + "codex", + "claude-code" ], - "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", + "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", "limitations": [ - "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", - "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", - "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", - "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", - "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", - "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", - "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." + "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", + "Claude global skill listing is not a Claude model-turn execution of every skill.", + "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", + "Search/Extract results do not independently establish their source claims or a complete research deliverable.", + "No native lifetime or exact provider-token savings counter is established.", + "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." ], - "path": "evidence/receipts/native-dashboard-access-20260921.json" + "path": "evidence/receipts/native-tavily-cli-20260920.json" }, { - "id": "full-stack-convergence-20260921", + "id": "native-tavily-session-20260920", "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "ccusage", - "claude-code", - "codex", - "context-mode", - "dagu", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "loki", - "omniroute", - "openresearch", - "prometheus", - "qdrant", - "qmd", - "repomix", - "rtk", - "serena", - "socraticode", - "toon", - "vllm", - "worktrunk" + "tavily-cli" ], - "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", + "claim": "The current Desktop task received eight Tavily skill entries, loaded the Search/Extract skills, ran both upstream commands and extracted the official IBKR adapter prerequisites.", "limitations": [ - "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", - "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", - "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", - "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", - "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", - "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", - "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", - "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." + "Host-supplied active-task skill discovery is distinct from the prior fresh native-process probes. Only Search and Extract were exercised in this task.", + "The broad search returned three official IBKR sources but missed the intended Nautilus adapter guide; direct known-URL extraction supplied the needed evidence.", + "Extracted current documentation is a source check, not an executed broker connection or version-pinned adapter behavior.", + "No provider usage, per-skill performance comparison or lifetime token-saving counter is claimed." ], - "path": "evidence/receipts/full-stack-convergence-20260921.json" + "path": "evidence/receipts/native-tavily-session-20260920.json" }, { - "id": "memory-landscape-20260921", + "id": "native-terminal-profiles-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", "codex", - "claude-code" + "claude-code", + "qdrant", + "vllm" ], - "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", + "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", "limitations": [ - "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", - "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", - "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", - "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", - "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", - "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", - "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", - "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", - "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." + "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", + "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", + "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", + "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", + "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." ], - "path": "evidence/receipts/memory-landscape-20260921.json" + "path": "evidence/receipts/native-terminal-profiles-20260920.json" }, { - "id": "memory-landscape-lifecycle-20260921", + "id": "native-token-ci-github-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qdrant", - "vllm", - "serena", + "rtk", "qmd", - "codex", - "claude-code" + "repomix", + "toon" ], - "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", + "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", "limitations": [ - "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", - "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", - "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", - "Exact memory session/lifetime savings are not returned and remain null.", - "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" ], - "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" + "path": "evidence/receipts/native-token-ci-github-20260920.json" }, { - "id": "alpaca-paper-e2e-20260921", + "id": "native-token-ci-local-20260920", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "claude-code" + "rtk", + "qmd", + "repomix", + "toon" ], - "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", + "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", "limitations": [ - "One operational smoke trial, not profitable strategy or continuous trading acceptance.", - "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", - "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" ], - "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" + "path": "evidence/receipts/native-token-ci-local-20260920.json" }, { - "id": "nautilus-equity-replay-20260921", + "id": "native-token-clean-prefix-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "headroom", + "jcodemunch-mcp" ], - "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", + "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", "limitations": [ - "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", - "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", - "SPY/LEAN corporate-action parity and historical universe availability remain separate." + "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", + "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", + "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", + "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", + "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", + "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", + "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", + "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." ], - "path": "evidence/receipts/nautilus-equity-replay-20260921.json" + "path": "evidence/receipts/native-token-clean-prefix-20260920.json" }, { - "id": "foundation-convergence-20260921", + "id": "native-token-focus-clients-20260920", + "path": "evidence/receipts/native-token-focus-clients-20260920.json", "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", "context-mode", - "rtk", - "headroom", - "toon" - ], - "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", - "limitations": [ - "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", - "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", - "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", - "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", - "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." - ], - "path": "evidence/receipts/foundation-convergence-20260921.json" - }, - { - "id": "native-progress-capacity-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "loki", - "dagu" + "jcodemunch-mcp" ], - "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", + "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", "limitations": [ - "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", - "No client restart, service restart or physical reboot was performed or verified.", - "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", - "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", - "No live provider inference, account change, new dependency or upstream version change for this repair." - ], - "path": "observability/grand-dashboard/capacity-recovery-20260921.json" + "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", + "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", + "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", + "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", + "Raw private prompts, client streams, account identifiers and host paths are not published." + ] }, { - "id": "claude-upstream-checks-20260921", - "kind": "native_cli_e2e", + "id": "native-token-stack-final-20260920", + "kind": "native_model_e2e", "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "ast-grep", - "beads", - "ccusage", "claude-code", "codex", - "codex-for-claude", "context-mode", - "dagu", - "difftastic", - "gitleaks", - "grafana", - "headroom", "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcporter", - "nautilus-trader", - "openresearch", - "opentelemetry-collector-contrib", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", + "headroom", "rtk", - "serena", - "socraticode", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "opentelemetry-collector-contrib", + "loki", + "prometheus" ], - "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", + "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", "limitations": [ - "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", - "Complete originals remain private; public excerpts are bounded and sanitized.", - "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." + "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", + "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", + "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", + "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", + "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", + "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", + "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", + "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." ], - "path": "evidence/receipts/claude-upstream-checks-20260921.json" + "path": "evidence/receipts/native-token-stack-final-20260920.json" }, { - "id": "foundation-rd-20260921", - "kind": "native_model_e2e", + "id": "native-ultracode-20260921", + "kind": "native_cli_e2e", "component_ids": [ "claude-code", - "codex", - "codex-for-claude", - "qmd" + "context-mode" ], - "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", + "claim": "Claude Code 2.1.278 executed a Fable 5.1/xhigh native Workflow with Sonnet 5/medium and Opus 5/high workers returning results. The same coordinator resumed at high effort and completed a native same-host message round trip, source verification and one-shot idle notification with a separate Sonnet session. Native agent and restored workflow dashboards rendered the completed work.", "limitations": [ - "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", - "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", - "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", - "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", - "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." + "Read-only task contracts are not OS isolation; no writing-worker, mid-run cancellation, cross-host or reboot qualification.", + "Initial worker classifications were inaccurate and corrected after independent source review; both worker outputs exceeded their requested word contracts and one schema retry occurred.", + "Native worker identity was observed in child messages; choices are not a comparative quality or token-cost benchmark.", + "Same-host messaging and idle notification only; permission-mismatch behavior, delivery failures, retries and persistent scheduling were not tested.", + "Updated maintenance configuration is not proof of its next timed execution; no new recurring Claude loop was created.", + "Two native success events share cumulative model usage; no causal savings or exhaustive provider-accounting claim.", + "Native PTY rendering and process observations were recorded by the coordinator; message and workflow traces received independent read-only audit. Private raw logs and identifiers remain outside Git." ], - "path": "evidence/receipts/foundation-rd-20260921.json" + "path": "evidence/receipts/native-ultracode-20260921.json" }, { - "id": "claude-foundation-finalization-20260921", + "id": "native-worker-cgroup-20260920", "kind": "native_model_e2e", "component_ids": [ "claude-code", - "codex", - "agent-browser", - "repomix" + "systemd" ], - "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", + "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", "limitations": [ - "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", - "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", - "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", - "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." + "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", + "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", + "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", + "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", + "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." ], - "path": "evidence/receipts/claude-foundation-finalization-20260921.json" + "path": "evidence/receipts/native-worker-cgroup-20260920.json" }, { - "id": "adaptive-paper-practice-20260921", + "id": "native-worker-containment-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "claude-code", - "codex" + "systemd", + "claude-code" ], - "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", + "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", "limitations": [ - "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", - "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", - "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", - "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." + "Deterministic cgroup proof is not successful native child crash/resume acceptance.", + "Earlier same-child continuation still required explicit direct descendant cleanup.", + "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." ], - "path": "evidence/receipts/adaptive-paper-practice-20260921.json" + "path": "evidence/receipts/native-worker-containment-20260920.json" }, { - "id": "broad-universe-research-20260921", - "kind": "native_cli_e2e", + "id": "native-worker-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "alpaca-py", - "duckdb", - "claude-code", - "codex" + "claude-code" ], - "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", + "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", "limitations": [ - "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", - "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", - "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", - "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", - "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." + "One synthetic local fixture and one physical WSL host, not arbitrary application state.", + "Actual native child identities and paths remain private; hashes bind retained streams.", + "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", + "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", + "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", + "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", + "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." ], - "path": "evidence/receipts/broad-universe-research-20260921.json" + "path": "evidence/receipts/native-worker-recovery-20260920.json" }, { - "id": "ultracode-token-routing-20260921", + "id": "native-worker-supervision-20260919", + "path": "blueprints/us-equities/worker-supervision/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex" + "systemd" ], - "claim": "Claude Code 2.1.278 native Workflow stages re-routed to lean project agents cut the provider-returned first-request prompt from 42,396 tokens (default child) to 12,164 (named MCP grants behind ToolSearch) and 8,048 (source-scout) on one identical task; eight native review runs, two readiness audits, a builder run and probes plus one Codex cross-family review are retained as sanitized usage receipts; Haiku was not routed after an Opus-verified 9/14 versus 14/14 extraction trial; workflowSizeGuideline moved from small to unrestricted with a task sizing rule.", + "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", "limitations": [ - "First-prompt figures come from one tiny task on one host and model; they bound a fixed spawn cost, not a savings rate.", - "The Haiku judgment rests on one packet and one Opus verifier.", - "The strict accepted envelope status was never returned in the deploying project; the commit gate was fix-and-commit after each review's findings were resolved.", - "Local suites are stubbed or synthetic; provider figures reach the receipts only as sanitized child-usage.mjs output, with raw transcripts outside Git.", - "Codex thread and turn identifiers were redacted from the cross-review record." - ], - "path": "evidence/receipts/ultracode-token-routing-20260921.json" + "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", + "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", + "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", + "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", + "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", + "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", + "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", + "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", + "Hashes bind retained evidence bytes; they do not independently attest the execution.", + "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", + "Configured resource limits were inspected, not saturation-tested." + ] }, { - "id": "portable-claude-native-qualification-20260921", + "id": "native-workflow-graceful-recovery-20260921", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "prometheus" + "claude-code" ], - "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", + "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", "limitations": [ - "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", - "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", - "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", - "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", - "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." + "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", + "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", + "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", + "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." ], - "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" + "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" }, { - "id": "sota-convergence-20260922", - "kind": "historical_inventory", + "id": "native-workflow-writing-comparison-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "apple-container", - "ast-grep", - "beads", - "ccusage", - "claude-code", - "claude-hud", - "codebase-memory-mcp", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "fastapi", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "llama-cpp", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nextjs", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "playwright-cli", - "playwright-test", - "poppler", - "postgresql", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "react", - "repomix", - "restic", - "rtk", - "sandbox-runtime", - "serena", - "shanraisshan/claude-code-best-practice", - "shellcheck", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "claude-code" ], - "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", + "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", "limitations": [ - "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", - "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", - "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", - "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." + "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", + "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", + "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." ], - "path": "evidence/receipts/sota-convergence-20260922.json" + "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" }, { - "id": "claude-repository-evidence-20260921", + "id": "native-wsl-restic-synthetic-20260920", "kind": "native_cli_e2e", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "alpaca-py", - "ast-grep", - "beads", - "ccusage", - "claude-code", - "claude-hud", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "duckdb", - "edgartools", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nautilus-trader", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "pandas", - "playwright-cli", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "restic", - "rtk", - "sandbox-runtime", - "serena", - "shellcheck", - "skfolio", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "restic" ], - "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", + "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", "limitations": [ - "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", - "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", - "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", - "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", - "Superseded observations, including the author's own probe and invocation errors, remain recorded." + "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", + "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", + "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", + "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", + "No token, storage-efficiency or backup performance claim.", + "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", + "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", + "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", + "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", + "Ten offline oracle/guard tests are distinct from the actual native restic commands." ], - "path": "evidence/receipts/claude-repository-evidence-20260921.json" + "path": "blueprints/convergence-practice/wsl-restore/receipt.json" }, { - "id": "github-automation-newpc-20260922", + "id": "nautilus-equity-replay-20260921", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code" + "nautilus-trader" ], - "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", + "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", "limitations": [ - "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", - "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", - "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", - "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", - "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", - "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." + "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", + "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", + "SPY/LEAN corporate-action parity and historical universe availability remain separate." ], - "path": "evidence/receipts/github-automation-newpc-20260922.json" + "path": "evidence/receipts/nautilus-equity-replay-20260921.json" }, { - "id": "exchange-calendars-native-check-20260922", - "kind": "native_cli_e2e", + "id": "new-wsl-embedding-model-20261002", + "kind": "native_model_e2e", "component_ids": [ - "exchange-calendars" + "huggingface-hub-native" ], - "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", + "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02 and 2026-10-03, with the generation model swift-iq3s-s2o-64k resident, the preregistered comparison for the new WSL's embedding model gave the slot to E1: qwen3-embedding:0.6b (Q8_0, Ollama library manifest ac6da0dfba84a81fdbfbaf330198c33cd77c4cdfc53e8bc50eb581914a15621d) on Ollama 0.35.0 as qwen3-embedding-8k (num_ctx 8192). On MTEB 2.22.1's CQADupstackUnixRetrieval (test split: 47,382 documents, 1,072 queries) its nDCG@10 was 0.49827 against 0.41394 for EmbeddingGemma on the same server: E1 minus E2 0.084331, 95% paired bootstrap interval over queries 0.067738 to 0.100656 (10,000 resamples, seed 20260927). Nemotron-3-Embed-1B, which needs a second model server, scored 0.5014; E3 minus E1 was 0.003124 with an interval of -0.012194 to 0.018141 that includes zero, so by the second-server rule it does not take the slot. WeMM-Embedding-2B passed the fit gate but ran out of GPU memory in its full run and is out. The reranking condition was not run.", "limitations": [ - "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", - "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", - "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", - "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", - "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." + "One public retrieval task (CQADupstack Unix: English technical questions from a StackExchange forum), one workstation, one throwaway distribution, one run per arm: a local integration check, not an acceptance on the destination distribution.", + "Nemotron's tie holds for this task only; multilingual retrieval, longer documents and other domains were not measured.", + "The two Ollama arms are GGUF conversions served by the one model server; a difference from the reference weights is a difference of the systems, not of the models alone.", + "E1's and E2's prompts are MTEB's reference prompts as observed with a stub before the runs (amendment 4a): E1 sends the Qwen3 instruction before queries and nothing before documents; E2 sends EmbeddingGemma's query and document prompts.", + "Gate F reads the model server's listing: in window pb2 the card's memory in use fell between steps while the server kept listing the generation model entirely on the GPU, consistent with the Windows driver moving part of it off the card, so E3 passing gate F does not show co-residency. In window pb1 the readings matched the resident models, so E1's co-residency with the generation model is supported by both readings.", + "E4's first error text was lost: after its evaluation failed out of memory, the script's memory query raised the same sticky CUDA error and the outer handler replaced the text; the outcome is not in doubt, because only the evaluation's handler sets out_of_memory.", + "The reranking condition was not run: no installed retrieval owner can call an external reranker (QMD reranks in-process with its bundled model), and zerank-2 (7.49 GiB of weights) cannot be resident beside the generation model on this card.", + "Recorded, not deciding: evaluation time E1 1,166 s, E2 771 s, E3 460 s (E3 in-process, not comparable with the Ollama arms); resident sizes E1 2,857,191,341 bytes and E2 681,417,113 bytes.", + "manifests/stack.json has no Ollama or MTEB component; component_ids name huggingface-hub-native, the native route for the revision-pinned snapshots of E3 and E4, which the measurement downloaded through the huggingface_hub library at MTEB's registered revisions (its version is in the throwaway's freeze list, which was not retained).", + "The 31 MB prediction files and the run records stay private and are listed by sha256 in files.json; the published per-query nDCG@10 files reproduce the decision statistic.", + "With a server-wide context of 64,000 the embedder loaded at its full context and took 5.78 GB (Part A, A1b); the measured system sets the context per model (qwen3-embedding-8k, 8,192 tokens), never server-wide." ], - "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" + "path": "evidence/artifacts/new-wsl-local-models-20261002/part-b-receipt.json" }, { - "id": "adoption-macos-hosted-smoke-20260922", - "kind": "native_cli_e2e", + "id": "new-wsl-local-generation-model-20261002", + "kind": "native_model_e2e", "component_ids": [ "codex", - "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "claude-code" ], - "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", + "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02, the preregistered comparison for the new WSL's local generation model gave the slot to S2o: Swift-1.5-Qwen3.8-27B IQ3_S (ukisai/Swift-1.5-Qwen3.8-27B-GSQ-RCO-GGUF at revision d74895bbe5db4bec1e0024e7cc87d59c02d7631a, file sha256 1333c6ea70ef348d4ac6d62732772e8ad6571ac5b3754c14ed54f1a0d904a786, 11,771,546,912 bytes) on Ollama 0.35.0 as swift-iq3s-s2o-64k (context 64,000). On the same 100 BFCL simple_python cases (inspect-evals 0.23.0 on Inspect AI 0.3.273) through the server's chat and responses surfaces, its first-pass valid tool calls were 200 of 200 against 175 of 200 for the control gpt-oss:20b: difference 0.125, 95% paired bootstrap interval over cases 0.065 to 0.19 (10,000 resamples, seed 20260927), not a tie. Both arms were entirely on the GPU with the embedder resident in the order of use, and both passed 10 of 10 client tasks (Codex 0.160.0 and Claude Code 2.1.287). Bonsai PTQ1_0, Bonsai PQ2_0 and Swift on PrismML's llama.cpp server failed the function gate (0 of 3 runs each: the server skips the Codex client's namespace tool type), and qwen3.8:27b was not entirely on the GPU at 64,000 tokens.", "limitations": [ - "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", - "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", - "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", - "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", - "socraticode is the profile's documented unpinned skip and was not installed." + "One workstation, one throwaway distribution, one run per case and arm: a local integration check of the systems named, not an acceptance on the destination distribution.", + "First-pass tool-call validity on 100 simple public cases (BFCL simple_python) through two interfaces; nothing about coding quality, long tasks, throughput under concurrent requests or behaviour above 64,000 tokens.", + "The Anthropic-style messages surface was not evaluated through the package (Inspect AI 0.3.273 cannot read this thinking model's answer); it was exercised only by Claude Code in the client tasks, which both arms passed.", + "S2o was slower in these runs: 292 and 303 seconds for 100 cases on chat and responses against 100 and 139 for the control, and 43.1 against 108.9 output tokens per second on single long prompts that were not run as a speed comparison.", + "S2o leaves less GPU memory free: 21,579 of 24,564 MiB in use with the embedder resident while Windows applications held about 2,600 MiB; earlier the same day they held up to about 5,900 MiB, at which the same load would leave under one GB. Co-residency on a busier desktop and on the destination distribution is not measured.", + "The Ollama import is this measurement's system, not a route the publisher documents: the library qwen3.8:27b model's renderer, parser, parameters, template and licence lines with the Swift file as FROM. The publisher's own route (llama.cpp's server, here PrismML's fork) failed the function gate for a reason that lies in that server. The quantization's card says its quality tests used a 512-token context.", + "The arm that took the slot was added by the preregistration's extension (amendment 3) after the owner asked for the newest releases; the deciding measurement as the critic named it had two arms (qwen3.8:27b and gpt-oss:20b), the earlier result for gpt-oss:20b is kept as a historical result, and gpt-oss:20b ran A2 as the control under the same rules.", + "Three deviations are recorded (a void first window, the Codex client's model name with its tag, a reused label); none changed a case, a limit, the metric or the rule, and none was decided on an outcome.", + "Recorded, not deciding: the package's own score (S2o 97 and 95 of 100, the control 83 and 83) and the client tasks (10 of 10 for each arm).", + "manifests/stack.json has no Ollama, Inspect AI or PrismML llama.cpp component, so component_ids name the two clients that ran the client tasks (Codex also ran the function gate); they ran at Codex 0.160.0 and Claude Code 2.1.287, not at the stack's recorded 0.159.3 and 2.1.284.", + "Raw model outputs (the Inspect logs, the client run records, the server logs) stay private and are listed by sha256 in files.json; the published per-case validity files carry case ids, verdicts, reasons and timings, and the decision statistic reproduces from them.", + "The Swift file's licence is the publisher's own (Swift Open License v1.0, with the original Qwen parts under Apache-2.0); the Modelfile's LICENSE block is the library model's Apache-2.0 text. Recorded, not judged." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" + "path": "evidence/artifacts/new-wsl-local-models-20261002/part-a-receipt.json" }, { - "id": "catalog-freshness-20260923", - "kind": "upstream_provenance", + "id": "nextjs-1638-qualification-20261001", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "llama-cpp", - "mcp-inspector", - "openresearch", - "skfolio" + "nextjs" ], - "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-10-01, the application-delivery recipe was qualified at Next.js 16.3.8 (tag v16.3.8, commit b0fad0d45eb4c4430fda5eeeb442e8a5af08a5f6, released 2026-09-30T16:13:46Z), whose release notes list seven security advisories, the most severe GHSA-cjq9-62q9-8jv4 (high: server-side request forgery in Image Optimization). The two-file patch (package.json and pnpm-lock.yaml, sha256 570ac44d237b6641a5087fe57b079aaf61dcb781b6496a721b0224dd17ea60d0) changes next, @next/env and the eight @next/swc-* lock entries, every other lock entry byte-identical. With Node v24.21.0 and pnpm 12.4.2 the frozen install, the peer check, the typecheck and the production build each exited 0 (recorded at 16:07:49Z), after a first frozen install at 12:13Z exited 1 with ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION for the ten packages published on 2026-09-30; no exclusion or policy change was made.", "limitations": [ - "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", - "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", - "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", - "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." + "Bounded recipe checks only: make verify with its PostgreSQL, API and browser stages was not run, so the 2026-09-20 receipts still qualify 16.3.5, not 16.3.6 or 16.3.8.", + "The pnpm store, node_modules and build cache were warm from the earlier attempt; no cold-store install is claimed.", + "This recipe's exposure to the seven advisories was not established; the move removes the vulnerable versions from its lock.", + "Labels 15 to 17 are the version prints of Node and pnpm and a git diff check; they are metadata, not acceptance.", + "No new-host install ran: that is unit U10 on the new distribution. Provider usage of the builder is unknown." ], - "path": "evidence/receipts/catalog-freshness-20260923.json" + "path": "evidence/receipts/nextjs-1638-qualification-20261001.json" }, { - "id": "adoption-macos-hosted-smoke-20260923", + "id": "notification-types-20260929", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "claude-code" ], - "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", "limitations": [ - "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", - "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", - "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", - "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." + "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", + "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", + "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", + "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", + "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", + "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", + "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", + "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", + "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" + "path": "evidence/receipts/notification-types-20260929.json" }, { - "id": "wsl-retrieval-20260920", - "kind": "historical_inventory", + "id": "ns2604-e2e-20261004", + "kind": "native_model_e2e", "component_ids": [ - "ast-grep", - "qmd" + "claude-code", + "codex", + "omniroute" ], - "claim": "Incomplete historical WSL fixture reference: selected receipts report 22 source checks/six commands and 70 QMD lexical checks/17 commands. Offline byte and result consistency can be checked, but missing command argv/cwd, unrecovered raw logs and unsupported historical QMD installation prevent native E2E or adoption acceptance.", + "claim": "The historical 2026-10-04 foundation E2E covered 15 units and 80 slots through native executor observations, independent model review and 22 adjudications. Final labels are READY 18, PARTIAL 31, FAIL 2, BY_DESIGN 12 and INTERIM 17, with zero unjudged slots. Readiness is (18 + 12) / 80 = 37.5%, rounded half up to 38%; all 22 executor/reviewer disagreements were adjudicated, with 14 keeping the reviewer's status and 8 taking the executor's. This publication independently checks and sanitizes the retained status chains; it does not repeat host or provider execution. The adjudication prompt as run, claude-opus-5-5 at max effort with evidence-reviewer run records and timestamps, and the separate 33-slot fix list are retained.", "limitations": [ - "Historical reference only; not live verification, native E2E acceptance or adoption evidence. No new host/native/client acceptance follows from these artifacts.", - "Historical command facts omit argv and cwd. Exact raw-log locations are unavailable; no invocation was reconstructed or represented as observed.", - "The unchanged historical install receipt records npm --ignore-scripts --omit=optional. Future installation must use the current supported recipe with NODE_LLAMA_CPP_SKIP_DOWNLOAD=true and required dependency scripts enabled.", - "Both executed runner versions and the initial URI-checker failure are retained byte-for-byte. The future runner adds command provenance capture without changing past evidence.", - "Receipt-reported 22/70 checks and 6/17 commands describe selected local/synthetic fixtures. Five failed-attempt commands remain separate; no upstream-suite, semantic RAG, production, client or service acceptance.", - "Source currency remains September 20; offline completion and review do not refresh releases or native execution. Whole-task provider usage is unknown and no savings claim is made." + "Host state is as of 2026-10-04 19:10\u201320:10Z only; later adjudication and source merge timestamp 2026-10-04T20:26:16Z do not extend that observation window. Publication and repair perform artifact inspection and structural checks in the owned sandbox; they do not repeat native host probes.", + "Fixes are pending. The 33 PARTIAL/FAIL slots after adjudication are not accepted as ready: 25 repository-plan and 8 host fixes (evidence/artifacts/ns2604-e2e-20261004/fixes.json). Four INTERIM token slots (context-supply, command-output, output-compression, code-index) are held for PR #684, which has not merged. The two open token slots have separate fixes: ccusage (FAIL, plan) and statusline (PARTIAL, host).", + "This is not an upstream benchmark. Native executor observations, independent model judgments and adjudication are separate from upstream tests, structural checks, independent host replication and measured quality or token improvement.", + "The 17 INTERIM slots are held by design. They remain in the denominator and contribute zero to the readiness numerator; the 12 BY_DESIGN slots are intentional dispositions rather than proof that their tools executed.", + "Adjudication: claude-opus-5-5 at effort max (evidence-reviewer), prompt template as run in evidence/artifacts/ns2604-e2e-20261004/adjudication-prompt.md. Run wf_8bf450a9-d1e (17 agents) started 2026-10-04T20:06:45Z and completed 2026-10-04T20:20:30Z; run wf_cdbf70a0-02c (5 agents) started 2026-10-04T20:08:29Z and completed 2026-10-04T20:19:31Z.", + "Historical source command excerpts and raw conversations remain private. Public reasons are bounded to 60 words, fixes preserve the merge's 900-character bound before sanitization, and citations are limited to four per slot. Hashes establish byte identity, not success or adequacy of every native acceptance claim.", + "Reviewer records report the requested gateway model cx/gpt-6.1-sol-max and max effort; no resolved backend model identity is inferred. Independent model review is review of retained evidence, not independent execution on the host.", + "The coordinator registers all eight published files in manifests/evidence.json in the PR's final registry-only commit, and full repository validation passes at that head. Per-file scans and local receipt tests are structural evidence only." ], - "path": "evidence/receipts/wsl-retrieval-20260920.json" + "path": "evidence/receipts/ns2604-e2e-20261004.json" }, { - "id": "gitleaks-macos-memory-bound-20260924", - "kind": "native_cli_e2e", + "id": "omniroute-3851-npm-qualification-20260930", + "kind": "compatibility_attempt", "component_ids": [ - "gitleaks" + "omniroute" ], - "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", "limitations": [ - "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", - "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", - "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", - "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", - "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", - "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", - "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." + "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", + "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", + "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", + "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", + "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", + "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", + "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", + "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", + "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." ], - "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" + "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" }, { - "id": "env-freshness-wsl-ubuntu-main-20260924", - "kind": "artifact_measurement", + "id": "omniroute-claude-callsite-20260930", + "kind": "native_model_e2e", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "duckdb", - "pandas", - "edgartools", - "exchange-calendars", - "vllm" + "claude-code", + "codex", + "omniroute" ], - "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", + "claim": "A native Claude Opus5.5/Max coordinator discovered and read the project dispatcher, invoked the official Sol-Max Codex SDK worker through native Bash, and the retained original shows one unchanged fixture test with exit0.", "limitations": [ - "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", - "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", - "One host; each PC publishes its own report under the same schema.", - "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." + "One bounded read-only callsite and existing arithmetic oracle; no universal quality or SDK winner claim.", + "Coordinator tool scope was Bash/Read/Skill for this acceptance; other coordinator tools and optional MCP services are not qualified.", + "Native Claude and external Codex SDK usage remain separate scopes; parent list-price cost is not complete provider billing.", + "The separate Claude SDK Devin bridge remains failed/unqualified; this native Claude-account coordinator run does not promote it.", + "Provider backend identity, overall task usage, failed/interrupted calls, remote cancellation and token savings remain unverified." ], - "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" + "path": "evidence/receipts/omniroute-claude-callsite-20260930.json" }, { - "id": "vllm-030-switch-20260925", + "id": "omniroute-runtime-enhancements-20260930", "kind": "native_model_e2e", "component_ids": [ - "vllm", - "socraticode" + "codex", + "omniroute", + "context-mode", + "serena", + "dagu" ], - "claim": "vLLM 0.30.0 now serves the production Nemotron-3-Embed-1B-BF16 embeddings on the NativeStack WSL2 RTX 4090 host. Qualified first on an owned instance against production 0.25.0 (identical model files, flags and route), then switched by a systemd drop-in that changes only the binary path; the live service returned identical embeddings and identical top-10 code-index results after the switch.", + "claim": "A scoped native Codex SDK Sol-Max worker completed skill use, selected Context Mode/Serena MCP calls, one Astra-Max native judge and an unchanged oracle through OmniRoute in a successful bounded Dagu graph.", "limitations": [ - "One host (NativeStack, RTX 4090, WSL2 Windows driver 616.64) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", - "Retrieval equality covers 8 gate texts and 5 live code-index queries (top-10), not an aggregate retrieval-quality benchmark.", - "0.30.0 relies on its pinned-memory fallback for WSL (PR #56908); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", - "The 0.25.0 prefix is kept for rollback; the base unit still names it and only the drop-in points at 0.30.0." + "One unchanged arithmetic fixture and bounded integration; no universal highest-quality model, framework or SDK ranking.", + "169 enabled skills were visible through native discovery. This run read using-superpowers and exercised three selected MCP calls; it does not qualify every installed skill, tool, language server, plugin or hook.", + "Native hook support and live web search are configured, but their execution is unmeasured here. No scheduler, schedule, hook or global account configuration was installed by this kit.", + "Native parent and child cumulative usage are separate scopes. Cached input and reasoning are subsets; observer response counters corroborate the same usage and must not be added. Failed/interrupted and complete provider usage, billing and token savings remain unknown.", + "Each observed completed stream also has an unclassified flow_error record. Native results completed; transport is not described as error-free, and requested model/provider labels are not backend identity attestation.", + "The separate Claude SDK Devin bridge retains its failed/unqualified status. Earlier native Claude-to-SDK acceptance is a historical separate callsite, not a rerun against this source.", + "The follow-up native Claude cooperation session was stopped after no confirmed SendMessage/final packet; no peer approval or new owner-contact count is claimed.", + "The isolated kit is a scoped private worker configuration. Live owners retain shared worker policy, host-wide catalogs/defaults and dashboard checkpoint ownership." ], - "path": "evidence/receipts/vllm-030-switch-20260925.json" + "path": "evidence/receipts/omniroute-runtime-enhancements-20260930.json" }, { - "id": "rtk-050-qualification-20260925", - "kind": "native_cli_e2e", + "id": "omniroute-runtime-workers-20260930", + "kind": "native_model_e2e", "component_ids": [ - "rtk" + "codex", + "claude-code", + "omniroute" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", + "claim": "The retained official Codex SDK Sol-Max worker passed one upstream coding fixture, native resume and fresh recovery through the selected OmniRoute Responses lane. Interrupted usage and Claude bridge qualification remain unknown/failed.", "limitations": [ - "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", - "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", - "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", - "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", - "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", - "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", - "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." + "One arithmetic fixture and lifecycle acceptance; no universal SDK or model quality ranking.", + "Actual provider trials invoked the SDK from root, rather than through a Claude coordinator. Native project dispatch skill is supplied and structurally checked; its coordinator invocation remains unmeasured.", + "Native Codex SDK remains the incumbent. The separate frozen three-arm SDK gate remains unresolved.", + "Native gateway requested/returned model labels are not backend attestation.", + "All 136 skills are available in the owned project, with two bodies exercised; full role coverage and optional service acceptance remain incomplete.", + "Native Codex repeated in-process fixtures emit stdout/stderr ResourceWarnings; standalone per-invocation child exit is qualified separately.", + "Complete provider usage, spending, remote cancellation and token savings remain unknown.", + "Public record is sanitized selected actual return fields and independent observations; original private returned artifacts remain outside the checkout." ], - "path": "evidence/receipts/rtk-050-qualification-20260925.json" + "path": "evidence/receipts/omniroute-runtime-workers-20260930.json" }, { - "id": "markitdown-018-qualification-20260925", - "kind": "native_cli_e2e", + "id": "omniroute-sdk-worker-0160-20261003", + "kind": "native_model_e2e", "component_ids": [ - "markitdown" + "codex", + "omniroute", + "context-mode" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", + "claim": "The SDK 0.160.0 B3 review candidate addresses all five PR #628 bot findings and passed twelve of twelve twenty-five-test native loopback fixture invocations, 26 local Claude SDK tests, six observer tests and final Ruff checks. Each reported bug has a retained failing-before-repair command and a passing counterpart. B2 metadata preflight and the earlier builder/coordinator live observations remain historical; no B3 live model task ran. Writing dispatch, live keyed-shell/search qualification and backend effort remain unobserved.", "limitations": [ - "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", - "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", - "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", - "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", - "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", - "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", - "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", - "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." + "Authored loopback SSE fixtures, local Claude SDK tests and observer tests are integration/synthetic checks, not unchanged upstream suites or provider-model trials.", + "The pre-B2 builder live task returned the correct data while two native shell attempts failed in its enclosing Codex sandbox and a Context Mode call failed with Transport closed. A separate coordinator, outside a nested Codex sandbox, observed read-only shell success at that candidate. The repaired bytes have no new live-model run; error-free MCP transport and writing (workspace-write) dispatch remain unqualified at 0.160.0.", + "Plugin disabling is the selected native feature gate. Tests observe direct app-server PID termination and absence of clone directories; descendant cleanup and global non-loopback egress are not observed.", + "Metadata preflight submits no inference. No skill was installed in the new private home and no --require-skill was used; inherited/project catalog discovery does not qualify every skill or tool.", + "Requested model/Max effort and live catalog entry are observed; gateway-forwarded effort, backend model identity, complete provider usage, cost, remote cancellation and token savings remain unknown.", + "September 30 receipts and original observations remain historical. This refresh does not rerun the historical coding oracle, Claude callsite, Astra judge, Dagu graph or unchanged upstream SDK suite.", + "Exactly pinned private SDK preflight/PID attributes require review on every pin move. Stable Python SDK and experimental, unsupported-for-production app-server are separate support boundaries.", + "Expected ResourceWarning messages and argparse rejection output remain in private fixture logs. Long-lived SDK pools, alternative approval modes, alternate binary, credential-variable path, workspace-write live execution and scheduled Dagu acceptance remain unqualified.", + "Initial Ruff failure exits are retained from native task returns, but exact full output/timing was not saved. Repository validators prove declared consistency, not the truth of provider or historical claims.", + "Earlier checkout and alternate-index validation failures are retained as before-B2 attempts. The coordinator force-added the project skill to the real index; B2 acceptance uses that actual checkout index. Historical source archive acceptance does not replace current checkout acceptance.", + "If the cleanup bound expires during retained startup or close, cleanup_status is unresolved and the CLI exits nonzero. Continued deferred cleanup is observed only while the embedding event loop remains running; no post-bound standalone cleanup or remote termination guarantee is made.", + "B3 repairs have local regression/configuration acceptance only: no live model tasks, keyed gateway shell trial, standalone search endpoint trial or native Claude connect fault injection. The native SDK retains its own shielded cleanup/transport bounds; wrapper grace does not override them." ], - "path": "evidence/receipts/markitdown-018-qualification-20260925.json" + "path": "evidence/receipts/omniroute-sdk-worker-0160-20261003.json" }, { - "id": "ai-memory-240-qualification-20260925", + "id": "openresearch-0215-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "openresearch" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", - "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", - "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", - "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", - "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", - "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", - "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" }, { - "id": "mcporter-0141-qualification-20260925", + "id": "otelcol-contrib-0162-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "mcporter" + "opentelemetry-collector-contrib" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", "limitations": [ - "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", - "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", - "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", - "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", - "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", - "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" }, { - "id": "ai-memory-241-qualification-20260925", + "id": "playwright-cli-0122-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "playwright-cli" ], - "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", - "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", - "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", - "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", - "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", - "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", - "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" }, { - "id": "headroom-039-qualification-20260925", + "id": "portable-claude-native-qualification-20260921", "kind": "native_cli_e2e", "component_ids": [ - "headroom" + "claude-code", + "codex", + "prometheus" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, headroom-ai 0.39.0 was qualified against the pinned 0.37.0 and not switched; production stays on 0.37.0. Tag v0.39.0 is 66f426171bab32692cf93d2b656a8e4be9004186 and contains d971f7c3 (#3748; compare behind_by 0). Its manylinux_2_28_x86_64 wheel (14,199,952 bytes, sha256 8c7594012ce0dcd28202af471fb1bd08c6f226c8e10fc6a682b3fb233e809a74) matched PyPI JSON, the PyPI simple API and the GitHub release asset, and was installed with uv into the new prefix tools/headroom-ai-0.39.0; 555 of 555 headroom/ RECORD digests match the verified wheel and `headroom --version` printed 'headroom, version 0.39.0'. The unchanged upstream test file tests/test_transforms/test_content_detector_timestamp_search.py (blob 23b66a27) passed 6 of 6 on 0.39.0 and 4 of 6 on 0.37.0. Through `headroom mcp serve --proxy-url http://127.0.0.1:1` over stdio, 0.39.0 listed headroom_compress, headroom_retrieve and headroom_stats; compressed the 600-line ISO-timestamped fixture A 16820 -> 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", + "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", "limitations": [ - "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", - "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", - "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", - "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", - "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", - "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", - "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", - "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." + "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", + "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", + "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", + "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", + "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." ], - "path": "evidence/receipts/headroom-039-qualification-20260925.json" + "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" }, { - "id": "vllm-030-switch-laptop-20260926", - "kind": "native_model_e2e", + "id": "portable-cli-artifacts", + "kind": "native_cli_e2e", "component_ids": [ - "vllm", - "socraticode", - "ai-memory" + "shellcheck", + "difftastic", + "markitdown", + "ast-grep", + "toon", + "repomix" ], - "claim": "vLLM 0.30.0 was qualified on this laptop (WSL2, RTX 5090 Laptop GPU 24GB) as a drop-in candidate for the production Nemotron-3-Embed-1B-BF16 embedder (vLLM 0.25.0), then switched into production by a systemd --user drop-in that changes only the ExecStart binary path and PATH. Of the six qualification gates: (a) gate-text cosine, (c) batch invariance and (e) ai-memory vector reconstruction passed their pass bars; (b) mini-corpus retrieval and (d) live-code-index retrieval met top-10 SET identity on every query and trial (b: 40/40, d: 20/20 query-trials) but failed their strict top-10 ORDER bar in 3 of 4 trials each; (f) latency is report-only, with no pass bar. A prod-vs-prod control run (candidate never started) shows the same order-swap behavior already exists in production alone: gate b had 6 of 50 mismatched query-trials for the candidate (including an earlier, superseded run) against 10 of 80 for production compared with itself; gate d had 3 of 20 against 4 of 40; production against itself even had a worse single trial (6 of 10 identical) than any candidate trial. Gate (c)'s batch-invariance minimum cosine (0.9999562552851937) was bit-for-bit identical between production alone and the candidate, on the same minimizing text. The production switch itself re-checked only 30 gate texts (cosine 0.9999999999999998 before vs after) and confirmed dependents (ai-memory's vector stream, SocratiCode search); it did not re-run a post-switch top-10 retrieval check.", + "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", "limitations": [ - "One host (laptop, RTX 5090 Laptop GPU 24GB, WSL2) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", - "Retrieval equality covers 30 gate texts (a), a 50-paragraph mini-corpus over 10 queries (b), and 5 live code-index queries (d), not an aggregate retrieval-quality benchmark. Gates b and d met top-10 content-SET identity on every query and trial (b: 40/40 query-trials across the 4 recorded trials, plus full set overlap on one earlier superseded run; d: 20/20 query-trials) but did not meet strict top-10 ORDER identity on every trial (that earlier superseded run's own order count was 9 of 10). Counting every recorded run: gate b had 6 of 50 candidate query-trials with an order mismatch against 10 of 80 for a prod-vs-prod control (candidate never started, run twice -- an earlier, superseded control and the current one -- both included since only the second run's own prod_score diagnostic sub-field needed a fix, not its order counts); gate d had 3 of 20 against 4 of 40. Production compared with itself had a worse single trial (6 of 10 identical, i.e. 4 mismatched) than any candidate trial (worst: 7 of 10 identical, 3 mismatched), so this order-swap behavior is pre-existing production batching noise, not attributable to the 0.30.0 upgrade. The swap-gap range is 3.5e-05 to 8.2e-04 across all 23 recorded swaps (candidate run and both control runs combined), far smaller than the ~0.02-0.05 gaps between other adjacent ranks in the same rankings.", - "The reference receipt's own qualification-time number for this style of check (mini_corpus_top10_overlap, '10/10 on each of 10 queries') is a content-SET overlap claim, not a strict-order claim; it does not report whether its own order matched on every query, so gate (b)'s order tracking here is additional detail, not a comparison against a reported order result. The reference receipt's one reported ORDER number (production_switch.code_queries_identical_top10_order, '5/5') comes from its own post-switch production check with 5 live code queries, a different procedure from this run's own gate (d) qualification check (5 queries against the live SocratiCode index, run before any switch); the two are not directly comparable, and this run made no post-switch top-10 check of its own (see production_switch below: only 30 gate texts and a cosine value were re-checked after the switch) -- unlike the reference, which also re-checked 5 code queries' top-10 order after its own switch (that same code_queries_identical_top10_order, '5/5').", - "0.30.0 relies on its pinned-memory fallback for WSL (vllm-project/vllm PR #56908, the same warning the reference receipt's owned instance logged); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", - "The 0.25.0 unit is kept for rollback; only a drop-in override (nemotron-embed-agent-lab.service.d, ExecStart and PATH only) points production at 0.30.0.", - "A diagnostic-only bug in this run's own gate (b) script (prod_scores_by_idx had score and index reversed) made the order_diff_detail[].prod_score sub-field in every candidate-vs-prod gate (b) file (gate_b_result.json and gate_b_trial{1,2,3}.json) and in the first, superseded prod-vs-prod control unreliable; it did not affect any cosine value, top-10 set, or pass/fail boolean -- only that one diagnostic sub-field -- and was fixed before the second, current prod-vs-prod control run. See raw/ERRATUM-gate_b-order_diff_detail-prod_score-bug.txt.", - "results.json's own generated prose has two internal inconsistencies against its own structured fields, corrected in this receipt from the underlying per-trial gate files (raw/gate_b_result.json, gate_b_trial{1,2,3}.json, gate_d_result.json, gate_d_trial{1,2,3}.json): its gate (b) finding text lists strict-order counts as '9, 7, 9 and 10' where the adjacent structured array and the per-file queries_with_identical_order fields agree on '10, 9, 7 and 9' (same four numbers, wrong order in the prose only); its gate (d) finding text says strict order held on '3, 5, 4 and 4' of 5 queries where the adjacent structured array and the per-file queries_identical_count fields agree on '4, 5, 4 and 4'.", - "The laptop's vllm-0.30.0 prefix pre-existed this run (never pip-installed into by this task, per its own instructions), so no direct_url.json or install log exists on this host to independently re-hash its wheel; the pin identity below is the value the workstation's own switch receipt recorded for the same pinned release, reused for cross-host comparison, not independently re-verified here. What IS independently verified on this host: both production (0.25.0) and the candidate (0.30.0) point at the identical, single model directory (same absolute path in both /v1/models responses), and this host's own sha256 of that directory's model.safetensors is recorded below.", - "independent_review: an independent reviewer subagent checked this receipt against the retained raw files (recomputed the reported counts, re-hashed the model file, compared production's before/after flags) and re-ran no gate; that review produced every correction listed above." + "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", + "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." ], - "path": "evidence/receipts/vllm-030-switch-laptop-20260926.json" + "path": "evidence/receipts/portable-cli-artifacts.json" }, { - "id": "codex-01571-qualification-20260926", + "path": "adoption/receipt.json", + "id": "portable-sdk-adoption-20260919", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "codex", + "duckdb" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", + "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", "limitations": [ - "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", - "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", - "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", - "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", - "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", - "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", - "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", - "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", - "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", - "Linux x86_64 only, one host; nothing here is macOS evidence." - ], - "path": "evidence/receipts/codex-01571-qualification-20260926.json" + "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", + "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", + "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", + "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", + "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", + "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", + "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." + ] }, { - "id": "mcp-inspector-280-qualification-20260926", + "id": "portable-userspace-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "mcp-inspector" + "rtk", + "qmd", + "repomix", + "toon", + "codex", + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", + "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", "limitations": [ - "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", - "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", - "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", - "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", - "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." + "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", + "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", + "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", + "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", + "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", + "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", + "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", + "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", + "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." ], - "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" + "path": "evidence/receipts/portable-userspace-install-20260921.json" }, { "id": "prometheus-3150-qualification-20260926", @@ -3297,127 +3453,174 @@ "path": "evidence/receipts/prometheus-3150-qualification-20260926.json" }, { - "id": "tavily-research-qualification-20260926", + "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", + "id": "qdrant-native-state-recovery-20260919", "kind": "native_cli_e2e", "component_ids": [ - "tavily-cli" + "qdrant", + "restic" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", + "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", "limitations": [ - "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", - "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", - "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", - "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", - "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", - "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", - "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", - "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." + "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", + "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", + "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", + "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", + "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." + ] + }, + { + "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", + "id": "qmd-bm25-retrieval-20260919", + "kind": "native_cli_e2e", + "component_ids": [ + "qmd" ], - "path": "evidence/receipts/tavily-research-qualification-20260926.json" + "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", + "limitations": [ + "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", + "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", + "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", + "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", + "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", + "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", + "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", + "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", + "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", + "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", + "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." + ] }, { - "id": "local-inference-c2-serving-switch-20260926", - "kind": "native_model_e2e", + "id": "restic-local-public-reference-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "llama-cpp" + "restic" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", + "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", "limitations": [ - "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", - "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", - "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", - "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", - "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", - "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", - "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." + "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", + "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", + "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", + "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", + "Credential loss recovery requires separately approved secure key escrow." ], - "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" + "path": "blueprints/us-equities/hosting/backup/receipt.json" }, { - "id": "claude-advisor-usage-scan-20260928", - "kind": "artifact_measurement", + "id": "rtk-050-qualification-20260925", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "rtk" ], - "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", - "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", - "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", - "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", - "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", - "Whether ccusage or ecosystem-token-report count these entries was not checked." + "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", + "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", + "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", + "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", + "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", + "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", + "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." ], - "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" + "path": "evidence/receipts/rtk-050-qualification-20260925.json" }, { - "id": "claude-host-practice-readback-20260928", + "id": "rtk-051-qualification-20261004", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "claude-hud", - "headroom", - "mcporter", - "jcodemunch-mcp", - "agent-browser", - "qmd" + "rtk" ], - "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", + "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed rtk 0.51.0 from the checksummed Linux release archive and returned rtk 0.51.0 with exit 0. rtk verify returned 151/151 inline self-tests with exit 0; 24 hook payloads matched 0.50.0 output and exits (16 rewritten, 0 differing), and 26 permission-deny hook decisions matched with no auto-allows. Direct git/proxy calls succeeded and the existing tracking database was read and later updated. This receipt republishes bounded sanitized facts from the historical host records; it is not a new host or model run.", "limitations": [ - "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", - "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", - "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", - "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", - "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", - "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", - "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." + "No macOS execution; the Darwin archive is artifact-checked only. No upstream cargo test suite was run in these records; rtk verify is the native inline self-test, and the 115-test parser run (14 skipped) is local integration.", + "rtk gain, session and cc-economics are tool self-reports, not provider counts, invoice data or causal savings. Cumulative snapshots are not added together.", + "No fresh live-client acceptance or rtk init re-run was recorded. The --shell compatibility review is source-based; the host hook comparison covered only its 24 payloads and 26 deny entries. Existing exact-output exceptions and dated replay gates remain scoped to their original evidence.", + "gh attestation verification returned HTTP 404 (exit 1); no signature verification or source rebuild was recorded. Later upstream fixes and issue #4404 are follow-ups, not included in this stable pin.", + "NativeStack runs AgentsView 0.44.0 ahead of the repository pin. The 2026-09-27 qualification hold stands: synthetic_ccusage_parity failed, fresh_four_native_lanes is blocked, and the v0.44.0 MCP reported zero Codex counters. The recorded recipe rewire and qualification must pass in a separate follow-up before a repository pin move.", + "RTK replay is unavailable at 0.51.0: vendored child-usage.mjs and the test_token_measurement.py/test_skill_usage.py replay gates require exactly rtk 0.50.0. Skipped replay tests are not coverage; the kernel and gates remain unchanged.", + "The repair-round placeholder guard probes allowed the --shell form rtk test --shell sh 'cat ~/.ssh/config' (exit 0), while rtk proxy cat ~/.ssh/config was blocked (exit 2). These strings were guard input only; no credential reader was executed. This finding belongs to PR #685; the guard is unchanged in this pin move.", + "2026-10-04 control correction after PR #693 CI run 37226622626: v0.51.0 intentionally folds grep file lists (feac25d), so the former byte-unchanged grep control is superseded by counted prefix-plus-tail reconstruction of the exact native path set, byte-identical proxy recovery and a CR-filename verbatim guard fixture (3223a80). The diff half is unchanged. The repaired native fixture passes nine checks over 11 cases / 33 arms; this is local integration of the installed Linux CLI, not new host or upstream Cargo-suite acceptance. Agent-facing expansion of folded paths is unmeasured; an E2E observation of a wrong expanded path leads to adding grep -l/-rl to hook exclusions. Sources and retained red-then-green observations: docs/decisions/2026-10-04-rtk-file-list-control.md.", + "2026-10-04 PR #698 follow-up from the pre-rebase review head 45a7218c0 (rebased onto 38ac9aca1; no branch keeps it): the grep inverse now preserves native engine order, and a CR-free explicit-operand t6c sibling proves that the same grep -l shape folds without the 3223a80 guard signal. Native distinctness and the CR-case LF record count have isolating rejection controls with separate predicate-deletion red runs and restored green runs. The installed Linux CLI passes ten checks across 12 cases / 36 arms / 76 fixture commands plus one version command. Historical shell_sites line 1477 is retained; a dated appended entry corrects the direct-argv locator. Minimal sanitized original red/green outputs from job 035 and new job 042 outputs are retained under evidence/artifacts/rtk-051-file-list-control-20261004/ (README.md and native-controls.json), with the dated decision at docs/decisions/2026-10-04-rtk-file-list-control.md. This is local integration, not a WSL rerun, upstream Cargo-suite, new-host or native-model acceptance; model interpretation remains unmeasured." ], - "path": "evidence/receipts/claude-host-practice-readback-20260928.json" + "path": "evidence/receipts/rtk-051-qualification-20261004.json" }, { - "id": "socraticode-1150-qualification-20260927", + "id": "runtime-sdk-20261003", + "kind": "compatibility_attempt", + "component_ids": [ + "codex" + ], + "claim": "Retained coordinator results for the same-host Codex SDK/CLI 0.160.0 pair report strict-hash installation, matching bundled/npm-platform binaries and completed native-account SDK, gateway SDK and gateway CLI marker canaries. Sanitized outputs, native CLI usage, scripts, hashes, mtimes and discriminating replay controls are now retained; missing original SDK invocation/source and process start/end evidence limit this to a compatibility attempt. The separate A4 record adds fail-closed Linux package-resolution/executable-tree repairs, offline integration controls and a fresh isolated bootstrap of the shipped Codex pin; it does not upgrade the SDK/gateway canary evidence class.", + "limitations": [ + "Existing-host compatibility observations and completed marker canaries only; incomplete original command/timing provenance prevents native_cli_e2e acceptance. Not new-host or model-quality acceptance.", + "Gateway backend model and effort were not read from the call log; configured/requested routes and efforts do not prove backend selection.", + "The shared host launcher, daemon and production prefix still run 0.159.3 until a separate coordinated switch.", + "The 0.159.3 queue, Hindsight and October 1 SDK receipts retain their original scope; they do not qualify 0.160.0.", + "Sanitized native canary stdout/stderr, CLI events/last message and their hashes are retained. SDK caller exit codes 0 are coordinator-verified, not fields in the supplied facts. Gateway backend billed usage and monetary cost remain unrecorded.", + "Original process start/end times and SDK outer executable/cwd are unrecorded. Source mtimes are filesystem observations only. The native heredoc is reconstructed from facts and the retained gateway example, not attested as the original source.", + "SDK last and total usage snapshots match for each canary and must be counted once; cached input and reasoning output are subsets, not additional tokens.", + "No unchanged upstream test suite, shared daemon restart, whole-system cleanup/recovery acceptance, package signature or provenance attestation verification is recorded here. The separate A4 bootstrap record retains local migration/publication fault injection and an isolated native installation.", + "The move is inside the seven-day cooldown recorded in docs/decisions/2026-09-25-workstation-sota-refresh.md, as the prior 0.159.2 and 0.159.3 moves were (docs/decisions/2026-09-27-model-currency.md).", + "This repository change records existing coordinator qualification; it performs no new model run or shared-host switch.", + "The CLI script prints the inner Codex exit but does not propagate it as its own final shell exit; the recorded inner exit 0 is supported by the coordinator facts and completed native events." + ], + "path": "evidence/receipts/runtime-sdk-20261003.json" + }, + { + "id": "runtime-tools", + "path": "evidence/receipts/runtime-tools.json", "kind": "native_cli_e2e", "component_ids": [ - "socraticode" + "gitleaks", + "sandbox-runtime" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", + "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", "limitations": [ - "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", - "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", - "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", - "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", - "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", - "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", - "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", - "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", - "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", - "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", - "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." + "No claim of full security certification.", + "Sandbox network denial configured but not separately exercised." + ] + }, + { + "id": "sec-catalyst-dataset-native-20260920", + "kind": "native_cli_e2e", + "component_ids": [ + "edgartools", + "duckdb" + ], + "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", + "limitations": [ + "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", + "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", + "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", + "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", + "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", + "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", + "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", + "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", + "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." ], - "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" + "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" }, { - "id": "ccusage-20026-qualification-20260927", - "kind": "native_cli_e2e", + "id": "sec-financial-data-20260919", + "kind": "compatibility_attempt", "component_ids": [ - "ccusage" + "duckdb" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", + "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", "limitations": [ - "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", - "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", - "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", - "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", - "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", - "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", - "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", - "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", - "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", - "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", - "New hosts receive this pin only after the next release tag." + "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", + "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", + "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", + "Current API snapshots do not reconstruct historical point-in-time knowledge.", + "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", + "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." ], - "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" + "path": "blueprints/us-equities/financial-data/receipt.json" }, { "id": "skills-listing-restore-20260928", @@ -3463,104 +3666,27 @@ "path": "evidence/receipts/skills-m4-host-removal-20260928.json" }, { - "id": "claude-model-effort-probes-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", - "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", - "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", - "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", - "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." - ], - "path": "evidence/receipts/claude-model-effort-probes-20260929.json" - }, - { - "id": "claude-max-default-effort-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", - "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", - "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", - "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", - "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", - "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", - "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", - "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." - ], - "path": "evidence/receipts/claude-max-default-effort-20260929.json" - }, - { - "id": "claude-project-effort-flag-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", - "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", - "The Ultracode reminder is an indicator, not proof of workflow orchestration.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." - ], - "path": "evidence/receipts/claude-project-effort-flag-20260929.json" - }, - { - "id": "claude-spend-attribution-20260929", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code", - "ccusage" - ], - "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", - "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", - "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", - "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", - "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", - "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", - "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", - "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", - "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", - "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", - "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." - ], - "path": "evidence/receipts/claude-spend-attribution-20260929.json" - }, - { - "id": "wsl-terminal-defaults-20260929", + "id": "socraticode-1150-qualification-20260927", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex" + "socraticode" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, and 2.1.283 in a second distro; Codex 0.157.1; bash 5.2.21; Windows Terminal 1.24.11911.0) the repository now carries the terminal defaults that had been set by hand on the host. Merging the linux-wsl2 Claude Code overlay into the live settings with the repository's merge tool changed nothing (the merge equalled the live file), exactly one Notification group holds the bell command, and its matcher equals the overlay's (the acceptance script checks the matcher because the merge alone cannot see it). The rendered Codex template loads under `codex --strict-config` (the run stops at authentication, never at configuration); a wrong type for `[tui] notifications` and an unknown top-level key are refused, and an unknown key inside `[tui]` is not. The static `adoption_status.py --login-shell` model agreed with the real bash login search in all 512 combinations of three startup files over eight states, a FIFO made bash block (the model calls it unusable and unread), and a control that takes an empty file as absent disagreed in 26. In the second distro, the two per-project Claude profiles of the Windows Terminal settings dropped `suppressApplicationTitle` and gained the quiet bell, the audible-and-taskbar bell style and `COLORTERM` through the profile environment key, with every other profile and setting unchanged; the overlay merged into that distro's Claude settings changed only `$schema`, `hooks` and `preferredNotifChannel`, and its installed hook command printed exactly one BEL. The host practice repository's terminal-profile check now scans the live settings file and passed with 0 findings (the pre-change settings file fails it with 8 findings on the two per-project profiles), and its 22 single-defect controls each failed for exactly their rule.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro plus one second distro (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own evidence, and none of the new files is in the pinned release: a new host gets them only after a release carries them and the manifest is re-pinned.", - "No Windows Terminal tab was opened or measured after the second distro's profile change, and no session of that distro was started or observed after its overlay. Claude Code applies edits to `hooks` to a running session without a restart (settings reference, \"When edits take effect\"), so open sessions there should pick the overlay up; that was not observed, and an audible or taskbar bell for the alert path was not observed by the user in this work.", - "The profile example was checked as JSON against the policy. It declares no `guid`, so Windows Terminal derives a stable one from the folder and profile names (read in its source at the installed tag); it was not loaded into Windows Terminal or installed on any host. The host's deployed fragment is the practice repository's own file.", - "The `--login-shell` check reads file metadata only and models bash's login search from the source of bash 5.3 (shell.c execute_profile_file, builtins/evalfile.c) and the installed 5.2.21 on Linux; it does not run a login shell, read a startup file (so a non-empty file's hand-off is unknown, reported as null), or cover /etc/profile, ~/.bashrc, another shell, --noprofile, POSIX mode, an sh-mode login or macOS's bash 3.2. A special file is reported unusable: bash reads a device as empty and blocks on a FIFO, and both end the search; an unusable ~/.profile is reached but not read, so profile_read is false; HOME is the environment's, else the passwd entry's, else \"/\", the way bash falls back.", - "The Codex acceptance is a configuration load: no Codex notification was produced in this work, `async-question` does not exist at the macOS pin's tag (inert there) and Codex 0.155.1 was not run. Codex does not validate keys inside `[tui]`, so the repository's test pins that table's setting names. A `request_user_input` question notifies as `plan-mode-prompt` at both tags (tool_requests.rs L449-458), so `async-question` adds only the asynchronous questions 0.155.1 lacks.", - "The second distro's `tui` is `fullscreen` by its own setting; `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` was not set, as the upstream documentation makes it a reactive fix and no stale rendering was observed or measured.", - "The host practice repository has no remote (commits fcd291f, 396d1c1, 9500656, c14e8c3, 9f615ad and d0c7d9c); its check and controls are recorded here as results only. The Windows Terminal settings patch and the second distro's merge were host operations on private files, recorded as values.", - "The second distro's Claude Code is 2.1.283, one release before this host's. A scan of the installed binaries (this host's 2.1.282, 2.1.283 and 2.1.284, and that distro's 2.1.283) found the `notifications_disabled` and `terminalSequence` literals and `worker_permission_prompt` emitted from the same two team-inbox call sites in each (the second distro's binary is byte-identical to this host's 2.1.283 by SHA-256 prefix, and its occurrence counts by `grep -a -o` equal this host's scan), so the whole matcher is live there. The changelog dates `terminalSequence` to 2.1.141 and has no entry for `notifications_disabled`, which the settings reference documents. The hook was run in that distro.", - "The merge de-duplicates hooks by command anywhere in the event, so it never changes the matcher of a Notification hook that already runs the bell command: after a later matcher change the old group must be edited or removed first. The acceptance script checks the group count and the matcher for that reason, and a unit test proves it refuses a catch-all group and an older matcher.", - "The Codex `[tui] notifications` list is in the template that a macOS host also renders. Codex keeps its own per-terminal channel there, so needed kinds still notify natively and the turn-complete one stops; at the macOS pin `async-question` does not exist and is inert. This was decided and documented, and not observed on a Mac.", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): codex_tui_strict_check.py counts a run as loaded only with Codex's session banner and exits 1 unless the template loaded and both configuration controls were refused; overlay_noop_check.py also requires disableAllHooks not to be true and labels its verdict as a check of the user settings file only; login_shell_bash_truth.py and the 512-combination test now also compare first_read; the platform page's advice about profiles.defaults was corrected (Windows Terminal ranks a profile's own value, then profiles.defaults, then a fragment's profile). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", + "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", + "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", + "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", + "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", + "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", + "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", + "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", + "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", + "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", + "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." ], - "path": "evidence/receipts/wsl-terminal-defaults-20260929.json" + "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" }, { "id": "socraticode-1160-qualification-20260929", @@ -3584,112 +3710,152 @@ "path": "evidence/receipts/socraticode-1160-qualification-20260929.json" }, { - "id": "omniroute-3851-npm-qualification-20260930", - "kind": "compatibility_attempt", + "id": "sota-convergence-20260922", + "kind": "historical_inventory", "component_ids": [ - "omniroute" + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "apple-container", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codebase-memory-mcp", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "fastapi", + "gitleaks", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "llama-cpp", + "loki", + "markitdown", + "mcp-inspector", + "mcporter", + "nextjs", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "playwright-cli", + "playwright-test", + "poppler", + "postgresql", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "react", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shanraisshan/claude-code-best-practice", + "shellcheck", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", + "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", "limitations": [ - "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", - "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", - "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", - "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", - "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", - "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", - "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", - "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", - "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." + "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", + "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", + "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", + "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." ], - "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" + "path": "evidence/receipts/sota-convergence-20260922.json" }, { - "id": "codex-01592-qualification-20260930", + "id": "syft-1540-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "syft" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", "limitations": [ - "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", - "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", - "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", - "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", - "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", - "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", - "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", - "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", - "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", - "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", - "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", - "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", - "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", - "Linux x86_64 only, one host; nothing here is macOS evidence." + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/codex-01592-qualification-20260930.json" + "path": "evidence/receipts/syft-1540-qualification-20261003.json" }, { - "id": "notification-types-20260929", + "path": "blueprints/us-equities/supply-chain/receipt.json", + "id": "syft-sdk-inventory-20260919", "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "syft" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", + "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", "limitations": [ - "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", - "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", - "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", - "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", - "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", - "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", - "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", - "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", - "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." - ], - "path": "evidence/receipts/notification-types-20260929.json" + "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", + "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", + "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", + "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", + "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", + "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", + "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", + "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", + "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", + "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." + ] }, { - "id": "login-shell-contract-20260929", + "id": "synthetic-catalyst-contract-20260920", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex" + "duckdb" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", + "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", - "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", - "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", - "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", - "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", - "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", - "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", - "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", - "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + "Protocol thresholds are exploratory choices, not fitted or proven optimal.", + "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", + "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", + "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", + "No provider calls, broker orders, new model turn or net token-savings measurement." ], - "path": "evidence/receipts/login-shell-contract-20260929.json" + "path": "blueprints/us-equities/catalyst-experiment/receipt.json" }, { - "id": "cross-family-review-terminal-lane-20260930", - "kind": "native_model_e2e", + "id": "tavily-research-qualification-20260926", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "omniroute", - "claude-code" + "tavily-cli" ], - "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", - "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", - "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", - "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", - "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", - "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", - "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." + "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", + "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", + "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", + "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", + "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", + "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", + "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", + "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." ], - "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" + "path": "evidence/receipts/tavily-research-qualification-20260926.json" }, { "id": "terminal-experience-20260928", @@ -3716,497 +3882,480 @@ "path": "evidence/receipts/terminal-experience-20260928.json" }, { - "id": "codex-shell-snapshot-cleanup-20260930", - "kind": "artifact_measurement", + "id": "token-native-retained-functional-20260920", + "path": "evidence/receipts/token-native-retained-functional-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "codex" + "context-hub", + "headroom", + "mcp-inspector", + "promptfoo", + "worktrunk" ], - "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", + "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", "limitations": [ - "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", - "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", - "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", - "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." - ], - "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" + "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", + "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", + "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", + "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", + "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", + "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." + ] }, { - "id": "agent-browser-lna-20260930", + "id": "token-practice-artifacts-20260920", "kind": "artifact_measurement", "component_ids": [ "agent-browser", - "playwright-test" - ], - "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", - "limitations": [ - "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", - "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", - "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", - "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." - ], - "path": "evidence/receipts/agent-browser-lna-20260930.json" - }, - { - "id": "guard-k3-verification-20260930", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code" + "ast-grep", + "edgartools", + "markitdown", + "qmd", + "repomix", + "rtk", + "socraticode", + "syft", + "toon" ], - "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", + "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", "limitations": [ - "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", - "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", - "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", - "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1064,7 +1068,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.79.0", + "version": "0.80.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1079,20 +1083,21 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "worktrunk-0800-qualification-20261003" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" ], - "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.161.0", + "version": "0.162.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1112,13 +1117,15 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "otelcol-contrib-0162-qualification-20261003" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib" + "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." }, { "id": "prometheus", @@ -1401,10 +1408,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.52.0", + "version": "1.54.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1413,13 +1420,14 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "syft-1540-qualification-20261003" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.52.0" + "https://github.com/anchore/syft/releases/tag/v1.54.0" ], - "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." }, { "id": "alpaca-py", @@ -1682,7 +1690,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.319", + "version": "1.108.327", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1695,7 +1703,7 @@ } } ], - "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1708,13 +1716,14 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "jcodemunch-1108327-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", - "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", + "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" ], - "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 996296416de50ad37b4c13ab6c5a51e26aaaccb4 Mon Sep 17 00:00:00 2001 From: Scout Date: Mon, 5 Oct 2026 02:05:54 -0400 Subject: [PATCH 29/50] Currency W1: dated-history fix, complete owner-file list, and Collector 0.162.0 / Grafana 13.2.3 scoped to their scratch qualification - The original 2026-10-03 handoff bullets are restored inside the dated history block. The 2026-10-05 heading now records only true 2026-10-05 statements: the seven W1 moves and the coordinator's committed and pushed repairs. - The configuration-owner file list adds the regenerated handbook pair and its receipt. - The NativeStack2604 lane's release gate disagreed with the earlier wording, and the receipts support only the narrower claim. The selections stand, and the wording now matches what the receipts cover. - Collector 0.162.0 is selected and qualified on scratch or synthetic validation only (otelcol-contrib-0162-qualification-20261003.json:11-15). Host acceptance is pending, and the release hold is named. - Grafana: the host stack keeps 13.2.2. The WSL profile and install-plan selection of 13.2.3 is qualified on scratch or synthetic validation only (the W1b receipt :11-14). The #133835/#133856 holds are named. These scopes now run through stack.json freshness, the landscape snapshot, the new-WSL profile and handbook, the saturation audit, the token-efficiency stack, the decision record, foundation-stack.md, the observability docs and the install plan. Every pin, enum and command is unchanged. - The handbook was regenerated, and its receipt records the --check run. Built by GPT-6.1 Sol through the packaged SDK worker (round 642-fix2); committed by the coordinator. Co-Authored-By: Claude Opus 5.5 --- adoption/new-wsl-profile.json | 22 ++++-- .../token-native-focus/saturation-audit.json | 14 ++-- catalogs/landscape/upstream-snapshot.json | 4 +- docs/decisions/2026-10-03-currency-wave-w1.md | 79 ++++++++++++++----- docs/foundation-stack.md | 2 + docs/new-wsl-handbook.json | 16 ++-- docs/new-wsl-handbook.md | 8 +- docs/token-efficiency-stack.json | 15 ++-- .../new-wsl-handbook-20261001/receipt.json | 24 ++++-- .../new-wsl-install-plan-20261002/README.md | 8 ++ .../new-wsl-install-plan-20261002/SOURCES.md | 8 ++ .../install-plan.json | 4 +- manifests/evidence.json | 60 +++++++------- manifests/stack.json | 4 +- observability/README.md | 4 +- observability/collector/README.md | 4 +- 16 files changed, 187 insertions(+), 89 deletions(-) diff --git a/adoption/new-wsl-profile.json b/adoption/new-wsl-profile.json index 94c9fa770..273abc83e 100644 --- a/adoption/new-wsl-profile.json +++ b/adoption/new-wsl-profile.json @@ -3471,7 +3471,8 @@ "default_precedence": null, "default_install": false, "blocking_gaps": [ - "G4 revised installation and native runtime acceptance are UNRUN on the destination." + "G4 revised installation and native runtime acceptance are UNRUN on the destination.", + "Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117)." ], "artifact": { "name": "otelcol-contrib_0.162.0_linux_amd64.tar.gz", @@ -3492,17 +3493,19 @@ "command": null, "source": "https://raw.githubusercontent.com/open-telemetry/opentelemetry-collector-contrib/v0.162.0/extension/healthcheckextension/README.md#L96", "evidence_class": "documented_upstream_example_not_executed", - "integration_note": "Executable commands remain in the slot-owned install plan instead of being duplicated into this source-review profile. The staged plan wraps documented native upstream operations with repository assertions; native runtime operations remain UNRUN in this builder job." + "integration_note": "Executable commands remain in the slot-owned install plan instead of being duplicated into this source-review profile. The staged plan wraps documented native upstream operations with repository assertions; native runtime operations remain UNRUN in this builder job. Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117)." }, "provisioning_status": "unprovisioned_optional_service", - "provisioning_reason": "Source recommendation only. No tool, service, account, model, provider, GPU or destination WSL installation/acceptance was performed.", + "provisioning_reason": "Source recommendation only. No tool, service, account, model, provider, GPU or destination WSL installation/acceptance was performed. Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117).", "evidence_refs": [ "evidence/artifacts/new-wsl-clean-install-selection-20261001/ownership.json", "evidence/artifacts/new-wsl-clean-install-selection-20261001/selection.json", "evidence/artifacts/new-wsl-clean-install-selection-20261001/packets/observation-inference.json", "evidence/artifacts/new-wsl-profile-20261001/source-review.json", "https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/ae8c507510f48f433ab47dd1c6b01a59d6c388b5/README.md", - "docs/decisions/2026-10-04-2604-e2e-fix-wave-g4-observability.md" + "docs/decisions/2026-10-04-2604-e2e-fix-wave-g4-observability.md", + "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", + "docs/decisions/2026-10-04-2604-e2e-fix-wave.md" ], "release": { "tag": "v0.162.0", @@ -3639,7 +3642,8 @@ "blocking_gaps": [ "G4 revised installation and native runtime acceptance are UNRUN on the destination.", "The canonical definitive selection remains split/measurement-only; explicit --only grafana is required pending coordinator reconciliation.", - "After sign-in, the native client/SDK workload and nine affected dashboard queries must pass." + "After sign-in, the native client/SDK workload and nine affected dashboard queries must pass.", + "Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head." ], "artifact": { "name": "grafana_13.2.3_36482603486_linux_amd64.tar.gz", @@ -3660,17 +3664,19 @@ "command": null, "source": "https://raw.githubusercontent.com/grafana/grafana/v13.2.3/docs/sources/developer-resources/api-reference/http-api/api-legacy/data_source.md#L657", "evidence_class": "documented_upstream_example_not_executed", - "integration_note": "Executable commands remain in the slot-owned install plan instead of being duplicated into this source-review profile. The staged plan wraps documented native upstream operations with repository assertions; native runtime operations remain UNRUN in this builder job." + "integration_note": "Executable commands remain in the slot-owned install plan instead of being duplicated into this source-review profile. The staged plan wraps documented native upstream operations with repository assertions; native runtime operations remain UNRUN in this builder job. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head." }, "provisioning_status": "unprovisioned_optional_service", - "provisioning_reason": "Source recommendation only. No tool, service, account, model, provider, GPU or destination WSL installation/acceptance was performed.", + "provisioning_reason": "Source recommendation only. No tool, service, account, model, provider, GPU or destination WSL installation/acceptance was performed. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head.", "evidence_refs": [ "evidence/artifacts/new-wsl-clean-install-selection-20261001/ownership.json", "evidence/artifacts/new-wsl-clean-install-selection-20261001/selection.json", "evidence/artifacts/new-wsl-clean-install-selection-20261001/packets/observation-inference.json", "evidence/artifacts/new-wsl-profile-20261001/source-review.json", "https://github.com/grafana/grafana/blob/3db12332b66497c31f8ad2a5fb0eb0fe0ca05a7e/README.md", - "docs/decisions/2026-10-04-2604-e2e-fix-wave-g4-observability.md" + "docs/decisions/2026-10-04-2604-e2e-fix-wave-g4-observability.md", + "https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14", + "docs/decisions/2026-10-04-2604-e2e-fix-wave.md" ], "release": { "tag": "v13.2.3", diff --git a/blueprints/token-native-focus/saturation-audit.json b/blueprints/token-native-focus/saturation-audit.json index 35f03d975..6f3053a38 100644 --- a/blueprints/token-native-focus/saturation-audit.json +++ b/blueprints/token-native-focus/saturation-audit.json @@ -3661,11 +3661,11 @@ }, "artifact_baselines": [], "exact_causal_lifetime_provider_tokens_saved": null, - "next_action": "Reuse applicable dated acceptance; rerun only after changed inputs or a concrete failed operation.", + "next_action": "Reuse applicable dated acceptance; rerun only after changed inputs or a concrete failed operation. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head.", "integration_mode": "Configured persistent native service; explicit task consumes the selected endpoint.", "lifecycle_evidence": { "assessment": "bounded_role_evidence", - "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability.", + "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability. Historical lifecycle observations remain bound to 13.2.2. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head.", "all_optional_features_exercised": false }, "remaining_install_gap": null, @@ -5593,7 +5593,7 @@ "version": "0.162.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", - "installation_assessment": "runtime present at retained native operation date", + "installation_assessment": "Historical 0.161.0 runtime was present at its retained native operation date. Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117).", "current_host_recertified_by_this_audit": false, "native_integration": { "recipe_source": "adoption/manifest.json#/recipe_map/opentelemetry-collector-contrib", @@ -5680,19 +5680,19 @@ "retained_operation_ids": [ "fresh-otel-config-unit-env" ], - "scope": "Native collector validates existing configuration with its required nonsecret unit environment; no service reload." + "scope": "Historical 0.161.0 configuration validation uses its required nonsecret unit environment; no service reload. Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117)." }, "artifact_baselines": [], "exact_causal_lifetime_provider_tokens_saved": null, - "next_action": "Reuse applicable dated acceptance; rerun only after changed inputs or a concrete failed operation.", + "next_action": "Retain selection; resolve the NativeStack2604 release hold and collect host acceptance for 0.162.0 before claiming deployment qualification.", "integration_mode": "Configured persistent native service; explicit task consumes the selected endpoint.", "lifecycle_evidence": { "assessment": "bounded_role_evidence", - "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability. Historical lifecycle observations remain bound to 0.161.0. W1 0.162.0 qualification is limited to the new receipt; no host switch or full lifecycle recertification occurred.", + "scope": "Dated role evidence is separated into install, use, persistence, restart, cleanup and recovery below. An unestablished stage is not inferred from runtime availability. Historical lifecycle observations remain bound to 0.161.0. W1 0.162.0 qualification is limited to the new receipt; no host switch or full lifecycle recertification occurred. Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117).", "all_optional_features_exercised": false }, "remaining_install_gap": null, - "remaining_install_gap_reason": "No additional useful installation gap identified for the selected role in this bounded evidence review; full lifecycle/optional-feature limits remain explicit.", + "remaining_install_gap_reason": "The historical 0.161.0 role evidence does not establish the selected release on a host. Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117).", "source_pin": null, "lifecycle_stages": { "install": { diff --git a/catalogs/landscape/upstream-snapshot.json b/catalogs/landscape/upstream-snapshot.json index f89f0ecd8..c4d0c1978 100644 --- a/catalogs/landscape/upstream-snapshot.json +++ b/catalogs/landscape/upstream-snapshot.json @@ -6672,6 +6672,8 @@ "Selected archive SHA-256 values are retained from the manifest and were not re-downloaded or rehashed; resolving a Git commit or release does not verify installed bytes.", "Default branches and release tags are mutable; retained source SHAs and query timestamps bound this observation.", "Public stars are discovery preferences, not a quality ranking. The one added repository received a bounded primary-source screen and remains a conditional targeted candidate; it was not installed or adopted.", - "Full upstream API bodies are not retained, so output hashes identify the observed bodies but cannot reconstruct them." + "Full upstream API bodies are not retained, so output hashes identify the observed bodies but cannot reconstruct them.", + "Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117).", + "Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head. Snapshot status and release relationships describe dated upstream metadata, not release-gate or host acceptance." ] } diff --git a/docs/decisions/2026-10-03-currency-wave-w1.md b/docs/decisions/2026-10-03-currency-wave-w1.md index 722c11a62..10fd30d9c 100644 --- a/docs/decisions/2026-10-03-currency-wave-w1.md +++ b/docs/decisions/2026-10-03-currency-wave-w1.md @@ -4,8 +4,9 @@ Amended 2026-10-04: after merging main 14048b84 this PR integrates seven W1 moves; claude-hud, RTK and mcporter follow main's #693; see [Merge with main 14048b84, 2026-10-04](#merge-with-main-14048b84-2026-10-04). -Integrate eight qualified foundation release pins from the W1 build contract; -hold mcporter at 0.14.1 after R642b review. +Dated W1 decision (2026-10-03): integrate eight foundation release pins within +their recorded qualification scopes; mcporter was held at 0.14.1 after R642b review. +The amendments below record the current seven W1 moves and main's selections. This maintains the native tooling used to build complex projects and conduct the north-star US-equities research and historical simulation. It changes repository selections and supported installation recipes; host installation, service @@ -30,7 +31,7 @@ identities; they do not expand the scope of the recorded functional evidence. | openresearch | 0.2.7 | [v0.2.15](https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15), commit `ee36ef0333ca3c533eace915f1bec322a1efde1c` | [Archive integrity and isolated version](../../evidence/receipts/openresearch-0215-qualification-20261003.json) | | mcp-inspector | 2.8.0 | [2.9.0](https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0), commit `ae865a19178ddf6f375780a02e9c77c4cf4da184` | [Version, help and new functional stdio runs](../../evidence/receipts/mcp-inspector-290-qualification-20261003.json) | | claude-hud | 0.8.0 | [v0.10.0](https://github.com/jarrodwatts/claude-hud/releases/tag/v0.10.0), commit `75683c6de1ac07f6bbef00d739001679dba0740c` | [Manifest versions and two synthetic stdin renders](../../evidence/receipts/claude-hud-0100-qualification-20261003.json) | -| opentelemetry-collector-contrib | 0.161.0 | [v0.162.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0), commit `ae8c507510f48f433ab47dd1c6b01a59d6c388b5`; [distribution release](https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.162.0) | [Archive, version and configuration validation](../../evidence/receipts/otelcol-contrib-0162-qualification-20261003.json) | +| opentelemetry-collector-contrib | 0.161.0 | [v0.162.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0), commit `ae8c507510f48f433ab47dd1c6b01a59d6c388b5`; [distribution release](https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.162.0) | [Archive, version and scratch configuration validation](../../evidence/receipts/otelcol-contrib-0162-qualification-20261003.json#L11-L15); selected; qualified on scratch/synthetic validation only; host acceptance pending; NativeStack2604 release hold below | | worktrunk | 0.79.0 | [v0.80.0](https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0), commit `b49ca7eea9b03145791a5b94eccaf9c59412ed37` | [Version and synthetic repository list](../../evidence/receipts/worktrunk-0800-qualification-20261003.json) | | syft | 1.52.0 | [v1.54.0](https://github.com/anchore/syft/releases/tag/v1.54.0), commit `cc326e45a6213360266dda4b30cc68095946d676` | [Version and recorded SDK inventory](../../evidence/receipts/syft-1540-qualification-20261003.json) | @@ -121,9 +122,9 @@ observed fixture render. The user ended the seven-day cooldown for clean releases on 2026-10-03. This removes an age-only delay; it does not waive qualification, known regressions, functional gates or recipe compatibility. Alternatives were to -retain the previous pins for the remaining cooldown, adopt eight qualified -releases within their measured scopes while holding mcporter, or adopt all nine -despite the mcporter dependency and daemon gaps. Adopt the eight qualified moves; +retain the previous pins for the remaining cooldown, adopt eight +releases within their measured qualification scopes while holding mcporter, or adopt all nine +despite the mcporter dependency and daemon gaps. The October 3 decision adopted the eight moves within those scopes; retain each previous pin as the rollback reference. R642b holds mcporter at the accepted Linux 0.14.1 pin. Its @@ -227,20 +228,21 @@ results from local structural checks. > it carries Inspector 2.9.0, Worktrunk 0.80.0 and Collector 0.162.0, while > playwright-cli 0.1.21 and Syft 1.52.0 remain older than the W1 selections. > Its mcporter 0.14.1 agrees with R642b's hold. This file is outside the repair's edit scope. +> - The trading owner must update the canonical +> `blueprints/us-equities/supply-chain/README.md` recipe for Syft 1.54.0, +> including its 1.52.0 archive/hash instructions, using the W1 receipt's +> publisher checksum URL and `54a87372498168b2d033e876fd41fa4e8035b872699e525a57046e1f2f09c860`. +> The trading owner also owns the Collector version comment in +> `observability/paper-trading-live/collector-paper-trading.yaml`. +> - The coordinator supplies the required CI buckets, macOS result, hosted +> secret scans, PR labels/body and any required trading acknowledgement for +> the committed repair head. No commit or push is part of this repair; +> R642b authorizes correcting the PR's component count to eight. **Configuration-owner handoff after merges 2 and 3 (2026-10-05):** -- Only the profile's playwright-cli 0.1.21 remains older than the stack's 0.1.22 selection. Syft 1.54.0 and mcporter 0.14.2 now match through main #684/#704. This PR sets the jcodemunch-mcp entry to 1.108.327. The other owner handoffs below retain their separate scopes. -- The trading owner must update the canonical - `blueprints/us-equities/supply-chain/README.md` recipe for Syft 1.54.0, - including its 1.52.0 archive/hash instructions, using the W1 receipt's - publisher checksum URL and `54a87372498168b2d033e876fd41fa4e8035b872699e525a57046e1f2f09c860`. - The trading owner also owns the Collector version comment in - `observability/paper-trading-live/collector-paper-trading.yaml`. -- The coordinator supplies the required CI buckets, macOS result, hosted - secret scans, PR labels/body and any required trading acknowledgement for - the committed repair head. No commit or push is part of this repair; - R642b authorizes correcting the PR's component count to eight. +- Only the profile's playwright-cli 0.1.21 remains older than the stack's 0.1.22 selection. Syft 1.54.0 and mcporter 0.14.2 now match through main #684/#704. This PR sets the jcodemunch-mcp entry to 1.108.327. +- The coordinator committed the October 5 repairs as `5dbc24c37` and pushed them with the hot-file pair `f37b1ac43`/`87184985a` to `origin/foundation/currency-w1-20261003`. The current PR integrates seven W1 moves; the original eight-move instruction belongs to the dated October 3 history above. ## Supplemental test environment correction @@ -578,10 +580,12 @@ acknowledgement remain with that owner and the coordinator. This PR now edits these configuration-owner files, superseding the earlier scope statement retained above as dated history: -- `adoption/new-wsl-profile.json`: the jcodemunch-mcp entry. +- `adoption/new-wsl-profile.json`: the jcodemunch-mcp entry and the Collector/Grafana qualification limits recorded in fix round 2 below. - `evidence/artifacts/new-wsl-layer-consensus-20261002/consensus.json`: the wave3 code-index owner row; main's wave4 Promptfoo owner is preserved. - `evidence/artifacts/new-wsl-definitive-defaults-20261001/definitive-manifest.json`: regenerated from the merged consensus. - `docs/decisions/2026-10-01-new-wsl-definitive-defaults.md`: the tables rendered from that manifest. +- `docs/new-wsl-handbook.json` and `docs/new-wsl-handbook.md`: regenerated from the merged profile and definitive manifest. +- `evidence/artifacts/new-wsl-handbook-20261001/receipt.json`: refreshed generator/profile/output hashes and retained validation[6]-[8]; fix round 2 records its new regeneration and check separately. - `evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json`, `owners.json`, `install.sh` and `accept.sh`: the code-index owner, install/list/version commands and source citations. - `evidence/artifacts/new-wsl-install-plan-20261002/README.md` and `SOURCES.md`: the current code-index pin, wave-3 refresh and verified source locations. @@ -620,3 +624,42 @@ pins and source anchors, main's repair slots and Promptfoo owner, reconciled command counts, actual receipt dates and returned generator statuses. Rebuild the manifest, tables and handbook with their own generators, run the named local acceptance checks, and re-register changed files after all mutations. + +## Fix round 2: history, custody and release qualification (2026-10-05) + +The complete October 3 trading-owner and coordinator handoffs are retained +inside the dated history block above. The October 5 handoff records seven W1 +moves and the coordinator's committed and pushed repair; it does not carry the +older instruction to change the component count to eight. The configuration-owner +file list includes the regenerated handbook pair and their receipt. + +Collector Contrib **0.162.0** remains selected; qualified on scratch/synthetic +validation only ([receipt:11-15](../../evidence/receipts/otelcol-contrib-0162-qualification-20261003.json#L11-L15)); +host acceptance pending. The receipt covers Linux scratch-prefix version and +configuration validation, with no live-traffic pipeline, running host service +or service replacement, and no verified Sigstore bundle. The NativeStack2604 +release hold is the failed release-tag build-and-test, recorded in the +[release-gate handoff](2026-10-04-2604-e2e-fix-wave.md#L117). + +Grafana **13.2.3** remains selected in the WSL profile/install plan; qualified +on scratch/synthetic validation only ([W1b receipt:11-14](https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14)); +host acceptance pending. The namespace smoke does not establish browser +rendering, real Prometheus/Loki data, production cardinality, Grafana-managed +alerting, restart onto the real host database or unchanged upstream test +acceptance. The NativeStack2604 release hold names regression reports +`grafana/grafana#133835` and `#133856`, in the same +[release-gate handoff](2026-10-04-2604-e2e-fix-wave.md#L117). + +At this head, `git ls-files` has no Grafana 13.2.3 qualification receipt: +W1b retains it in local commit `748f701e1`, read here through `git show` without +network access and cited at that immutable commit. `manifests/stack.json` and +its freshness snapshot still select Grafana **13.2.2**; the WSL profile and plan +select **13.2.3**. This repair changes qualification wording and preserves every +pin. Neither scratch receipt closes the named release hold or pending host +acceptance; the coordinator and release-gate owners retain that reconciliation. + +Current stack freshness, snapshot limits, profile blocking gaps, saturation +and token evidence notes, foundation and observability guides, and install-plan +notes carry these qualification scopes. Historical receipts and raw dated +qualification/review outputs retain their original bytes. Selection and metadata +enums remain unchanged; the scope is recorded in their supported prose fields. diff --git a/docs/foundation-stack.md b/docs/foundation-stack.md index 1d917d089..b8b97ab6c 100644 --- a/docs/foundation-stack.md +++ b/docs/foundation-stack.md @@ -4,6 +4,8 @@ This is the selected memory, retrieval and token-efficiency setup for native Cod The foundation wave's [acceptance receipt](../evidence/receipts/foundation-native-20260920.json) is the result authority. Both native clients completed seven requested MCP calls with exact retrieved source and required answer content. Each jCodeMunch process reported 0 → 4,970 estimated tokens saved; the shared retained estimate reached 49,700. Scoped memory/RAG checks and eight fresh Serena Python/CJS checks passed. The isolated Linux OmniRoute installation/start/restart/plaintext-restore/stop checks passed without provider calls. Gateway compression and semantic response-cache counters were zero; historical provider-prefix cached tokens were 41,903 and unchanged. RTK and lite previews failed required semantic checks. Exact dedup preserved both required facts at 894 → 470 tokens for repeated history, and correctly left a single copy at 447 → 447. Gateway attempts retain a native Codex model400, a separate direct Codex quota429, and a malformed Claude-launch argument sequence with plaintext429. These are not accepted gateway native tasks. Installation, preview and successful model use remain separate stages. +Collector Contrib **0.162.0** is selected; qualified on scratch/synthetic validation only ([receipt:11-15](../evidence/receipts/otelcol-contrib-0162-qualification-20261003.json#L11-L15)); host acceptance pending. Its NativeStack2604 release hold is the failed release-tag build-and-test. Grafana **13.2.3** is selected in the WSL profile/install plan; qualified on scratch/synthetic validation only ([W1b receipt:11-14](https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14)); host acceptance pending. Its release hold names `grafana/grafana#133835` and `#133856`. The [release-gate handoff](decisions/2026-10-04-2604-e2e-fix-wave.md#L117) records both holds. The host stack still selects Grafana 13.2.2 at this head; older deployed-version receipts keep their original scope. + ## Select one useful lane | Need | Selected repositories and pins | Default scope / acceptance | diff --git a/docs/new-wsl-handbook.json b/docs/new-wsl-handbook.json index 47356c5e3..8f70ce05a 100644 --- a/docs/new-wsl-handbook.json +++ b/docs/new-wsl-handbook.json @@ -7534,7 +7534,7 @@ }, { "path": "adoption/new-wsl-profile.json", - "sha256": "1e191e6cf9f96399bde37894f287fb296ebd08d1d6291914ca9362d7ffc207e9" + "sha256": "9abbb77704c9208d049518368f97786d1ef09060d420c5aebf183ee4575e7632" }, { "path": "adoption/platforms/linux-wsl2-new-distro.md", @@ -9465,7 +9465,7 @@ "acceptance": { "command": null, "evidence_class": "documented_upstream_example_not_executed", - "integration_note": "Executable commands remain in the slot-owned install plan instead of being duplicated into this source-review profile. The staged plan wraps documented native upstream operations with repository assertions; native runtime operations remain UNRUN in this builder job.", + "integration_note": "Executable commands remain in the slot-owned install plan instead of being duplicated into this source-review profile. The staged plan wraps documented native upstream operations with repository assertions; native runtime operations remain UNRUN in this builder job. Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117).", "source": "https://raw.githubusercontent.com/open-telemetry/opentelemetry-collector-contrib/v0.162.0/extension/healthcheckextension/README.md#L96" }, "aliases": [ @@ -9473,6 +9473,7 @@ ], "blocking_gaps": [ "G4 revised installation and native runtime acceptance are UNRUN on the destination.", + "Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117).", "install: upstream-documented command and source pending in W-PROF", "acceptance: upstream test or documented example and source pending in W-PROF" ], @@ -9494,7 +9495,9 @@ "evidence/artifacts/new-wsl-clean-install-selection-20261001/packets/observation-inference.json", "evidence/artifacts/new-wsl-profile-20261001/source-review.json", "https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/ae8c507510f48f433ab47dd1c6b01a59d6c388b5/README.md", - "docs/decisions/2026-10-04-2604-e2e-fix-wave-g4-observability.md" + "docs/decisions/2026-10-04-2604-e2e-fix-wave-g4-observability.md", + "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", + "docs/decisions/2026-10-04-2604-e2e-fix-wave.md" ], "install": { "command": null, @@ -9643,7 +9646,7 @@ "acceptance": { "command": null, "evidence_class": "documented_upstream_example_not_executed", - "integration_note": "Executable commands remain in the slot-owned install plan instead of being duplicated into this source-review profile. The staged plan wraps documented native upstream operations with repository assertions; native runtime operations remain UNRUN in this builder job.", + "integration_note": "Executable commands remain in the slot-owned install plan instead of being duplicated into this source-review profile. The staged plan wraps documented native upstream operations with repository assertions; native runtime operations remain UNRUN in this builder job. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head.", "source": "https://raw.githubusercontent.com/grafana/grafana/v13.2.3/docs/sources/developer-resources/api-reference/http-api/api-legacy/data_source.md#L657" }, "aliases": [ @@ -9653,6 +9656,7 @@ "G4 revised installation and native runtime acceptance are UNRUN on the destination.", "The canonical definitive selection remains split/measurement-only; explicit --only grafana is required pending coordinator reconciliation.", "After sign-in, the native client/SDK workload and nine affected dashboard queries must pass.", + "Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head.", "install: upstream-documented command and source pending in W-PROF", "acceptance: upstream test or documented example and source pending in W-PROF" ], @@ -9674,7 +9678,9 @@ "evidence/artifacts/new-wsl-clean-install-selection-20261001/packets/observation-inference.json", "evidence/artifacts/new-wsl-profile-20261001/source-review.json", "https://github.com/grafana/grafana/blob/3db12332b66497c31f8ad2a5fb0eb0fe0ca05a7e/README.md", - "docs/decisions/2026-10-04-2604-e2e-fix-wave-g4-observability.md" + "docs/decisions/2026-10-04-2604-e2e-fix-wave-g4-observability.md", + "https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14", + "docs/decisions/2026-10-04-2604-e2e-fix-wave.md" ], "install": { "command": null, diff --git a/docs/new-wsl-handbook.md b/docs/new-wsl-handbook.md index f4b841502..6cf52dc45 100644 --- a/docs/new-wsl-handbook.md +++ b/docs/new-wsl-handbook.md @@ -1096,10 +1096,10 @@ Default ownership: ["OTel Collector Contrib", "Prometheus", "Loki", "Grafana", " | Tool / repository | Owner / status | Pin / checksum | Install | Acceptance | Stage / position | | --- | --- | --- | --- | --- | --- | -| [OTel Collector Contrib](https://github.com/open-telemetry/opentelemetry-collector-contrib) | observation-inference / picked | 0.162.0 / {"algorithm": "sha256", "kind": "artifact", "source": "https://api.github.com/repos/open-telemetry/opentelemetry-collector-releases/releases/tags/v0.162.0", "value": "fcc063749f730f8c21fe29f2d340ff174f5f1c5885bd3156fb6c985a3036fcc3"} | {"command": null, "source": "https://raw.githubusercontent.com/open-telemetry/opentelemetry.io/9f912d59a165ded5dec82d0e1a94c2aef54e5c57/content/en/docs/collector/install/binary/linux.md#L87"} | {"command": null, "evidence_class": "documented_upstream_example_not_executed", "integration_note": "Executable commands remain in the slot-owned install plan instead of being duplicated into this source-review profile. The staged plan wraps documented native upstream operations with repository assertions; native runtime operations remain UNRUN in this builder job.", "source": "https://raw.githubusercontent.com/open-telemetry/opentelemetry-collector-contrib/v0.162.0/extension/healthcheckextension/README.md#L96"} | optional-services / 1 | +| [OTel Collector Contrib](https://github.com/open-telemetry/opentelemetry-collector-contrib) | observation-inference / picked | 0.162.0 / {"algorithm": "sha256", "kind": "artifact", "source": "https://api.github.com/repos/open-telemetry/opentelemetry-collector-releases/releases/tags/v0.162.0", "value": "fcc063749f730f8c21fe29f2d340ff174f5f1c5885bd3156fb6c985a3036fcc3"} | {"command": null, "source": "https://raw.githubusercontent.com/open-telemetry/opentelemetry.io/9f912d59a165ded5dec82d0e1a94c2aef54e5c57/content/en/docs/collector/install/binary/linux.md#L87"} | {"command": null, "evidence_class": "documented_upstream_example_not_executed", "integration_note": "Executable commands remain in the slot-owned install plan instead of being duplicated into this source-review profile. The staged plan wraps documented native upstream operations with repository assertions; native runtime operations remain UNRUN in this builder job. Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117).", "source": "https://raw.githubusercontent.com/open-telemetry/opentelemetry-collector-contrib/v0.162.0/extension/healthcheckextension/README.md#L96"} | optional-services / 1 | | [Prometheus](https://github.com/prometheus/prometheus) | observation-inference / picked | 3.15.0 / {"algorithm": "sha256", "kind": "artifact", "source": "https://api.github.com/repos/prometheus/prometheus/releases/tags/v3.15.0", "value": "2a542df32eac02ee17b9d844fb2aa1de00dafa5476579ba8a3ba862e9d572ea0"} | {"command": null, "source": "https://github.com/prometheus/prometheus/blob/5241a27fe3c6983549fccc32f6e65917408c63cd/README.md"} | {"command": null, "evidence_class": null, "source": null} | optional-services / 2 | | [Loki](https://github.com/grafana/loki) | observation-inference / picked | 3.7.8 / {"algorithm": "sha256", "kind": "artifact", "source": "https://api.github.com/repos/grafana/loki/releases/tags/v3.7.8", "value": "62aea42c9cba52cd1642b3666ab37019a0ce4c24ab50b07e85dccc8d812f7d61"} | {"command": null, "source": "https://github.com/grafana/loki/blob/09e6ce2ff1bdc19763a10265b870c86f51c98655/README.md"} | {"command": null, "evidence_class": null, "source": null} | optional-services / 3 | -| [Grafana](https://github.com/grafana/grafana) | observation-inference / picked | 13.2.3 / {"algorithm": "sha256", "kind": "artifact", "source": "https://grafana.com/grafana/download/13.2.3?edition=oss&platform=linux#L2819", "value": "6107ad27016296aac38e0d7ffa8753ab540b5541ad27e94790f771289d733235"} | {"command": null, "source": "https://grafana.com/grafana/download/13.2.3?edition=oss&platform=linux#L2819"} | {"command": null, "evidence_class": "documented_upstream_example_not_executed", "integration_note": "Executable commands remain in the slot-owned install plan instead of being duplicated into this source-review profile. The staged plan wraps documented native upstream operations with repository assertions; native runtime operations remain UNRUN in this builder job.", "source": "https://raw.githubusercontent.com/grafana/grafana/v13.2.3/docs/sources/developer-resources/api-reference/http-api/api-legacy/data_source.md#L657"} | optional-services / 4 | +| [Grafana](https://github.com/grafana/grafana) | observation-inference / picked | 13.2.3 / {"algorithm": "sha256", "kind": "artifact", "source": "https://grafana.com/grafana/download/13.2.3?edition=oss&platform=linux#L2819", "value": "6107ad27016296aac38e0d7ffa8753ab540b5541ad27e94790f771289d733235"} | {"command": null, "source": "https://grafana.com/grafana/download/13.2.3?edition=oss&platform=linux#L2819"} | {"command": null, "evidence_class": "documented_upstream_example_not_executed", "integration_note": "Executable commands remain in the slot-owned install plan instead of being duplicated into this source-review profile. The staged plan wraps documented native upstream operations with repository assertions; native runtime operations remain UNRUN in this builder job. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head.", "source": "https://raw.githubusercontent.com/grafana/grafana/v13.2.3/docs/sources/developer-resources/api-reference/http-api/api-legacy/data_source.md#L657"} | optional-services / 4 | | [llama.cpp](https://github.com/ggml-org/llama.cpp) | observation-inference / head-to-head-arm | b11057 / {"algorithm": "git-sha1", "kind": "source", "source": "https://api.github.com/repos/ggml-org/llama.cpp/commits/59657a613ab0fa4ab327d6c790123dff30bfbd67", "value": "59657a613ab0fa4ab327d6c790123dff30bfbd67"} | {"command": null, "source": "https://github.com/ggml-org/llama.cpp/blob/59657a613ab0fa4ab327d6c790123dff30bfbd67/README.md"} | {"command": null, "evidence_class": null, "source": null} | embedding-server-comparison / 2 | | [Phoenix](https://github.com/Arize-ai/phoenix) (`pypi:arize-phoenix`) | observation-inference / picked | 20.18.0 / {"algorithm": "sha256", "kind": "artifact", "source": "https://pypi.org/pypi/arize-phoenix/json", "value": "80e870887f6487d1d84b98562ee9bb729bb3bfa23b633af4ecf510f77be922a8"} | {"command": "pip install arize-phoenix==20.18.0", "source": "https://github.com/Arize-ai/phoenix/blob/d2ad1d916fa8afa21ea218ef7918ef7e4df6ab60/README.md"} | {"command": null, "evidence_class": null, "source": null} | optional-services / 5 | | [agentsview](https://github.com/kenn-io/agentsview) | observation-inference / picked | 0.43.0 / {"algorithm": "sha256", "kind": "artifact", "source": "https://api.github.com/repos/kenn-io/agentsview/releases/tags/v0.43.0", "value": "4520c6698772d2db7220212abf58d7d58c0966d7435f0a5ab134371f874df6d9"} | {"command": "gh release download v0.43.0 --repo kenn-io/agentsview --pattern agentsview_0.43.0_linux_amd64.tar.gz --dir \"$STACK_HOME/downloads/agentsview-0.43.0\" && tar -xf \"$STACK_HOME/downloads/agentsview-0.43.0/agentsview_0.43.0_linux_amd64.tar.gz\" -C \"$PREFIX\"", "execution_status": "UNRUN", "prerequisites": ["tar."], "scope": "The release archive and its sha256, as recipes/README.md 'Official release archives' gives the procedure; the install plan downloads the same asset with its checksum-verified download instead of gh, extracts it into ${ECO_ROOT}/tools/- and links the command into ${ECO_ROOT}/bin. The asset is the one gh release view v0.43.0 --json assets lists for Linux x86_64 (docs/token-efficiency-stack.json). A local archive only: telemetry and the update check off, no hosted or remote sync.", "source": "https://github.com/kenn-io/agentsview/blob/v0.43.0/README.md#L25"} | {"command": "AGENTSVIEW_TELEMETRY_ENABLED=0 AGENTSVIEW_DISABLE_UPDATE_CHECK=1 agentsview session list", "evidence_class": "documented_upstream_example_not_executed", "execution_status": "UNRUN", "prerequisites": ["An owned AGENTSVIEW_DATA_DIR and a prior agentsview sync."], "scope": "Upstream's session listing from the local archive, with telemetry off (README line 695) and the update check off (docs/token-efficiency-stack.json); a blank archive is not evidence of zero usage.", "source": "https://github.com/kenn-io/agentsview/blob/v0.43.0/README.md#L48"} | native-extensions / 24 | @@ -1120,6 +1120,7 @@ Reference edition: [catalogs/foundation/new-wsl-architecture-20261001.json](../c - Gap: Ownership declares comparison groups in prose; W-PROF must enumerate every arm and baseline with its install evidence. - OTel Collector Contrib gap: G4 revised installation and native runtime acceptance are UNRUN on the destination. +- OTel Collector Contrib gap: Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). - OTel Collector Contrib gap: install: upstream-documented command and source pending in W-PROF - OTel Collector Contrib gap: acceptance: upstream test or documented example and source pending in W-PROF - OTel Collector Contrib packet install reference (not a pinned recipe): [{"command": "wget https://github.com/open-telemetry/opentelemetry-collector-releases/releases/download/v0.162.0/otelcol-contrib_0.162.0_linux_amd64.deb && sudo dpkg -i otelcol-contrib_0.162.0_linux_amd64.deb", "source": "https://opentelemetry.io/docs/collector/install/binary/linux/ (deb install pattern) and https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.162.0 (otelcol-contrib_0.162.0_linux_amd64.deb)"}] @@ -1136,6 +1137,7 @@ Reference edition: [catalogs/foundation/new-wsl-architecture-20261001.json](../c - Grafana gap: G4 revised installation and native runtime acceptance are UNRUN on the destination. - Grafana gap: The canonical definitive selection remains split/measurement-only; explicit --only grafana is required pending coordinator reconciliation. - Grafana gap: After sign-in, the native client/SDK workload and nine affected dashboard queries must pass. +- Grafana gap: Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head. - Grafana gap: install: upstream-documented command and source pending in W-PROF - Grafana gap: acceptance: upstream test or documented example and source pending in W-PROF - Grafana packet install reference (not a pinned recipe): [{"command": "sudo apt-get install grafana # after adding 'deb [signed-by=/etc/apt/keyrings/grafana.asc] https://apt.grafana.com stable main'", "source": "https://grafana.com/docs/grafana/latest/setup-grafana/installation/debian/"}] @@ -2121,7 +2123,7 @@ Reference edition: [catalogs/foundation/new-wsl-architecture-20261001.json](../c | Repository source | SHA-256 | | --- | --- | | [adoption/manifest.json](../adoption/manifest.json) | `4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714` | -| [adoption/new-wsl-profile.json](../adoption/new-wsl-profile.json) | `1e191e6cf9f96399bde37894f287fb296ebd08d1d6291914ca9362d7ffc207e9` | +| [adoption/new-wsl-profile.json](../adoption/new-wsl-profile.json) | `9abbb77704c9208d049518368f97786d1ef09060d420c5aebf183ee4575e7632` | | [adoption/platforms/linux-wsl2-new-distro.md](../adoption/platforms/linux-wsl2-new-distro.md) | `c496b08e4b26cd1f29b2057109028b341dc72ab17229e15f6502f57e3aa1ec53` | | [catalogs/foundation/new-wsl-architecture-20261001.json](../catalogs/foundation/new-wsl-architecture-20261001.json) | `0cd26fdab18ab685ea2fb0f5d996416befbade4e3bcefb0fcb0c5b2f904cc2bc` | | [catalogs/landscape/research-state.json](../catalogs/landscape/research-state.json) | `fe142c1b8b8ec8b92d69ec5971d68028225899c101ffc43cea618883b119332a` | diff --git a/docs/token-efficiency-stack.json b/docs/token-efficiency-stack.json index bee553b7d..ab3ee5a66 100644 --- a/docs/token-efficiency-stack.json +++ b/docs/token-efficiency-stack.json @@ -6790,7 +6790,7 @@ "statistics": [], "command_kind": "Read-only upstream validation, health and query commands from the retained exact-session evidence. No installer or service mutation is run by this row." }, - "returned_result_summary": "2026-09-20 14:17 UTC: Collector health returned HTTP 200 and status 'Server available'; the native user service was active in the follow-up. Existing configuration routes native client telemetry to local backends. Health and configured routing alone do not prove exact task attribution. Later foundation evidence: native Codex returned 219,725 total tokens, matched by 9 Loki responses and Prometheus. The original seven-tool Claude returned 254,111, matched by 6 Loki responses, while Prometheus lacks 77,317; strict final JSON failed although required content passed. A separate Claude run waited for writer readiness and returned 35,537, with all four usage categories matched in Loki/Prometheus, zero tools and zero agents. These are separate native processes, not this Desktop task or measured savings.", + "returned_result_summary": "2026-09-20 14:17 UTC: Collector health returned HTTP 200 and status 'Server available'; the native user service was active in the follow-up. Existing configuration routes native client telemetry to local backends. Health and configured routing alone do not prove exact task attribution. Later foundation evidence: native Codex returned 219,725 total tokens, matched by 9 Loki responses and Prometheus. The original seven-tool Claude returned 254,111, matched by 6 Loki responses, while Prometheus lacks 77,317; strict final JSON failed although required content passed. A separate Claude run waited for writer readiness and returned 35,537, with all four usage categories matched in Loki/Prometheus, zero tools and zero agents. These are separate native processes, not this Desktop task or measured savings. Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117).", "session_statistics": { "availability": "none", "value": null, @@ -6809,7 +6809,7 @@ "codex": "Foundation native run 15:46:10\u201315:46:43 UTC: seven requested MCP calls and exact source passed; returned 219,725 usage matches9 Loki responses and Prometheus. Separate from retained Desktop evidence; no resume or causal savings claim.", "claude": "Foundation seven-tool run 15:49:15\u201315:49:29 UTC: required source/content passed but strict final JSON failed; 254,111 returned tokens match6 Loki responses while Prometheus misses 77,317. Separate readiness run 16:01:38 UTC: 35,537 matches native/Loki/Prometheus in all four categories, with 0 tools / 0 agents. Original gap remains; no live Desktop acceptance." }, - "lifecycle_summary": "install: observed_installed; use: accepted_within_scope; persistence: not_established; restart: not_established; cleanup: not_established; recovery: not_established. Existing services were observed, not reinstalled or restarted by the current read-only probes. Preserve retained data and approved native configuration. Foundation observation reused the configured route without reinstall, restart or collector configuration change; the separate readiness run explicitly waited for its new writer before sending a user request.", + "lifecycle_summary": "install: observed_installed; use: accepted_within_scope; persistence: not_established; restart: not_established; cleanup: not_established; recovery: not_established. Existing services were observed, not reinstalled or restarted by the current read-only probes. Preserve retained data and approved native configuration. Foundation observation reused the configured route without reinstall, restart or collector configuration change; the separate readiness run explicitly waited for its new writer before sending a user request. Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117).", "source_paths": [ "evidence/receipts/current-session-observation-20260920.json", "docs/current-session-observation.md", @@ -6817,7 +6817,9 @@ "observability/backends/README.md", "adoption/lifecycle.md", "blueprints/token-native-focus/saturation-audit.json", - "evidence/receipts/foundation-native-20260920.json" + "evidence/receipts/foundation-native-20260920.json", + "docs/decisions/2026-10-03-currency-wave-w1.md", + "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" ], "retained_observations": [ { @@ -7228,7 +7230,7 @@ "statistics": [], "command_kind": "Read-only upstream validation, health and query commands from the retained exact-session evidence. No installer or service mutation is run by this row." }, - "returned_result_summary": "2026-09-20 14:17 UTC: /api/health returned HTTP 200 with database 'ok', version '13.2.2', and the retained commit identity. The native user service was active in the follow-up. This current health check does not constitute a new visual dashboard acceptance or a token-savings measurement.", + "returned_result_summary": "2026-09-20 14:17 UTC: /api/health returned HTTP 200 with database 'ok', version '13.2.2', and the retained commit identity. The native user service was active in the follow-up. This current health check does not constitute a new visual dashboard acceptance or a token-savings measurement. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head.", "session_statistics": { "availability": "none", "value": null, @@ -7247,14 +7249,15 @@ "codex": "The current receipt concerns the Desktop parent task; historical SDK/native CLI receipts retain their own labels and scope.", "claude": "A configured export route is distinct from an independently attributed native Claude task; current metrics omit session/account identifiers." }, - "lifecycle_summary": "install: observed_installed; use: accepted_within_scope; persistence: not_established; restart: not_established; cleanup: not_established; recovery: not_established. Existing services were observed, not reinstalled or restarted by the current read-only probes. Preserve retained data and approved native configuration.", + "lifecycle_summary": "install: observed_installed; use: accepted_within_scope; persistence: not_established; restart: not_established; cleanup: not_established; recovery: not_established. Existing services were observed, not reinstalled or restarted by the current read-only probes. Preserve retained data and approved native configuration. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head.", "source_paths": [ "evidence/receipts/current-session-observation-20260920.json", "docs/current-session-observation.md", "observability/README.md", "observability/backends/README.md", "adoption/lifecycle.md", - "blueprints/token-native-focus/saturation-audit.json" + "blueprints/token-native-focus/saturation-audit.json", + "docs/decisions/2026-10-03-currency-wave-w1.md" ], "retained_observations": [ { diff --git a/evidence/artifacts/new-wsl-handbook-20261001/receipt.json b/evidence/artifacts/new-wsl-handbook-20261001/receipt.json index d91816b25..cd9d46b4d 100644 --- a/evidence/artifacts/new-wsl-handbook-20261001/receipt.json +++ b/evidence/artifacts/new-wsl-handbook-20261001/receipt.json @@ -4,10 +4,10 @@ "source_main": "85543efe5abcddb7b7cddb14e8774e83b6758616", "evidence_class": "local_integration", "generator_sha256": "8a66e5eebe1429924d62545e2eee389f1fdd58e6c2f679d8280cec3e99027cf8", - "profile_sha256": "1e191e6cf9f96399bde37894f287fb296ebd08d1d6291914ca9362d7ffc207e9", + "profile_sha256": "9abbb77704c9208d049518368f97786d1ef09060d420c5aebf183ee4575e7632", "outputs": { - "docs/new-wsl-handbook.md": "216c20f07d8283ccbfc47bfe2219a102b53a32caea744d83834ee4f8d0b589a2", - "docs/new-wsl-handbook.json": "de1f2ab30c51683e4b693244d636350e5cbece234e0c3452ecd2f9ca88bebb62" + "docs/new-wsl-handbook.md": "a1ff3d1711b9877896757c12fdbf93690539df42de1e8126ccca670eb05c3d41", + "docs/new-wsl-handbook.json": "e3ee015895db12c686808dede9de52de5c8b77e21d1387d0120c6af0688cb91f" }, "inventory": { "layers": 37, @@ -78,6 +78,18 @@ "docs/new-wsl-handbook.json": "de1f2ab30c51683e4b693244d636350e5cbece234e0c3452ecd2f9ca88bebb62", "docs/new-wsl-handbook.md": "216c20f07d8283ccbfc47bfe2219a102b53a32caea744d83834ee4f8d0b589a2" } + }, + { + "date_utc": "2026-10-05", + "recorded_at_utc": "2026-10-05T05:54:24Z", + "scope": "PR #642 fix round 2: local generated-byte verification after projecting the selected Collector/Grafana scratch/synthetic qualification limits and NativeStack2604 release holds. No host or upstream acceptance is claimed.", + "command": "python3 scripts/build_new_wsl_handbook.py --check", + "native_exit_code": 0, + "returned_status": "passed", + "returned_outputs": { + "docs/new-wsl-handbook.json": "e3ee015895db12c686808dede9de52de5c8b77e21d1387d0120c6af0688cb91f", + "docs/new-wsl-handbook.md": "a1ff3d1711b9877896757c12fdbf93690539df42de1e8126ccca670eb05c3d41" + } } ], "failed_conditions_retained": [ @@ -154,7 +166,9 @@ "evidence/artifacts/new-wsl-clean-install-selection-20261001/ownership.json", "evidence/artifacts/new-wsl-clean-install-selection-20261001/selection.json", "adoption/new-wsl-profile.json", - "docs/decisions/2026-10-01-new-wsl-handbook-generator.md" + "docs/decisions/2026-10-01-new-wsl-handbook-generator.md", + "docs/decisions/2026-10-03-currency-wave-w1.md", + "docs/decisions/2026-10-04-2604-e2e-fix-wave.md" ], - "repair_round": "this PR: bounded job 058, 2026-10-04; hashes regenerated in place, destination acceptance remains owed" + "repair_round": "this PR: bounded job 058, 2026-10-04; hashes regenerated in place, destination acceptance remains owed; PR #642 fix round 2, 2026-10-05: regenerated qualification limits and release holds, hashes refreshed, destination acceptance pending" } diff --git a/evidence/artifacts/new-wsl-install-plan-20261002/README.md b/evidence/artifacts/new-wsl-install-plan-20261002/README.md index fafc8d731..246145cfd 100644 --- a/evidence/artifacts/new-wsl-install-plan-20261002/README.md +++ b/evidence/artifacts/new-wsl-install-plan-20261002/README.md @@ -451,3 +451,11 @@ evidence-registry digests and the upstream-freshness snapshot following the srt ## Integrated fix-wave boundary (2026-10-04) [The coordinator decision](../../../docs/decisions/2026-10-04-2604-e2e-fix-wave.md) records all 25 slot repairs, conflict resolutions, canonical Promptfoo owner-batch reconciliation, sources and remaining host gates. The revised merged recipes are UNRUN on a distribution. Earlier per-row statements are historical; no static integration check certifies the destination. + +## Currency qualification limits (2026-10-05) + +Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). + +Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head. + +The staged native acceptance commands remain unrun by this repair. Neither scratch receipt closes the release holds or proves destination service acceptance. diff --git a/evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md b/evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md index 87abc61ee..5358fb225 100644 --- a/evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md +++ b/evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md @@ -688,3 +688,11 @@ GPT-runtime executor/review records plus an Opus check the coordinator relayed f The earlier job-030 patch/report was inspected; its changed slots do not include these four, so no unrelated hunk was ported. Scoped ai-memory retrieval with pin priority and limit two was unavailable because the MCP call required approval under this job's never-approval policy. Context Mode tools were not exposed in this session's enabled tool list; bounded native reads and RTK handled output. + +## Currency qualification source scope (2026-10-05) + +Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). + +Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head. + +The W1b receipt was read from local Git commit `748f701e1`; it is not a tracked file at this PR head. Source and qualification records were read without network access; no historical commands were replayed. diff --git a/evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json b/evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json index 4b16c55ba..f6fe1a4ff 100644 --- a/evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json +++ b/evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json @@ -2091,7 +2091,7 @@ "$config_root/otel.yaml", "$config_root/observability_config.py" ], - "notes": "G4 source-backed plan repair, UNRUN on a distribution: release v0.162.0 remains the selected checksum-verified tar installation. Installation creates the owned observability/otelcol/queue, collector and sdk-receipts directories; both the service and acceptance use NS2604_OBSERVABILITY_DATA (default ${XDG_DATA_HOME:-$HOME/.local/share}/new-wsl-native-stack/observability). Pristine configurations adopt the existing repository native privacy, metrics, Loki and SDK-receipt pipelines in this PR, adapted to the plan ports. Existing operator pipelines are retained; only the exact /otelcol/queue directory is migrated, with native validation before replacement. file_storage create_directory and directory_permissions=0700 cover a clean install. The measured destination runs ns2604-otelcol-contrib.service, not ecosystem-*; this plan starts no service. The client configuration map already wires both native clients to HTTP21318; acceptance of a fresh destination session remains host work.", + "notes": "Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). G4 source-backed plan repair, UNRUN on a distribution: release v0.162.0 remains the selected checksum-verified tar installation. Installation creates the owned observability/otelcol/queue, collector and sdk-receipts directories; both the service and acceptance use NS2604_OBSERVABILITY_DATA (default ${XDG_DATA_HOME:-$HOME/.local/share}/new-wsl-native-stack/observability). Pristine configurations adopt the existing repository native privacy, metrics, Loki and SDK-receipt pipelines in this PR, adapted to the plan ports. Existing operator pipelines are retained; only the exact /otelcol/queue directory is migrated, with native validation before replacement. file_storage create_directory and directory_permissions=0700 cover a clean install. The measured destination runs ns2604-otelcol-contrib.service, not ecosystem-*; this plan starts no service. The client configuration map already wires both native clients to HTTP21318; acceptance of a fresh destination session remains host work.", "release_asset": { "url": "https://github.com/open-telemetry/opentelemetry-collector-releases/releases/download/v0.162.0/otelcol-contrib_0.162.0_linux_amd64.tar.gz", "sha256": "fcc063749f730f8c21fe29f2d340ff174f5f1c5885bd3156fb6c985a3036fcc3" @@ -2290,7 +2290,7 @@ "$config_root/grafana-token-layer.json", "$config_root/observability_config.py" ], - "notes": "G4 source-backed plan repair, UNRUN on a distribution: verified OSS 13.2.3 tar route remains available with --only grafana. The canonical selection still marks this row split/measurement-only; this bounded job cannot edit owners.json or the definitive manifest. Finalization must explicitly install this slot (and Loki) before service acceptance; the coordinator owns reconciliation of that selection. Native file provisioning installs the token-layer dashboard and the three datasource definitions. All six affected hourly Claude queries retain [1h] and use targets[].interval=1m. Anonymous Viewer is loopback only. Post-install archive/JSON checks are repository integration checks; running native HTTP datasource/query operations provide functional acceptance. Alertmanager acceptance uses the frontend plugin testDatasource /api/v2/status proxy operation, not its unavailable backend health endpoint. After sign-in the existing native SDK worker produces a new sanitized receipt and all six affected Claude plus three SDK-receipt queries must return observed values. No synthetic receipt substitutes for that workload. Counter first-sample undercount remains a separate Prometheus service-start prerequisite; never sum overlapping native counters or cumulative snapshots.", + "notes": "Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head. G4 source-backed plan repair, UNRUN on a distribution: verified OSS 13.2.3 tar route remains available with --only grafana. The canonical selection still marks this row split/measurement-only; this bounded job cannot edit owners.json or the definitive manifest. Finalization must explicitly install this slot (and Loki) before service acceptance; the coordinator owns reconciliation of that selection. Native file provisioning installs the token-layer dashboard and the three datasource definitions. All six affected hourly Claude queries retain [1h] and use targets[].interval=1m. Anonymous Viewer is loopback only. Post-install archive/JSON checks are repository integration checks; running native HTTP datasource/query operations provide functional acceptance. Alertmanager acceptance uses the frontend plugin testDatasource /api/v2/status proxy operation, not its unavailable backend health endpoint. After sign-in the existing native SDK worker produces a new sanitized receipt and all six affected Claude plus three SDK-receipt queries must return observed values. No synthetic receipt substitutes for that workload. Counter first-sample undercount remains a separate Prometheus service-start prerequisite; never sum overlapping native counters or cumulative snapshots.", "release_asset": { "url": "https://dl.grafana.com/grafana/release/13.2.3/grafana_13.2.3_36482603486_linux_amd64.tar.gz", "sha256": "6107ad27016296aac38e0d7ffa8753ab540b5541ad27e94790f771289d733235" diff --git a/manifests/evidence.json b/manifests/evidence.json index e30453dbd..818ed2531 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4786,8 +4786,8 @@ }, { "path": "adoption/new-wsl-profile.json", - "sha256": "1e191e6cf9f96399bde37894f287fb296ebd08d1d6291914ca9362d7ffc207e9", - "bytes": 255165 + "sha256": "9abbb77704c9208d049518368f97786d1ef09060d420c5aebf183ee4575e7632", + "bytes": 257942 }, { "path": "adoption/new-wsl-profile.md", @@ -10457,8 +10457,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "5b53a1c33fafec84d726d43f3d1e5d38b98715fdaae6568f80f93ab8297b68e4", - "bytes": 490790 + "sha256": "dd5ac05c4e75cdd0bec8b68a75a92d781c2d50e2ecb5825651f0b9c2a5e55519", + "bytes": 493000 }, { "path": "blueprints/trials-20260926/README.md", @@ -15842,8 +15842,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "3ed6cd9c113e3eb32275f35418e218e30ac80cbf2148f585914a556129c31b92", - "bytes": 282913 + "sha256": "37ce09420c5b19fbfdde72ca3267e1de0e4c893cf243c1e1b49c0173f6aeb12e", + "bytes": 283832 }, { "path": "catalogs/landscape/us-equities.json", @@ -16607,8 +16607,8 @@ }, { "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "23564630816b2b2d2f5154ce51bc101615134901721e9d13c85a6e062f68a6ed", - "bytes": 44444 + "sha256": "4eda8debcce45b4c85cc1965307b479fcc67b99b0f24d9c4944480097b74a742", + "bytes": 48076 }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", @@ -16852,8 +16852,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "15a129620db4569832c8b8ba9c5a0005cc9eb8d868548d12aad3d2eb02903af6", - "bytes": 41808 + "sha256": "470107a5d1b11f4e701d5b5df52add4f8ab6c6702310ff6511eabb3aa1f6ec9d", + "bytes": 42706 }, { "path": "docs/full-stack-convergence.md", @@ -17032,13 +17032,13 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "de1f2ab30c51683e4b693244d636350e5cbece234e0c3452ecd2f9ca88bebb62", - "bytes": 652209 + "sha256": "e3ee015895db12c686808dede9de52de5c8b77e21d1387d0120c6af0688cb91f", + "bytes": 654194 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "216c20f07d8283ccbfc47bfe2219a102b53a32caea744d83834ee4f8d0b589a2", - "bytes": 354128 + "sha256": "a1ff3d1711b9877896757c12fdbf93690539df42de1e8126ccca670eb05c3d41", + "bytes": 355757 }, { "path": "docs/next-host-stages.md", @@ -17132,8 +17132,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "82ce7ae711f5854533c790b17d09d0322c3c489bbc61977db66ffbe98ed0f8d1", - "bytes": 591301 + "sha256": "bddb9cd4d160bd83517d0445206ce22b3cc88a2324dea6084880213c29a457ea", + "bytes": 593077 }, { "path": "docs/token-efficiency-stack.md", @@ -39092,8 +39092,8 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "50b4fc60487595d935499ff4f4dc6fd7345d1c0c3db14ebb496f6c3c61783a10", - "bytes": 6297 + "sha256": "03d550eda47783274e808d445b3ff9cd3c4abbbe2e248a970213c0ac4a89d79e", + "bytes": 7250 }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/slot-state-and-core-recipes.json", @@ -39102,13 +39102,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md", - "sha256": "6ae1ac928e0c934f97e24411c60b963dd6cbe206a6c7d8b7078eec6d1dc48882", - "bytes": 64583 + "sha256": "7a383117b48c5d5499ced80c623a1753d43bfe1e8681d568fdb679f68c5f43ab", + "bytes": 65583 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md", - "sha256": "3d479addd11d1537b556b67dc01519b4f9e6e81220492d91774ea384695e1bc5", - "bytes": 141789 + "sha256": "f487bf9fec9c4c668984302e45c5b23e22928993b47b28fecfcab9e2171036a8", + "bytes": 142844 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/VALIDATION.md", @@ -39382,8 +39382,8 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json", - "sha256": "0a1bd2c6040bb71d53fccc67cae54c0004c92bd85b866d0520012b1fe35d4bc9", - "bytes": 314095 + "sha256": "cf8df4a8b72059b8a7ab97d13aa283dcdc8f8c076b3a465d3ea00e823a36d93d", + "bytes": 314887 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install.sh", @@ -52602,13 +52602,13 @@ }, { "path": "manifests/stack.json", - "sha256": "bc2c9cd103354c2bfb453ec5bd5247ba844930fe2b97de42de6e7aec4d4dec00", - "bytes": 105044 + "sha256": "399e009403bbf4c32174d9c704aae3a7f26ea2b5625d7486ec572639f146b4b9", + "bytes": 105662 }, { "path": "observability/README.md", - "sha256": "64e714cc5708df81bf8931ea84b02d3ff4536e136da665fa0c8670d2d56be203", - "bytes": 16029 + "sha256": "adbefdbdb1f427f172c8d4b4899aaf188bf5c50e8861d117c74705d07738a38f", + "bytes": 16714 }, { "path": "observability/backends/README.md", @@ -52707,8 +52707,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "d0ec9824b54c8d8433b7e0dbb5279c9f4d089112944e1dab77ee76c7a4afa526", - "bytes": 45613 + "sha256": "b6e15fabde242bf7e16c9a67e12e78dc5463bbe978aed5fb6ac8eec8c5df22bf", + "bytes": 46135 }, { "path": "observability/collector/claude-settings.json.example", diff --git a/manifests/stack.json b/manifests/stack.json index 3b946474a..c4e9a0b77 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -1125,7 +1125,7 @@ "https://github.com/open-telemetry/opentelemetry-collector-contrib", "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.161.0 receipts retain their original scope." + "freshness": "Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The recorded scratch version and validate commands exited 0; no host service was switched. Prior 0.161.0 receipts retain their original scope. The dated upstream metadata is in catalogs/landscape/upstream-snapshot.json." }, { "id": "prometheus", @@ -1233,7 +1233,7 @@ "upstream_sources": [ "https://github.com/grafana/grafana" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head." }, { "id": "alertmanager", diff --git a/observability/README.md b/observability/README.md index 4f119e0b1..2d0d33077 100644 --- a/observability/README.md +++ b/observability/README.md @@ -28,11 +28,13 @@ notifications. [Machine-readable evidence](receipt.json) records the exact scope | Context and accounting | mksglu/context-mode; rtk-ai/rtk; ccusage/ccusage | Context/output estimates separate from native usage; scoped retrieval rather than full-log ingestion | | Memory and retrieval | akitaonrails/ai-memory; SocratiCode; qdrant/qdrant; vllm-project/vllm; QMD | Prior memory/RAG acceptance plus current service metrics; no new universal memory index | | Collection (deployed) | open-telemetry/opentelemetry-collector-contrib 0.161.0 | The live traffic, restart and retained-storage receipts above belong to this deployed version; one Collector process uses core/contrib components and retains selected private correlation IDs | -| Collection (selected) | open-telemetry/opentelemetry-collector-contrib 0.162.0 | [W1 scratch qualification](../evidence/receipts/otelcol-contrib-0162-qualification-20261003.json) covers version and configuration validation; no host service was switched, and runtime acceptance remains pending | +| Collection (selected) | open-telemetry/opentelemetry-collector-contrib 0.162.0 | Selected; qualified on scratch/synthetic validation only ([receipt:11-15](../evidence/receipts/otelcol-contrib-0162-qualification-20261003.json#L11-L15)); host acceptance pending. No host service was switched. NativeStack2604 release hold: release-tag build-and-test failed ([record](../docs/decisions/2026-10-04-2604-e2e-fix-wave.md#L117)) | | Storage and viewing | prometheus/prometheus 3.14.0; grafana/loki 3.7.8; grafana/grafana 13.2.2 | Native queries, dashboard, bounded retention and restart acceptance | | Alert delivery | prometheus/alertmanager 0.34.1; binwiederhier/ntfy 2.28.0 | Native webhook and bundled ntfy template; local inbox only | | Workflow/research | Dagu; DeerFlow; native Astra SDK; LEAN | Existing execution receipts plus local service observation; no connected broker | +Grafana 13.2.3 remains the WSL profile/install-plan selection; qualified on scratch/synthetic validation only ([W1b receipt:11-14](https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14)); host acceptance pending. The NativeStack2604 release hold names `grafana/grafana#133835` and `#133856` ([record](../docs/decisions/2026-10-04-2604-e2e-fix-wave.md#L117)). The deployed-version evidence and host-stack selection above remain 13.2.2. + See the [453-repository landscape index](../catalogs/us-equities/repository-index.md) for all recorded identities, including 337 freshly rechecked public stars. Its 152 detailed cards represent 147 distinct repositories. Inclusion is not diff --git a/observability/collector/README.md b/observability/collector/README.md index 557599b29..da0cdf652 100644 --- a/observability/collector/README.md +++ b/observability/collector/README.md @@ -5,6 +5,8 @@ Pinned distribution: `otelcol-contrib` **0.162.0**, Linux amd64, from the offici Archive SHA256: `fcc063749f730f8c21fe29f2d340ff174f5f1c5885bd3156fb6c985a3036fcc3`. The downloaded publisher `.sha256` file matched before extraction. The [2026-10-03 scratch qualification](../../evidence/receipts/otelcol-contrib-0162-qualification-20261003.json) ran `--version` and `validate`. The [R642 native checks](../../evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json) also exercise the current logs, metrics and SDK fixtures on 0.162.0 with zero native skips; earlier dated runtime observations retain their 0.161.0 scope. No host service was switched. +Selected 0.162.0; qualified on scratch/synthetic validation only ([receipt:11-15](../../evidence/receipts/otelcol-contrib-0162-qualification-20261003.json#L11-L15)); host acceptance pending. The R642 log/metric/SDK fixtures are synthetic integration checks. NativeStack2604 retains a release hold for the failed release-tag build-and-test ([record](../../docs/decisions/2026-10-04-2604-e2e-fix-wave.md#L117)); scratch validation does not close that hold. + These are upstream installation commands for a new explicit installation path. Do not overwrite an existing installation or customized configuration. @@ -34,7 +36,7 @@ export ECOSYSTEM_OBSERVABILITY_DATA="$STACK_DATA_ROOT" For persistent hosting, install the [user-service example](ecosystem-otelcol.service.example) with explicit absolute paths substituted for `@COLLECTOR_INSTALL_DIR@`, `@CONFIG_ROOT@`, and `@DATA_ROOT@`, then use native `systemctl --user enable --now`. -The active acceptance service uses this layout and `UMask=0077`. +The historical 0.161.0 acceptance service used this layout and `UMask=0077`; the selected 0.162.0 host acceptance remains pending. Ports: OTLP HTTP14318, OTLP gRPC14317, readiness14333, native metrics18889, Collector self-metrics18888. Every listener is loopback. Logs go to native Loki From f4a1ee7bb291a9017821a7869fa4278f9c30b11a Mon Sep 17 00:00:00 2001 From: Scout Date: Mon, 5 Oct 2026 02:05:55 -0400 Subject: [PATCH 30/50] Hot-file protocol: reset manifests/evidence.json manifests/stack.json to the merge base before the final hot-file commit Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 6010 +++++++++++++++++++-------------------- manifests/stack.json | 81 +- 2 files changed, 2919 insertions(+), 3172 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 818ed2531..3952640a2 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -2,791 +2,518 @@ "schema_version": 1, "receipts": [ { - "id": "adaptive-paper-practice-20260921", + "id": "memory-lifecycle-probe-20260921", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "claude-code", - "codex" + "ai-memory" ], - "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", + "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", "limitations": [ - "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", - "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", - "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", - "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." + "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", + "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", + "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", + "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", + "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", + "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." ], - "path": "evidence/receipts/adaptive-paper-practice-20260921.json" + "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" }, { - "id": "adoption-macos-hosted-smoke-20260922", - "kind": "native_cli_e2e", + "id": "catalog-runtime-review-20260921", + "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "dagu" ], - "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", + "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", "limitations": [ - "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", - "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", - "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", - "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", - "socraticode is the profile's documented unpinned skip and was not installed." + "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", + "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", + "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" + "path": "evidence/receipts/catalog-runtime-review-20260921.json" }, { - "id": "adoption-macos-hosted-smoke-20260923", + "id": "catalog-clean-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "codex" ], - "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", + "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", "limitations": [ - "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", - "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", - "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", - "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." + "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", + "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", + "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" + "path": "evidence/receipts/catalog-clean-install-20260921.json" }, { - "id": "agent-browser-lna-20260930", - "kind": "artifact_measurement", + "id": "dashboard-gap-resolution-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "playwright-test" + "ai-memory", + "codex", + "claude-code", + "agentsview", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo", + "vllm" ], - "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", + "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", "limitations": [ - "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", - "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", - "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", - "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." + "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", + "Fresh PreCompact event and active Desktop session end remain unforced.", + "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", + "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", + "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", + "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." ], - "path": "evidence/receipts/agent-browser-lna-20260930.json" + "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" }, { - "id": "ai-memory-240-qualification-20260925", + "id": "dashboard-render-e2e-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "ai-memory", + "qdrant", + "socraticode", + "serena", + "agentsview", + "dagu", + "omniroute", + "agent-browser", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", + "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", - "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", - "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", - "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", - "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", - "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", - "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." + "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", + "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", + "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", + "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", + "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", + "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", + "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." ], - "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" + "path": "evidence/receipts/dashboard-render-e2e-20260921.json" }, { - "id": "ai-memory-241-qualification-20260925", + "id": "hf-memory-models-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "ai-memory", + "socraticode", + "vllm", + "grafana" ], - "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", + "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", - "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", - "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", - "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", - "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", - "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", - "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." + "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", + "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", + "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", + "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", + "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", + "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." ], - "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" + "path": "evidence/receipts/hf-memory-models-20260921.json" }, { - "path": "blueprints/us-equities/state-recovery/memory/receipt.json", - "id": "ai-memory-native-state-recovery-20260919", + "id": "native-memory-rag-alignment-20260921", "kind": "native_cli_e2e", "component_ids": [ "ai-memory", - "restic" + "socraticode", + "qdrant", + "qmd", + "vllm", + "grafana", + "loki" ], - "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", + "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", "limitations": [ - "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", - "38 pages table rows include historical versions, not 38 current pages.", - "Native backup excludes raw/, model caches, logs and external native session transcripts.", - "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", - "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", - "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." - ] + "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", + "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", + "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", + "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", + "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", + "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", + "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." + ], + "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" }, { - "path": "blueprints/us-equities/order-contract/receipt.json", - "id": "alpaca-offline-order-contract-20260919", + "id": "native-returned-results-20260921", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py" + "codex", + "claude-code", + "rtk", + "context-mode", + "qmd", + "serena", + "ai-memory", + "socraticode", + "qdrant", + "agentsview", + "grafana", + "loki", + "prometheus", + "dagu", + "ntfy", + "omniroute", + "agent-browser", + "promptfoo", + "headroom", + "jcodemunch-mcp" ], - "claim": "Installed alpaca-py request models silently dropped synthetic advanced fields; this explicit broker-disconnected basic-intent boundary rejected those inputs and eight additional negative cases while preserving canonical decimal strings.", + "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", "limitations": [ - "Local contract is not wired into unrelated SDK calls or existing workers; explicit future adapter adoption is required.", - "No broker account, key, asset lookup, risk approval, live/paper order or provider wire behavior was exercised.", - "Whole-share basic create-intent subset only; advanced, replacement, cancellation, retries, order journals and reconciliation remain gated.", - "Input representation cap and symbol/client-ID syntax are local conservative policies, not provider or risk authorization.", - "Python SDK float conversion is observed; the canonical exact decimal envelope is deliberately not serialized through those float fields.", - "JavaScript advanced support is pinned-source evidence only; no alternative SDK was installed or executed.", - "Python audit events and the Linux namespace substantiate this scoped probe, not a universal sandbox or macOS acceptance.", - "Canonical content hashes do not establish client-ID uniqueness, deduplication or safe retry semantics.", - "No token-saving claim or model inference belongs to this deterministic task." - ] + "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", + "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", + "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", + "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", + "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", + "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", + "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", + "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", + "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." + ], + "path": "evidence/receipts/native-returned-results-20260921.json" }, { - "id": "alpaca-paper-e2e-20260921", + "id": "native-workflow-writing-comparison-20260921", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", "claude-code" ], - "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", + "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", "limitations": [ - "One operational smoke trial, not profitable strategy or continuous trading acceptance.", - "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", - "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." + "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", + "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", + "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." ], - "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" + "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" }, { - "id": "artifact-reductions", - "path": "evidence/receipts/artifact-reductions.json", - "kind": "artifact_measurement", + "id": "native-workflow-graceful-recovery-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "socraticode", - "openresearch", - "context-mode" + "claude-code" ], - "claim": "Recorded exact selected-text reductions, distinct from model usage.", + "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", "limitations": [ - "Lossy selections compare retained text to full-file/paper counterfactuals.", - "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." - ] + "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", + "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", + "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", + "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." + ], + "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" }, { - "id": "broad-universe-research-20260921", + "id": "portable-userspace-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "duckdb", - "claude-code", - "codex" + "rtk", + "qmd", + "repomix", + "toon", + "codex", + "claude-code" ], - "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", + "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", "limitations": [ - "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", - "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", - "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", - "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", - "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." + "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", + "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", + "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", + "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", + "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", + "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", + "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", + "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", + "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." ], - "path": "evidence/receipts/broad-universe-research-20260921.json" + "path": "evidence/receipts/portable-userspace-install-20260921.json" }, { - "id": "canary-proof-verification-20261001", - "kind": "artifact_measurement", + "id": "claude-selective-context-pilot-20260921", + "kind": "native_model_e2e", "component_ids": [ "claude-code", - "codex", - "systemd" + "context-mode" ], - "claim": "The canary proof tool (tools/credentials/canary_proof.py, 1,834 lines, with the contained scan worker tools/credentials/canary_scan_worker.py, 2,114 lines) passed its synthetic acceptance on the workstation on 2026-10-01 on main with the K4 guard: its unit suite ran 143 tests, OK, with none skipped (including 12 cases that start transient systemd user scopes); its mutation runner killed 138 of 138 mutants by failures of their named permanent tests after 90 passing unmutated runs; and the credential, guard, Codex worker-lane and pre-commit suites ran 531 tests with one failure by design (the installed host copy of the guard). The tool plants a unique synthetic canary, lets named consumers use it through the key runner, and searches the named sinks with ripgrep in a worker that runs in a finite systemd user scope; its classifier refuses unless every required check has a fresh, complete result bound to the run. Reviews: a read-only GPT-6 verification found seven paths to a false clean verdict and four high findings, and an Opus build review found one blocking gap in the contract's acceptance cases; one repair round by a GPT-6 runtime worker fixed them, each with a permanent test and a mutant; an Opus re-check confirmed 37 of 42 dispositions and found one more false-clean path (a Git object store with no HEAD, refs or .git name, reached directly) and a record-validation defect, which one bounded fix round closed with tests and mutants. No end-to-end proof has run: it is the new distribution's acceptance after its guard install.", + "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", "limitations": [ - "Synthetic acceptance only: every sink, canary, Git store, SQLite database and journal in these runs is a fixture the tests build under a temporary directory; no real consumer, transcript, log, journal or credential was used, and no proof claim is made before the end-to-end run.", - "Containment evidence is workstation scope enforcement: the real-scope classes start transient systemd user scopes on this host (12 cases, all passing); hosted CI runners skip them where no user scope exists.", - "Scanner: ripgrep 14.1.0 is the executed version; the runtime also accepts 15.2.0 on a source-reviewed output grammar that no run has executed.", - "Size: the implementation (3,948 coordinator and worker lines) and the permanent test file (3,632 lines) exceed the contract's ceilings (1,800 and 2,800); the coordinator accepted the deviation for the required coverage and containment logic, and the reviews' dead-code findings were removed.", - "Residuals from the Opus re-check, recorded in the decision record: a completed but too-early or stale final is labelled requested_incomplete; the WAL/SHM-without-valid-main guard, Walk.covered's exclusion, time, special-file and symlinked-parent branches, and several O12 changes have no test of their own; three mutants are missing (END count/aux, --text, a count-based Git reconcile); bind_scope's refusal paths and the real scope_populated parser are untested; the scan's exit code still comes from events it does not validate.", - "Evidence classes differ: the unit, mutation and suite runs were made by the coordinator on the final head outside any sandbox; the reviews are read-only cross-family reads, not proofs." + "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", + "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", + "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", + "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", + "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", + "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", + "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", + "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." ], - "path": "evidence/receipts/canary-proof-verification-20261001.json" + "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" }, { - "id": "catalog-clean-install-20260921", + "id": "native-dashboard-data-20260921", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "ai-memory", + "socraticode", + "qmd", + "qdrant", + "agentsview", + "grafana", + "loki", + "rtk", + "context-mode", + "headroom", + "jcodemunch-mcp", + "promptfoo", + "serena", + "systemd" ], - "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", + "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", "limitations": [ - "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", - "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", - "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." + "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", + "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", + "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", + "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", + "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", + "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", + "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", + "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", + "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." ], - "path": "evidence/receipts/catalog-clean-install-20260921.json" + "path": "evidence/receipts/native-dashboard-data-20260921.json" }, { - "id": "catalog-freshness-20260923", - "kind": "upstream_provenance", + "id": "foundation-closure-20260921", + "kind": "native_cli_e2e", "component_ids": [ "claude-code", "codex", - "llama-cpp", - "mcp-inspector", - "openresearch", - "skfolio" + "affaan-m/ECC", + "context-mode" ], - "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", + "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", "limitations": [ - "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", - "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", - "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", - "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." + "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", + "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", + "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", + "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", + "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", + "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", + "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", + "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." ], - "path": "evidence/receipts/catalog-freshness-20260923.json" + "path": "evidence/receipts/foundation-closure-20260921.json" }, { - "id": "catalog-runtime-review-20260921", - "kind": "native_model_e2e", + "id": "native-quality-defaults-20260920", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "dagu" + "claude-code" ], - "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", + "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", "limitations": [ - "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", - "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", - "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." + "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", + "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", + "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", + "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", + "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." ], - "path": "evidence/receipts/catalog-runtime-review-20260921.json" + "path": "evidence/receipts/native-quality-defaults-20260920.json" }, { - "id": "ccusage-20026-qualification-20260927", + "id": "native-terminal-profiles-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ccusage" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", - "limitations": [ - "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", - "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", - "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", - "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", - "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", - "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", - "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", - "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", - "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", - "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", - "New hosts receive this pin only after the next release tag." - ], - "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" - }, - { - "id": "claude-advisor-usage-scan-20260928", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code" + "codex", + "claude-code", + "qdrant", + "vllm" ], - "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", + "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", - "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", - "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", - "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", - "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", - "Whether ccusage or ecosystem-token-report count these entries was not checked." + "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", + "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", + "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", + "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", + "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." ], - "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" + "path": "evidence/receipts/native-terminal-profiles-20260920.json" }, { - "id": "claude-foundation-finalization-20260921", - "kind": "native_model_e2e", + "id": "native-claude-profile-20260920", + "kind": "native_cli_e2e", "component_ids": [ "claude-code", "codex", - "agent-browser", - "repomix" + "affaan-m/ECC", + "context-mode", + "rtk" ], - "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", + "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", "limitations": [ - "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", - "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", - "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", - "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." + "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", + "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", + "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", + "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", + "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", + "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", + "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", + "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", + "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." ], - "path": "evidence/receipts/claude-foundation-finalization-20260921.json" + "path": "evidence/receipts/native-claude-profile-20260920.json" }, { - "id": "claude-host-practice-readback-20260928", + "id": "native-offhost-restic-20260920", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "claude-hud", - "headroom", - "mcporter", - "jcodemunch-mcp", - "agent-browser", - "qmd" + "restic" ], - "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", + "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", "limitations": [ - "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", - "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", - "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", - "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", - "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", - "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", - "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." + "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", + "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", + "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", + "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", + "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", + "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." ], - "path": "evidence/receipts/claude-host-practice-readback-20260928.json" + "path": "evidence/receipts/native-offhost-restic-20260920.json" }, { - "id": "claude-hud-0100-qualification-20261003", + "id": "native-dagu-retry-tests-20260920", "kind": "native_cli_e2e", "component_ids": [ - "claude-hud" + "dagu" ], - "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", "limitations": [ - "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", - "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", - "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", + "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", + "No broker/provider operations or token savings were measured.", + "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" }, { - "id": "claude-hud-0100-qualification-20261004", - "kind": "native_cli_e2e", + "id": "native-token-stack-final-20260920", + "kind": "native_model_e2e", "component_ids": [ - "claude-hud" - ], - "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed claude-hud 0.10.0 from tag v0.10.0 through native Claude plugin commands after an initial marketplace-source mismatch failed. Native marketplace remove/add and plugin install succeeded; plugin list showed version 0.10.0 enabled at user scope. Direct and configured statusline commands rendered a sample payload with exit 0. This is historical plugin and sample-render evidence, not a new interactive terminal session or model run.", - "limitations": [ - "No macOS execution and no upstream test suite run. There are no release assets for this tag; the supported installation remains a native Claude Code plugin, not a tarball bootstrap kind.", - "First marketplace add failed with exit 1 due to the old source entry; native remove/add/install recovered it. Sample statusline rendering does not establish a fresh interactive Claude session or provider usage.", - "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." - ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" - }, - { - "id": "claude-max-default-effort-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", - "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", - "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", - "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", - "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", - "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", - "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", - "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." - ], - "path": "evidence/receipts/claude-max-default-effort-20260929.json" - }, - { - "id": "claude-model-effort-probes-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", - "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", - "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", - "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", - "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." - ], - "path": "evidence/receipts/claude-model-effort-probes-20260929.json" - }, - { - "id": "claude-project-effort-flag-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", - "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", - "The Ultracode reminder is an indicator, not proof of workflow orchestration.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." - ], - "path": "evidence/receipts/claude-project-effort-flag-20260929.json" - }, - { - "id": "claude-repository-evidence-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "alpaca-py", - "ast-grep", - "beads", - "ccusage", "claude-code", - "claude-hud", "codex", - "codex-for-claude", - "context-hub", "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "duckdb", - "edgartools", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nautilus-trader", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "pandas", - "playwright-cli", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "restic", + "headroom", "rtk", - "sandbox-runtime", - "serena", - "shellcheck", - "skfolio", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "opentelemetry-collector-contrib", + "loki", + "prometheus" ], - "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", + "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", "limitations": [ - "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", - "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", - "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", - "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", - "Superseded observations, including the author's own probe and invocation errors, remain recorded." + "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", + "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", + "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", + "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", + "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", + "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", + "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", + "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." ], - "path": "evidence/receipts/claude-repository-evidence-20260921.json" + "path": "evidence/receipts/native-token-stack-final-20260920.json" }, { - "id": "claude-selective-context-pilot-20260921", + "id": "native-rag", + "path": "evidence/receipts/native-rag.json", "kind": "native_model_e2e", "component_ids": [ - "claude-code", - "context-mode" - ], - "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", - "limitations": [ - "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", - "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", - "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", - "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", - "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", - "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", - "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", - "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." - ], - "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" - }, - { - "id": "claude-spend-attribution-20260929", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code", - "ccusage" - ], - "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", - "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", - "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", - "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", - "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", - "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", - "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", - "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", - "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", - "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", - "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." - ], - "path": "evidence/receipts/claude-spend-attribution-20260929.json" - }, - { - "id": "claude-spend-window-20261004", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code", - "ccusage", - "context-mode" - ], - "claim": "Retained Claude-only ccusage daily costs rise from $2,823.79 and $2,427.25 on October 1/2 to $5,940.56 on October 3. The supplied executor window comparison reproduces exactly from count-only scanner outputs: IET per 24 h rises 2.121 times, counted call rows 2.419 times, and subagents started 2.824 times, while mean context per call falls from 271,790 to 216,230 tokens. The unfiltered retained session-view export is $12,404.88 and its workflow share is 61.402%; removing 17 rows with pre-10-03 last activity leaves $11,151.92, with coordinator-tree shares 63.296% and 33.787%. These are session-selection views, not spend since 10-03. Net pre-first-call attachment growth excluding UI is about 2.9 KB (0.8K rough tokens), rather than the positive-only 4.3 KB (1.2K) estimate. These are scoped observations, not subscription charges or a quality comparison. Adding the retained advisor-cohort estimate gives 830.270M and 1,777.960M IET per 24 h (2.141 times); all 689 A and 1,209 B advisor iterations in those cohorts used Fable. Fable is $2,092.87, or 35.230% of priced Claude dollars on 10-03. The user subsequently selected an Opus 5.5 advisor.", - "limitations": [ - "API-equivalent prices are not the subscription meter. ccusage leaves claude-sonnet-5-5 unpriced; its dollars therefore do not price every counted Claude model.", - "ccusage days are local time and Prometheus days are UTC. These scopes and the scanner windows must not be summed or equated.", - "Prometheus keeps one week; this retained export starts with the UTC day 2026-09-27 and ends with 2026-10-03.", - "The attr byte shares use unfitted weights, so they show direction only; receipt context shares exclude UI records before normalization.", - "The hook_success records are UI-only and are not counted as context. Pre-first-call attachment sizes are serialized metadata bytes, not exact model input or tokenization.", - "NativeStack only, because NativeStack2604's telemetry has no listener. This scope is the coordinator's stated observation boundary, not a new listener check.", - "10-04 is a partial day. The scanner ends at 14:00Z; no full-day projection is a measured total.", - "This is a re-derivation of retained native outputs and scanner aggregates, not a new provider/model run, an upstream acceptance test, or a quality/savings A/B.", - "window_compare.py includes synthetic zero-usage rows in its call counts and uses per-field maximum deduplication. Its subagent calls-per-file statistic spans each selected file, whereas its call and IET windows filter call timestamps.", - "Window hook text is not retained in the aggregate inputs. Historical hook-text estimates are reported as estimates; current installed carrier and upstream static hook sizes are distinct observations and do not establish historical hook outputs.", - "The unfiltered session export includes pre-10-03 activity: 17 rows worth $1,252.96 have lastActivity before 2026-10-03T04:00Z. The raw and activity-selected shares have different denominators. Filtering lastActivity does not restrict the dates of every token in a session total; neither view is established as spend since 10-03.", - "The reproduction artifact extends the supplied analysis with advisor-cohort rows. Original executor output is unchanged. Its private raw output includes source identifiers; only sanitized aggregates are retained here.", - "Advisor iterations are absent from calls.tsv and retained only as per-file tot values in files.jsonl. Grouping them by file first_ts reproduces the reviewed cohorts, but files can cross window boundaries. Executor-plus-advisor-cohort IET is an estimate with mixed timestamp scopes, not an exact call-window total; advisor iterations have no recorded effort here.", - "IET applies the same coefficients to every model: input 1, cache read 0.1, five-minute and unclassified cache writes 1.25, one-hour cache writes 2, and output 5, with thinking already in output. There is no model-specific base-price multiplier. Advisor aggregates lack cache-write duration splits and weight all cache writes at 1.25. Thus IET model shares and window ratios are relative-index measures, not dollar shares or actual spend ratios; Fable dollars from ccusage remain separate. Historical Fable usage precedes the new Opus advisor decision." - ], - "path": "evidence/receipts/claude-spend-window-20261004.json" - }, - { - "id": "claude-upstream-checks-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "ast-grep", - "beads", - "ccusage", - "claude-code", "codex", - "codex-for-claude", - "context-mode", - "dagu", - "difftastic", - "gitleaks", - "grafana", - "headroom", - "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcporter", - "nautilus-trader", - "openresearch", - "opentelemetry-collector-contrib", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "rtk", - "serena", + "claude-code", "socraticode", - "tavily-cli", - "toon", + "qdrant", "vllm", - "worktrunk", - "zizmor" - ], - "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", - "limitations": [ - "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", - "Complete originals remain private; public excerpts are bounded and sanitized.", - "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." - ], - "path": "evidence/receipts/claude-upstream-checks-20260921.json" - }, - { - "id": "codex-01571-qualification-20260926", - "kind": "native_cli_e2e", - "component_ids": [ - "codex" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", - "limitations": [ - "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", - "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", - "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", - "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", - "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", - "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", - "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", - "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", - "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", - "Linux x86_64 only, one host; nothing here is macOS evidence." - ], - "path": "evidence/receipts/codex-01571-qualification-20260926.json" - }, - { - "id": "codex-01592-qualification-20260930", - "kind": "native_cli_e2e", - "component_ids": [ - "codex" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", - "limitations": [ - "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", - "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", - "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", - "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", - "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", - "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", - "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", - "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", - "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", - "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", - "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", - "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", - "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", - "Linux x86_64 only, one host; nothing here is macOS evidence." - ], - "path": "evidence/receipts/codex-01592-qualification-20260930.json" - }, - { - "id": "codex-01593-hindsight-native-memory-20261001", - "kind": "native_cli_e2e", - "component_ids": [ - "codex" + "huggingface-hub-native" ], - "claim": "Fresh native Codex automatic capture and independent recollection from the selected Hindsight bank passed in both headless exec and daemon-backed interactive resume/queue paths.", + "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", "limitations": [ - "Two invented canaries and their record budgets are explicitly synthetic, not project policy, market data or trading acceptance.", - "This is supported native command/API execution with synthetic inputs and independent observation, not an executed upstream Docker or Cargo test suite.", - "Headless exec and daemon-backed TUI are distinct paths; each has its own fresh provider-backed observations below.", - "Knowledge-page search completed but did not contain either canary. Native Hindsight reflect supplied the correct values; page population or cron refresh is not qualified here.", - "Backend seed/survey completion was not established. Native status reported synced=false with active operations; the coordinator separately owns seed-job recovery.", - "Native model token usage excludes Hindsight backend extraction/reflection usage. Backend usage and monetary cost are unknown.", - "No production-quality or token-efficiency comparison is claimed, and no unrelated session or authentication store was read." - ], - "path": "evidence/receipts/codex-01593-hindsight-native-memory-20261001.json" + "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", + "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." + ] }, { - "id": "codex-01593-native-queue-20261001", - "kind": "native_cli_e2e", + "id": "native-memory", + "path": "evidence/receipts/native-memory.json", + "kind": "native_model_e2e", "component_ids": [ - "codex" + "ai-memory", + "codex", + "claude-code" ], - "claim": "Fresh provider-backed native queue delivery succeeded while the owned daemon-backed thread was idle, while a preceding turn was busy, and after its TUI disconnected and resumed. Three official Hindsight hook definitions were individually trusted through the native UI.", + "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", "limitations": [ - "Synthetic messaging inputs qualify these native operations, not production task quality or the whole ecosystem.", - "No upstream Cargo test suite was run; upstream test sources were reviewed and native commands were exercised.", - "No daemon restart was attempted during live qualification, and no unrelated session was inspected or interrupted.", - "Queue delivery to a concurrently running embedded receiver, cross-family bridge delivery, cross-account isolation, remote hosts, and Hindsight retrieval/retention are outside this receipt.", - "Hindsight capture remained disabled during hook trust. Hook trust is not memory acceptance.", - "Provider monetary cost is unknown. Native usage counters do not establish improvement against another configuration." - ], - "path": "evidence/receipts/codex-01593-native-queue-20261001.json" + "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", + "No historical archive backfill or LLM/embedding consolidation pipeline enabled." + ] }, { - "id": "codex-desktop-live-20260920", - "kind": "native_cli_e2e", + "id": "native-context-memory", + "path": "evidence/receipts/native-context-memory.json", + "kind": "native_model_e2e", "component_ids": [ "codex", + "claude-code", "context-mode", - "jcodemunch-mcp", "serena", - "ai-memory", - "socraticode", - "rtk", - "headroom", - "qmd", - "loki", - "prometheus" + "rtk" ], - "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", + "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", "limitations": [ - "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", - "Tools without native savings ledgers remain unavailable, not zero.", - "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", - "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", - "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", - "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", - "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", - "No fresh Prometheus turn sample in the selected window; no three-way observation join." - ], - "path": "evidence/receipts/codex-desktop-live-20260920.json" + "Earlier Serena/RTK run uses its original CLI version.", + "PreCompact was not induced; current Desktop catalog is distinct from child native clients." + ] }, { - "id": "codex-session-environment-20260920", + "id": "runtime-tools", + "path": "evidence/receipts/runtime-tools.json", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "context-mode", - "jcodemunch-mcp", - "serena", - "ai-memory", - "socraticode" + "gitleaks", + "sandbox-runtime" ], - "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", + "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", "limitations": [ - "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", - "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", - "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", - "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", - "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", - "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", - "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." - ], - "path": "evidence/receipts/codex-session-environment-20260920.json" + "No claim of full security certification.", + "Sandbox network denial configured but not separately exercised." + ] }, { - "id": "codex-shell-snapshot-cleanup-20260930", + "id": "artifact-reductions", + "path": "evidence/receipts/artifact-reductions.json", "kind": "artifact_measurement", "component_ids": [ - "codex" + "rtk", + "socraticode", + "openresearch", + "context-mode" ], - "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", + "claim": "Recorded exact selected-text reductions, distinct from model usage.", "limitations": [ - "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", - "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", - "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", - "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." - ], - "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" + "Lossy selections compare retained text to full-file/paper counterfactuals.", + "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." + ] }, { "id": "component-history", @@ -837,116 +564,61 @@ ] }, { - "id": "cross-family-review-terminal-lane-20260930", + "id": "native-cli-gaps", + "path": "evidence/receipts/native-cli-gaps.json", "kind": "native_model_e2e", "component_ids": [ - "codex", - "omniroute", - "claude-code" + "qmd", + "codebase-memory-mcp", + "agent-browser" ], - "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", + "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", - "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", - "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", - "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", - "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", - "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", - "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." - ], - "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" + "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", + "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." + ] }, { - "id": "current-session-observation-20260920", + "id": "worktrunk-list", + "path": "evidence/receipts/worktrunk-list.json", "kind": "native_cli_e2e", "component_ids": [ - "agentsview", - "ai-memory", - "alertmanager", - "ccusage", - "claude-hud", - "context-mode", - "grafana", - "headroom", - "jcodemunch-mcp", - "loki", - "mcporter", - "ntfy", - "opentelemetry-collector-contrib", - "otel-tui", - "prometheus", - "rtk", - "serena", - "socraticode" + "worktrunk" ], - "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", + "claim": "Native wt list enumerated the actual publication worktree set.", "limitations": [ - "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", - "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", - "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", - "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", - "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", - "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", - "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", - "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." - ], - "path": "evidence/receipts/current-session-observation-20260920.json" + "Model-free repository inventory, not multi-agent correctness." + ] }, { - "id": "dashboard-gap-resolution-20260921", - "kind": "native_cli_e2e", + "id": "desktop-direct-rag", + "kind": "native_model_e2e", "component_ids": [ - "ai-memory", - "codex", - "claude-code", - "agentsview", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo", - "vllm" + "socraticode", + "qdrant", + "vllm", + "ai-memory" ], - "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", + "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", "limitations": [ - "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", - "Fresh PreCompact event and active Desktop session end remain unforced.", - "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", - "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", - "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", - "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." + "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", + "No whole-task provider usage/savings attribution is claimed." ], - "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" + "path": "evidence/receipts/desktop-direct-rag.json" }, { - "id": "dashboard-render-e2e-20260921", - "kind": "native_cli_e2e", + "id": "vllm-compatibility", + "kind": "compatibility_attempt", "component_ids": [ - "ai-memory", - "qdrant", - "socraticode", - "serena", - "agentsview", - "dagu", - "omniroute", - "agent-browser", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo" + "vllm", + "socraticode" ], - "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", + "claim": "Latest vLLM0.29.0 native install succeeded but GPU startup failed on WSL; publisher-validated0.25.0 restored and direct retrieval passed.", "limitations": [ - "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", - "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", - "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", - "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", - "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", - "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", - "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." + "This is a host-specific failure, not a claim0.29is universally unusable.", + "The resolver success does not establish GPU/runtime compatibility." ], - "path": "evidence/receipts/dashboard-render-e2e-20260921.json" + "path": "evidence/receipts/vllm-compatibility.json" }, { "id": "desktop-cli-workflows", @@ -965,20 +637,72 @@ "path": "evidence/receipts/desktop-cli-workflows.json" }, { - "id": "desktop-direct-rag", + "id": "portable-cli-artifacts", + "kind": "native_cli_e2e", + "component_ids": [ + "shellcheck", + "difftastic", + "markitdown", + "ast-grep", + "toon", + "repomix" + ], + "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", + "limitations": [ + "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", + "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." + ], + "path": "evidence/receipts/portable-cli-artifacts.json" + }, + { + "id": "native-observability", + "kind": "native_cli_e2e", + "component_ids": [ + "codex", + "claude-code", + "agent-browser", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "grafana", + "alertmanager", + "ntfy" + ], + "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", + "limitations": [ + "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", + "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", + "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", + "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", + "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", + "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." + ], + "path": "observability/receipt.json" + }, + { + "id": "native-observability-followup", "kind": "native_model_e2e", "component_ids": [ + "codex", + "context-mode", + "ai-memory", "socraticode", - "qdrant", - "vllm", - "ai-memory" + "agent-browser", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "grafana" ], - "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", + "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", "limitations": [ - "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", - "No whole-task provider usage/savings attribution is claimed." + "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", + "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", + "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", + "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", + "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", + "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." ], - "path": "evidence/receipts/desktop-direct-rag.json" + "path": "observability/followup-receipt.json" }, { "id": "desktop-restart-acceptance", @@ -1006,648 +730,549 @@ "path": "observability/restart-receipt.json" }, { - "id": "env-freshness-wsl-ubuntu-main-20260924", - "kind": "artifact_measurement", + "id": "sec-financial-data-20260919", + "kind": "compatibility_attempt", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "duckdb", - "pandas", - "edgartools", - "exchange-calendars", - "vllm" + "duckdb" ], - "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", + "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", "limitations": [ - "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", - "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", - "One host; each PC publishes its own report under the same schema.", - "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." + "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", + "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", + "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", + "Current API snapshots do not reconstruct historical point-in-time knowledge.", + "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", + "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." ], - "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" + "path": "blueprints/us-equities/financial-data/receipt.json" }, { - "id": "exchange-calendars-native-check-20260922", + "id": "restic-local-public-reference-20260919", "kind": "native_cli_e2e", "component_ids": [ - "exchange-calendars" + "restic" ], - "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", + "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", "limitations": [ - "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", - "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", - "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", - "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", - "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." + "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", + "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", + "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", + "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", + "Credential loss recovery requires separately approved secure key escrow." ], - "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" + "path": "blueprints/us-equities/hosting/backup/receipt.json" }, { - "id": "foundation-catalog-ui-20260920", - "kind": "artifact_measurement", + "id": "native-research-runtime-20260919", + "kind": "native_model_e2e", "component_ids": [ - "agent-browser" + "claude-code", + "dagu", + "lean", + "duckdb", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", + "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", "limitations": [ - "Source pin/publication URLs pending parent final source commit and regeneration.", - "No provider/broker execution or broad regression rerun performed.", - "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." + "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", + "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", + "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", + "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", + "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", + "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", + "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", + "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." ], - "path": "evidence/receipts/foundation-catalog-ui-20260920.json" + "path": "blueprints/us-equities/research-runtime/receipt.json" }, { - "id": "foundation-closure-20260921", + "path": "blueprints/us-equities/state-recovery/memory/receipt.json", + "id": "ai-memory-native-state-recovery-20260919", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "affaan-m/ECC", - "context-mode" + "ai-memory", + "restic" ], - "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", + "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", "limitations": [ - "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", - "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", - "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", - "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", - "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", - "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", - "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", - "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." - ], - "path": "evidence/receipts/foundation-closure-20260921.json" + "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", + "38 pages table rows include historical versions, not 38 current pages.", + "Native backup excludes raw/, model caches, logs and external native session transcripts.", + "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", + "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", + "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." + ] }, { - "id": "foundation-convergence-20260921", - "kind": "native_model_e2e", + "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", + "id": "qdrant-native-state-recovery-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "rtk", - "headroom", - "toon" + "qdrant", + "restic" ], - "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", + "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", "limitations": [ - "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", - "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", - "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", - "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", - "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." - ], - "path": "evidence/receipts/foundation-convergence-20260921.json" + "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", + "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", + "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", + "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", + "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." + ] }, { - "id": "foundation-native-20260920", + "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", + "id": "qmd-bm25-retrieval-20260919", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qmd", - "qdrant", - "vllm", - "socraticode", - "serena", - "context-mode", - "jcodemunch-mcp", - "rtk", - "headroom", - "repomix", - "toon", - "codex", - "claude-code", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "omniroute" + "qmd" ], - "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", + "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", "limitations": [ - "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", - "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", - "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", - "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", - "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", - "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", - "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", - "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", - "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." - ], - "path": "evidence/receipts/foundation-native-20260920.json" + "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", + "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", + "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", + "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", + "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", + "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", + "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", + "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", + "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", + "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", + "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." + ] }, { - "id": "foundation-rd-20260921", + "path": "blueprints/us-equities/convergence-review/receipt.json", + "id": "native-claude-convergence-review-20260919", "kind": "native_model_e2e", "component_ids": [ "claude-code", - "codex", - "codex-for-claude", - "qmd" + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", + "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", "limitations": [ - "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", - "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", - "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", - "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", - "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." - ], - "path": "evidence/receipts/foundation-rd-20260921.json" + "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", + "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", + "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", + "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", + "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", + "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." + ] }, { - "id": "full-stack-convergence-20260921", + "path": "blueprints/us-equities/supply-chain/receipt.json", + "id": "syft-sdk-inventory-20260919", "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "ccusage", - "claude-code", - "codex", - "context-mode", - "dagu", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "loki", - "omniroute", - "openresearch", - "prometheus", - "qdrant", - "qmd", - "repomix", - "rtk", - "serena", - "socraticode", - "toon", - "vllm", - "worktrunk" + "syft" ], - "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", + "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", "limitations": [ - "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", - "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", - "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", - "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", - "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", - "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", - "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", - "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." - ], - "path": "evidence/receipts/full-stack-convergence-20260921.json" + "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", + "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", + "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", + "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", + "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", + "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", + "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", + "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", + "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", + "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." + ] }, { - "id": "github-automation-newpc-20260922", + "path": "adoption/receipt.json", + "id": "portable-sdk-adoption-20260919", "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code" + "duckdb" ], - "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", + "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", "limitations": [ - "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", - "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", - "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", - "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", - "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", - "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." - ], - "path": "evidence/receipts/github-automation-newpc-20260922.json" + "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", + "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", + "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", + "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", + "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", + "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", + "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." + ] }, { - "id": "gitleaks-macos-memory-bound-20260924", - "kind": "native_cli_e2e", + "path": "adoption/paired/receipt.json", + "id": "native-paired-adoption-20260919", + "kind": "native_model_e2e", "component_ids": [ - "gitleaks" + "codex", + "claude-code", + "duckdb", + "dagu", + "lean", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", + "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", "limitations": [ - "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", - "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", - "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", - "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", - "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", - "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", - "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." - ], - "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" + "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", + "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", + "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", + "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", + "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", + "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", + "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", + "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." + ] }, { - "id": "guard-k3-verification-20260930", - "kind": "artifact_measurement", + "path": "blueprints/us-equities/architecture/receipt.json", + "id": "native-architecture-review-20260919", + "kind": "native_model_e2e", "component_ids": [ - "claude-code" + "codex", + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", + "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", "limitations": [ - "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", - "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", - "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", - "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", + "claim": "Installed alpaca-py request models silently dropped synthetic advanced fields; this explicit broker-disconnected basic-intent boundary rejected those inputs and eight additional negative cases while preserving canonical decimal strings.", "limitations": [ - "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", - "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", - "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", - "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", - "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", - "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", - "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", - "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." - ], - "path": "evidence/receipts/headroom-039-qualification-20260925.json" - }, - { - "id": "hf-memory-models-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "ai-memory", - "socraticode", - "vllm", - "grafana" - ], - "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", - "limitations": [ - "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", - "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", - "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", - "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", - "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", - "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." - ], - "path": "evidence/receipts/hf-memory-models-20260921.json" - }, - { - "id": "jcodemunch-1108327-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "jcodemunch-mcp" - ], - "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", - "limitations": [ - "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", - "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" - }, - { - "id": "local-inference-c2-serving-switch-20260926", - "kind": "native_model_e2e", - "component_ids": [ - "llama-cpp" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", - "limitations": [ - "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", - "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", - "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", - "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", - "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", - "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", - "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." - ], - "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" - }, - { - "id": "login-shell-contract-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code", - "codex" - ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", - "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", - "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", - "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", - "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", - "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", - "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", - "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", - "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", - "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." - ], - "path": "evidence/receipts/login-shell-contract-20260929.json" + "Local contract is not wired into unrelated SDK calls or existing workers; explicit future adapter adoption is required.", + "No broker account, key, asset lookup, risk approval, live/paper order or provider wire behavior was exercised.", + "Whole-share basic create-intent subset only; advanced, replacement, cancellation, retries, order journals and reconciliation remain gated.", + "Input representation cap and symbol/client-ID syntax are local conservative policies, not provider or risk authorization.", + "Python SDK float conversion is observed; the canonical exact decimal envelope is deliberately not serialized through those float fields.", + "JavaScript advanced support is pinned-source evidence only; no alternative SDK was installed or executed.", + "Python audit events and the Linux namespace substantiate this scoped probe, not a universal sandbox or macOS acceptance.", + "Canonical content hashes do not establish client-ID uniqueness, deduplication or safe retry semantics.", + "No token-saving claim or model inference belongs to this deterministic task." + ] }, { - "id": "mac-memory-patch-20260920", - "path": "evidence/receipts/mac-memory-patch-20260920.json", + "id": "native-memory-lifecycle-20260919", + "path": "blueprints/us-equities/memory-lifecycle/receipt.json", "kind": "native_cli_e2e", "component_ids": [ "ai-memory" ], - "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", + "claim": "A disposable, network-isolated native ai-memory fixture passed 23 lifecycle/routing checks across 31 MCP calls; exact-path TTL behavior and explicit sweep limits retained.", "limitations": [ - "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", - "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", - "No provider or whole-task token savings measurement." + "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", + "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", + "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", + "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", + "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", + "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", + "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", + "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", + "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", + "Isolated fixture, not the live memory store or all client hooks.", + "TTL is default-search visibility until sweep, not immediate access revocation.", + "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." ] }, { - "id": "mac-native-application-migration-20260920", + "id": "native-exact-nanosecond-replay-20260919", + "path": "blueprints/us-equities/nanosecond-replay/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "fastapi", - "postgresql" + "duckdb", + "pandas" ], - "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", + "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", "limitations": [ - "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", - "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", - "No model calls; whole-task provider usage unknown." - ], - "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" + "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", + "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", + "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", + "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", + "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", + "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", + "No broker, trading strategy, actual feed or net token-saving acceptance." + ] }, { - "id": "mac-native-container-storage-20260920", + "id": "native-worker-supervision-20260919", + "path": "blueprints/us-equities/worker-supervision/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "apple-container", - "postgresql" + "systemd" ], - "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", + "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", "limitations": [ - "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", - "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", - "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", - "Images remain cached; only owned empty failed container, test database container and test volume were removed.", - "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." - ], - "path": "blueprints/convergence-practice/container-storage/receipt.json" + "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", + "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", + "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", + "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", + "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", + "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", + "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", + "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", + "Hashes bind retained evidence bytes; they do not independently attest the execution.", + "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", + "Configured resource limits were inspected, not saturation-tested." + ] }, { - "id": "mac-native-document-ingestion-20260920", + "id": "native-grand-dashboard-20260919", + "path": "observability/grand-dashboard/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "poppler" + "grafana", + "loki", + "prometheus", + "dagu" ], - "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", + "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", "limitations": [ - "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", - "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", - "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", - "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", - "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." - ], - "path": "blueprints/convergence-practice/document-ingestion/receipt.json" + "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", + "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", + "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", + "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", + "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", + "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", + "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", + "Recorded worker/decision state is not a live process registry.", + "No broker execution, exact-once accounting, universal coverage or net token savings.", + "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." + ] }, { - "id": "markitdown-018-qualification-20260925", - "kind": "native_cli_e2e", + "id": "native-convergence-review-20260919", + "path": "blueprints/us-equities/convergence-program/review-receipt.json", + "kind": "native_model_e2e", "component_ids": [ - "markitdown" + "codex", + "claude-code", + "dagu" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", + "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", "limitations": [ - "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", - "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", - "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", - "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", - "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", - "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", - "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", - "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." - ], - "path": "evidence/receipts/markitdown-018-qualification-20260925.json" + "Models checked packet/report consistency, not original sources or underlying native artifacts.", + "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", + "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", + "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", + "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", + "Usage belongs to this pair only; not whole-goal consumption or causal savings." + ] }, { - "id": "mcp-inspector-280-qualification-20260926", + "id": "native-historical-leverage-stress-20260919", + "path": "blueprints/us-equities/historical-simulation/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "mcp-inspector" + "lean" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", + "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", "limitations": [ - "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", - "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", - "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", - "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", - "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." - ], - "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" + "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", + "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", + "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", + "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", + "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", + "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", + "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", + "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", + "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", + "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", + "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", + "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", + "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", + "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", + "No paper/live orders or automatic promotion." + ] }, { - "id": "mcp-inspector-290-qualification-20261003", + "id": "native-chronological-controls-20260919", "kind": "native_cli_e2e", "component_ids": [ - "mcp-inspector" + "skfolio", + "pandas", + "lean" ], - "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", "limitations": [ - "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", - "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", - "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", + "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", + "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", + "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", + "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", + "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", + "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", + "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." ], - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + "path": "blueprints/us-equities/research-evaluation/receipt.json" }, { - "id": "mcporter-0141-qualification-20260925", + "id": "native-edgartools-catalyst-20260919", "kind": "native_cli_e2e", "component_ids": [ - "mcporter" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", - "limitations": [ - "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", - "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", - "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", - "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", - "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", - "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." - ], - "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" - }, - { - "id": "mcporter-0142-qualification-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "mcporter" + "edgartools" ], - "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", + "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", - "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", - "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", + "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", + "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", + "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", + "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", + "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", + "Native text/byte counts are not provider token savings.", + "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." ], - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + "path": "blueprints/us-equities/catalyst-provenance/receipt.json" }, { - "id": "mcporter-0142-qualification-20261004", + "id": "native-simulation-research-dashboard-20260919", "kind": "native_cli_e2e", "component_ids": [ - "mcporter" + "grafana", + "loki" ], - "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed mcporter 0.14.2 and returned version 0.14.2 with exit 0. Registry provenance matched openclaw/mcporter release.yml at v0.14.2, and a scratch npm audit verified 43 registry signatures and 15 attestations. Ad-hoc stdio jcodemunch session statistics and context-mode ctx_stats calls returned exit 0. Configured-daemon calls failed on a stale rendezvous and were not recovered. This receipt republishes sanitized historical host observations, not a new host execution.", + "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", "limitations": [ - "No macOS execution and no upstream test suite run. The npm tarball hash is artifact evidence and does not pin the transitive dependency tree or rolldown platform binding.", - "Configured-server list/call failures are retained. The stale daemon was not recovered and keep-alive transport acceptance is not claimed; dist/daemon/client.js was recorded byte-identical across 0.14.1 and 0.14.2.", - "npm audit signatures --global failed with EAUDITGLOBAL (exit 1); only the later scratch-project audit succeeded. The ad-hoc MCP statistics are self-reports, not provider counts or savings.", - "The Mac keeps its separately qualified MCPorter 0.13.13 pin until a Mac qualifies 0.14.2. The platform-independent tarball artifact check is not Mac execution or Mac qualification." + "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", + "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", + "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", + "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", + "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", + "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", + "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." ], - "path": "evidence/receipts/mcporter-0142-qualification-20261004.json" + "path": "blueprints/us-equities/simulation-research/receipt.json" }, { - "id": "memory-landscape-20260921", + "id": "native-sec-access-resolution-20260919", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "codex", - "claude-code" + "edgartools" ], - "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", + "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", "limitations": [ - "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", - "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", - "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", - "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", - "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", - "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", - "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", - "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", - "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." + "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", + "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", + "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", + "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", + "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", + "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", + "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", + "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." ], - "path": "evidence/receipts/memory-landscape-20260921.json" + "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" }, { - "id": "memory-landscape-lifecycle-20260921", + "id": "native-sec-new-host-20260924", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qdrant", - "vllm", - "serena", - "qmd", - "codex", - "claude-code" + "edgartools" ], - "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", + "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", "limitations": [ - "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", - "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", - "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", - "Exact memory session/lifetime savings are not returned and remain null.", - "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." + "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", + "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", + "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", + "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", + "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", + "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", + "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." ], - "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" + "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", + "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" }, { - "id": "memory-lifecycle-probe-20260921", + "id": "sec-catalyst-dataset-native-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "edgartools", + "duckdb" ], - "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", + "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", "limitations": [ - "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", - "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", - "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", - "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", - "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", - "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." + "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", + "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", + "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", + "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", + "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", + "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", + "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", + "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", + "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." ], - "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" + "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" }, { - "id": "native-ai-memory-maintenance-20260920", - "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", + "id": "native-corporate-actions-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "lean" ], - "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", + "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", - "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", - "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", - "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", - "Forward-only migrations may require restoring the retained private backup to downgrade." + "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", + "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", + "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", + "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", + "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", + "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" }, { "id": "native-alpaca-historical-20260920", @@ -1668,392 +1293,381 @@ "path": "blueprints/us-equities/authenticated-data/native-receipt.json" }, { - "id": "native-application-delivery-20260920", + "id": "native-security-identity-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nextjs", - "react", - "fastapi", - "postgresql" + "alpaca-py", + "duckdb" ], - "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", + "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", "limitations": [ - "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", - "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", - "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", - "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", - "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", - "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", - "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", - "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." + "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", + "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", + "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", + "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", + "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", + "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", + "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", + "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." ], - "path": "blueprints/convergence-practice/application-delivery/receipt.json" + "path": "blueprints/us-equities/identity-readiness/native-receipt.json" }, { - "path": "blueprints/us-equities/architecture/receipt.json", - "id": "native-architecture-review-20260919", - "kind": "native_model_e2e", + "id": "token-practice-artifacts-20260920", + "kind": "artifact_measurement", "component_ids": [ - "codex", - "claude-code", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "agent-browser", + "ast-grep", + "edgartools", + "markitdown", + "qmd", + "repomix", + "rtk", + "socraticode", + "syft", + "toon" ], - "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", + "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", "limitations": [ - "The models reviewed supplied evidence and did not independently inspect primary sources. Their critiques are advisory and were adjudicated; agreement does not establish correctness or trading performance.", - "This is a native architecture-review task, not another LEAN/Dagu backtest run, full MCP/RAG acceptance, broker integration, hosted deployment or universal SOTA census.", - "The44,214 combined native reported tokens exclude coordinator and source-research workers. They are usage, not causal tokens saved or a billing measurement across identical tokenizers.", - "Astra cached input is included in input and reasoning output in output. Claude thinking is included in output; duplicate per-model/iteration/stream views are not added again.", - "Native model selection and terminal usage are not independent provider attestation. Full account/session/process identifiers and raw event streams remain private.", - "The offline Alpaca observation detects synthetic field loss only; no client/network/order, valid advanced-order fixture, entitlement or execution adapter was tested.", - "New machines must reproduce their own selected native profile and sign-in; these local WSL receipts do not establish macOS or unattended-host acceptance." - ] + "Counts describe retained original host artifacts. This public aggregate omits the private originals; CI validates aggregate integrity, not an independent recount of those private bytes.", + "Most pairs select or transform information lossily. Shorter output does not establish equivalent answer quality or lower complete task usage.", + "Pairs overlap, including shared HTML sources and retrieval services. Do not sum them or attribute the same difference independently to dependencies.", + "Exact provider savings remain null. Tokenizer counts are not provider billing, subscription savings or causal per-repository effects.", + "The Syft table preserves checked package name/version/type columns while omitting other SBOM metadata; this is a view selection, not equivalent full SBOM content." + ], + "path": "evidence/receipts/token-practice-artifacts-20260920.json" }, { - "id": "native-catalog-retrieval-20260920", - "kind": "native_cli_e2e", + "id": "token-practice-native-pairs-20260920", + "kind": "native_model_e2e", "component_ids": [ - "qmd" + "codex", + "claude-code", + "context-mode" ], - "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", + "claim": "Four native coding trials passed shared visible, hidden and file-scope acceptance gates; one fixed-order Context Mode non-use/explicit-use pair per client produced mixed observed task-usage differences.", "limitations": [ - "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", - "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", - "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", - "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." + "One baseline-first pair per client is not randomized, repeated or cache-matched. Native cache warmth and plugin tool availability were not fully controlled.", + "Observed differences are not causal per-repository savings, a whole-stack saving rate or evidence that either model is generally better.", + "Codex cached input and reasoning output are subsets. Claude ordinary input, cache creation, cache reads and output are separate categories; thinking is included in output.", + "Final cumulative session counters are used once. Coordinator, reviewers, audit tooling and report production are outside these four task totals.", + "Billed cost is unknown. Token counts and cached reads do not establish subscription charges or money saved.", + "Private transcripts, session identifiers and commands are not published. Hashes bind retained evidence, not independent attestation of provider execution." ], - "path": "evidence/receipts/native-catalog-retrieval-20260920.json" + "path": "evidence/receipts/token-practice-native-pairs-20260920.json" }, { - "id": "native-chronological-controls-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "skfolio", - "pandas", - "lean" - ], - "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", - "limitations": [ - "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", - "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", - "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", - "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", - "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", - "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", - "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", - "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." - ], - "path": "blueprints/us-equities/research-evaluation/receipt.json" - }, - { - "id": "native-ci-security-20260920", - "kind": "native_cli_e2e", - "component_ids": [ - "zizmor" - ], - "claim": "Native zizmor1.30.1 on macOS accepts the published workflow under offline regular analysis and rejects an inert unsafe fixture with three findings; two executable regression checks pass.", - "limitations": [ - "Offline regular analysis is scoped static evidence, not absence of every vulnerability or signature verification.", - "Mac binary and the checksum-locked Linux CI wheel are distinct artifacts; new runner execution is established by its own CI result.", - "The unsafe fixture was analyzed but never executed. No model calls, broker actions or savings measurement." - ], - "path": "blueprints/convergence-practice/ci-security/receipt.json" - }, - { - "id": "native-claude-child-patch-20260920", - "kind": "native_model_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Native Claude Code2.1.278 on Ubuntu24.04 WSL2 used Opus5 through Max for one foreground isolated child repair. Only planner.py changed; all12 frozen visible tests pass independently after8 seed failures.", - "limitations": [ - "One synthetic visible-oracle fixture, not a held-out benchmark, real application or GPU acceptance.", - "Ultracode was requested; observed native delegation does not establish dynamic-workflow selection or an OS sandbox.", - "Three native usage views retain different scopes; native retries and whole Desktop usage are unknown. No matched model baseline or savings claim.", - "Local supervision completed without timeout; provider cancellation, crash recovery and full-host backup were not tested." - ], - "path": "blueprints/convergence-practice/native-worker/receipt.json" - }, - { - "path": "blueprints/us-equities/convergence-review/receipt.json", - "id": "native-claude-convergence-review-20260919", - "kind": "native_model_e2e", + "id": "token-practice-coverage-20260920", + "kind": "historical_inventory", "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "ast-grep", + "ccusage", "claude-code", + "claude-hud", + "codebase-memory-mcp", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "davila7/claude-code-templates", + "difftastic", + "gitleaks", + "headroom", + "huggingface-hub-native", + "markitdown", + "mcp-inspector", + "mcporter", + "openresearch", + "playwright-cli", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "rtk", + "sandbox-runtime", + "serena", + "shanraisshan/claude-code-best-practice", + "shellcheck", + "socraticode", + "toon", + "vllm", + "worktrunk", "opentelemetry-collector-contrib", "prometheus", - "loki" + "loki", + "grafana", + "alertmanager", + "ntfy", + "duckdb", + "restic", + "dagu", + "lean", + "syft", + "alpaca-py", + "systemd", + "pandas", + "skfolio", + "edgartools" ], - "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", + "claim": "A dated 52-component audit distinguishes native artifact/task pairs, bounded functionality, current queries, configuration validation, historical-only evidence, host failures and non-executable guidance.", "limitations": [ - "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", - "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", - "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", - "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", - "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", - "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." - ] + "This historical coverage inventory records the dated audit only; it is not 52 fresh end-to-end passes or new-host acceptance.", + "Seventy captured operations include four retained failed attempts; successful corrections do not erase the initial OTel environment and Dagu environment-filter failures.", + "Two Linux Playwright invocations failed with ENOENT; the Windows installation does not establish Linux availability.", + "Guidance repositories are not executable tools. Current state, backup and cache queries or configuration validation do not prove complete lifecycle behavior.", + "Native RTK, TOON, Context Mode and Headroom counters have different scopes and estimators. They cannot be summed with artifact differences or provider usage.", + "Exact causal per-component provider saving values remain unknown rather than zero." + ], + "path": "evidence/receipts/token-practice-coverage-20260920.json" }, { - "id": "native-claude-hud-interactive-20260920", - "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", - "kind": "compatibility_attempt", + "id": "token-practice-catalog-toon-20260920", + "kind": "artifact_measurement", "component_ids": [ - "claude-hud" + "toon" ], - "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", + "claim": "A reversible full-catalog TOON conversion had a smaller native heuristic estimate but a larger exact token count than compact JSON; the guard retained compact JSON.", "limitations": [ - "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", - "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", - "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." - ] + "This is one later artifact comparison, separate from the ten original token-practice pairs. Do not sum it with cumulative native counters or provider usage.", + "Native tokenx estimates and exact o200k_base counts use different estimators and JSON representations; they are not interchangeable savings metrics.", + "The public aggregate omits the private captured output files. Published hashes establish identity, not independent CI recount of the private bytes.", + "Exact provider savings remain unknown. The successful strict round trip establishes data equivalence for this conversion only.", + "Command templates replace host-specific source and output locations with portable placeholders." + ], + "path": "evidence/receipts/token-practice-catalog-toon-20260920.json" }, { - "id": "native-claude-profile-20260920", - "kind": "native_cli_e2e", + "id": "token-practice-native-counters-20260920", + "kind": "historical_inventory", "component_ids": [ - "claude-code", - "codex", - "affaan-m/ECC", "context-mode", - "rtk" + "headroom", + "rtk", + "toon" ], - "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", + "claim": "Dated native counter snapshots retain RTK output, the capped Headroom ledger result, per-conversion TOON estimates and three separate Context Mode runtime scopes without treating them as exact provider savings.", "limitations": [ - "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", - "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", - "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", - "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", - "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", - "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", - "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", - "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", - "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." + "This historical snapshot is a dated report only, not a live dashboard or new-host execution acceptance.", + "RTK counters estimate retained command history and default to 90-day retention; selected-project values are a subset of the global result. Do not add snapshots or assume a forever ledger.", + "Headroom 0.37.0 caps the report at 30 days despite naming a field lifetime; zero ledger calls do not establish zero offline guard use or provider usage.", + "Context Mode uses byte/event heuristics and separate runtime state. Illustrative cost estimates are not bills, and persisted files must not be added to a direct MCP connection snapshot.", + "TOON statistics are tokenx heuristics for one conversion, not a native cumulative ledger. The compact-JSON exact counterexample is represented by the separate catalog receipt and must not be counted twice.", + "Raw private files, host paths, full command outputs and session identifiers are omitted. Sanitized fields and aggregate hashes do not independently attest provider activity." ], - "path": "evidence/receipts/native-claude-profile-20260920.json" + "path": "evidence/receipts/token-practice-native-counters-20260920.json" }, { - "id": "native-claude-session-recovery-20260920", - "kind": "native_model_e2e", + "id": "token-practice-gap-followup-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "playwright-cli", + "agentsview", + "ccusage", + "claude-hud", + "openresearch", + "codex-for-claude", + "codex" ], - "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", + "claim": "Six separately scoped follow-ups exercised a pinned Linux browser fixture, a single-session archive query, offline usage parsing, a synthetic HUD renderer, public-paper retrieval and one read-only native bridge backend task.", "limitations": [ - "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", - "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", - "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", - "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." + "These later bounded results do not turn the earlier dated 52-component audit into 52 full end-to-end passes. Individual scopes below remain authoritative.", + "Three failed attempts remain: file-protocol navigation rejection, implicit archive auto-start message failure and archive restart-lock failure. Successful recovery does not erase them.", + "Playwright used an existing Chrome installation and a fixture-only loopback HTTP endpoint. Its Playwright dependencies are alpha builds; no default browser download or arbitrary-site acceptance was tested.", + "The archive was restricted to one explicit project session. Full private transcripts, authentication material and session identifiers are omitted; automatic archive discovery did not pass.", + "HUD acceptance is a synthetic renderer fixture, not a live interactive account display. OpenResearch acceptance is public-paper retrieval, not an agent research workflow or research-quality assessment.", + "The ccusage reports overlap and must not be added. Upstream parser categories and totals are not bills or a matched provider savings comparison. The first date-only query returned an empty window.", + "The bridge trial is additional observed provider usage, not savings. It used one backend task without an outer Claude interaction or matched baseline; cached input is a subset of native input.", + "Tracked source remained unchanged; native MCP startup created untracked metadata. All owned temporary services were stopped. Public aggregate hashes bind retained evidence but do not independently reproduce private logs." ], - "path": "evidence/receipts/native-claude-session-recovery-20260920.json" + "path": "evidence/receipts/token-practice-gap-followup-20260920.json" }, { - "id": "native-cli-gaps", - "path": "evidence/receipts/native-cli-gaps.json", - "kind": "native_model_e2e", + "id": "native-lifecycle-sample-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "qmd", - "codebase-memory-mcp", - "agent-browser" + "edgartools", + "duckdb" ], - "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", + "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", "limitations": [ - "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", - "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." - ] + "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", + "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", + "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", + "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", + "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", + "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." + ], + "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" }, { - "id": "native-codex-session-recovery-20260920", - "kind": "native_model_e2e", + "id": "synthetic-catalyst-contract-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "codex" + "duckdb" ], - "claim": "Native Codex on Mac interrupted an owned pending dynamic tool, reconnected through a new app-server and resumed the same native thread/session to finalize an unchanged single checkpoint.", + "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", "limitations": [ - "One synthetic two-turn fixture on the installed Mac bundled alpha; no general distributed exactly-once guarantee.", - "No arbitrary shell/MCP descendant, provider cancellation, power loss or independent-host restore test.", - "Native cumulative token categories counted once; retries, billing and enclosing coordinator usage unknown; no savings claim." + "Protocol thresholds are exploratory choices, not fitted or proven optimal.", + "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", + "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", + "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", + "No provider calls, broker orders, new model turn or net token-savings measurement." ], - "path": "evidence/receipts/native-codex-session-recovery-20260920.json" + "path": "blueprints/us-equities/catalyst-experiment/receipt.json" }, { - "id": "native-context-memory", - "path": "evidence/receipts/native-context-memory.json", + "id": "native-research-efficiency-20260920", "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", - "context-mode", - "serena", - "rtk" + "qmd" ], - "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", + "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", "limitations": [ - "Earlier Serena/RTK run uses its original CLI version.", - "PreCompact was not induced; current Desktop catalog is distinct from child native clients." - ] - }, - { - "id": "native-convergence-review-20260919", - "path": "blueprints/us-equities/convergence-program/review-receipt.json", - "kind": "native_model_e2e", - "component_ids": [ - "codex", - "claude-code", - "dagu" + "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", + "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", + "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", + "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", + "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", + "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", + "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", + "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", + "Local supervision does not prove provider-side cancellation; no run timed out.", + "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." ], - "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", - "limitations": [ - "Models checked packet/report consistency, not original sources or underlying native artifacts.", - "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", - "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", - "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", - "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", - "Usage belongs to this pair only; not whole-goal consumption or causal savings." - ] + "path": "blueprints/us-equities/research-efficiency/native-receipt.json" }, { - "id": "native-corporate-actions-20260920", + "id": "native-ci-security-20260920", "kind": "native_cli_e2e", "component_ids": [ - "lean" + "zizmor" ], - "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", + "claim": "Native zizmor1.30.1 on macOS accepts the published workflow under offline regular analysis and rejects an inert unsafe fixture with three findings; two executable regression checks pass.", "limitations": [ - "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", - "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", - "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", - "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", - "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", - "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." + "Offline regular analysis is scoped static evidence, not absence of every vulnerability or signature verification.", + "Mac binary and the checksum-locked Linux CI wheel are distinct artifacts; new runner execution is established by its own CI result.", + "The unsafe fixture was analyzed but never executed. No model calls, broker actions or savings measurement." ], - "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" + "path": "blueprints/convergence-practice/ci-security/receipt.json" }, { - "id": "native-dagu-job-recovery-20260920", - "kind": "native_cli_e2e", + "id": "native-claude-child-patch-20260920", + "kind": "native_model_e2e", "component_ids": [ - "dagu" + "claude-code" ], - "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", + "claim": "Native Claude Code2.1.278 on Ubuntu24.04 WSL2 used Opus5 through Max for one foreground isolated child repair. Only planner.py changed; all12 frozen visible tests pass independently after8 seed failures.", "limitations": [ - "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", - "Initial native schema failure and earlier Mac success are retained; no savings comparison." + "One synthetic visible-oracle fixture, not a held-out benchmark, real application or GPU acceptance.", + "Ultracode was requested; observed native delegation does not establish dynamic-workflow selection or an OS sandbox.", + "Three native usage views retain different scopes; native retries and whole Desktop usage are unknown. No matched model baseline or savings claim.", + "Local supervision completed without timeout; provider cancellation, crash recovery and full-host backup were not tested." ], - "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" + "path": "blueprints/convergence-practice/native-worker/receipt.json" }, { - "id": "native-dagu-retry-tests-20260920", + "id": "upstream-native-tools-20260920", + "path": "evidence/receipts/upstream-native-tools-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "dagu" + "beads", + "skills-ref", + "otel-tui" ], - "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", + "claim": "Three supplemental upstream tools installed on the source Linux/WSL host: Beads persisted task claims and dependency transitions, skills-ref validated and rendered a selected skill, and otel-tui ingested and displayed one synthetic loopback trace.", "limitations": [ - "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", - "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", - "No broker/provider operations or token savings were measured.", - "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "Bounded native CLI/TUI acceptance on Linux/WSL; no new native Codex or Claude provider task was run for these additions.", + "Beads used one owned Git fixture with embedded Dolt, explicit task scope, skipped agent-instruction generation and skipped hooks. It does not replace ai-memory.", + "skills-ref is upstream's reference/demo implementation; successful portable-format validation does not certify production client extensions or tool semantics.", + "otel-tui received one synthetic local trace; no production or native-provider telemetry session was evaluated and no persistent exporter was installed.", + "None of these three tools exposes a verified cumulative token-savings counter. Exact causal lifetime provider savings remain null.", + "Public command forms substitute portable variables for private host paths; private raw operation logs are not published." ], - "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-dashboard-access-20260921", + "id": "native-ai-memory-maintenance-20260920", + "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "dagu", - "qdrant", - "agentsview", - "grafana", - "prometheus", - "ntfy", - "agent-browser", - "omniroute" + "ai-memory" ], - "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", + "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", "limitations": [ - "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", - "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", - "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", - "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", - "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", - "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", - "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", + "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", + "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", + "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", + "Forward-only migrations may require restoring the retained private backup to downgrade." ], - "path": "evidence/receipts/native-dashboard-access-20260921.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-dashboard-data-20260921", + "id": "native-linux-zizmor-20260920", + "path": "evidence/receipts/native-linux-zizmor-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qmd", - "qdrant", - "agentsview", - "grafana", - "loki", - "rtk", - "context-mode", - "headroom", - "jcodemunch-mcp", - "promptfoo", - "serena", - "systemd" + "zizmor" ], - "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", + "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", "limitations": [ - "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", - "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", - "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", - "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", - "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", - "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", - "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", - "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", - "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", + "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", + "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", + "No provider task was run and zizmor supplies no verified lifetime token-savings counter." ], - "path": "evidence/receipts/native-dashboard-data-20260921.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-edgartools-catalyst-20260919", + "id": "native-dagu-job-recovery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "dagu" ], - "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", + "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", "limitations": [ - "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", - "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", - "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", - "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", - "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", - "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", - "Native text/byte counts are not provider token savings.", - "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." + "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", + "Initial native schema failure and earlier Mac success are retained; no savings comparison." ], - "path": "blueprints/us-equities/catalyst-provenance/receipt.json" + "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" }, { - "id": "native-exact-nanosecond-replay-20260919", - "path": "blueprints/us-equities/nanosecond-replay/receipt.json", - "kind": "native_cli_e2e", + "id": "native-codex-session-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "duckdb", - "pandas" + "codex" ], - "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", + "claim": "Native Codex on Mac interrupted an owned pending dynamic tool, reconnected through a new app-server and resumed the same native thread/session to finalize an unchanged single checkpoint.", "limitations": [ - "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", - "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", - "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", - "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", - "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", - "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", - "No broker, trading strategy, actual feed or net token-saving acceptance." - ] + "One synthetic two-turn fixture on the installed Mac bundled alpha; no general distributed exactly-once guarantee.", + "No arbitrary shell/MCP descendant, provider cancellation, power loss or independent-host restore test.", + "Native cumulative token categories counted once; retries, billing and enclosing coordinator usage unknown; no savings claim." + ], + "path": "evidence/receipts/native-codex-session-recovery-20260920.json" }, { "id": "native-gpu-patch-20260920", @@ -2072,52 +1686,67 @@ "path": "evidence/receipts/native-gpu-patch-20260920.json" }, { - "id": "native-grand-dashboard-20260919", - "path": "observability/grand-dashboard/receipt.json", - "kind": "native_cli_e2e", + "id": "native-claude-session-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "grafana", - "loki", - "prometheus", - "dagu" + "claude-code" ], - "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", + "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", "limitations": [ - "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", - "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", - "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", - "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", - "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", - "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", - "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", - "Recorded worker/decision state is not a live process registry.", - "No broker execution, exact-once accounting, universal coverage or net token savings.", - "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." - ] + "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", + "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", + "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", + "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." + ], + "path": "evidence/receipts/native-claude-session-recovery-20260920.json" }, { - "id": "native-harness-defaults-20260920", - "kind": "artifact_measurement", + "id": "token-native-retained-functional-20260920", + "path": "evidence/receipts/token-native-retained-functional-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code" + "context-hub", + "headroom", + "mcp-inspector", + "promptfoo", + "worktrunk" ], - "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", + "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", "limitations": [ - "Saved instruction bytes are not proof that every future model decision will follow them.", - "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", - "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." - ], - "path": "evidence/receipts/native-harness-defaults-20260920.json" + "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", + "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", + "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", + "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", + "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", + "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." + ] }, { - "id": "native-headroom-mcp-20260920", - "path": "evidence/receipts/native-headroom-mcp-20260920.json", + "id": "native-jcodemunch-20260920", + "path": "evidence/receipts/native-jcodemunch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "headroom" + "jcodemunch-mcp" ], - "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", + "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", + "limitations": [ + "Single bounded code-reading task, not a native provider A/B trial.", + "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", + "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", + "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", + "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", + "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", + "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." + ] + }, + { + "id": "native-headroom-mcp-20260920", + "path": "evidence/receipts/native-headroom-mcp-20260920.json", + "kind": "native_cli_e2e", + "component_ids": [ + "headroom" + ], + "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", "limitations": [ "Owned synthetic acceptance artifacts demonstrate artifact reduction, not lifetime production or provider-token savings", "MCP summary is not a lossless replacement of the original; its exact full retrieval consumes the original token count", @@ -2128,676 +1757,589 @@ ] }, { - "id": "native-historical-leverage-stress-20260919", - "path": "blueprints/us-equities/historical-simulation/receipt.json", - "kind": "native_cli_e2e", + "id": "native-token-focus-clients-20260920", + "path": "evidence/receipts/native-token-focus-clients-20260920.json", + "kind": "native_model_e2e", "component_ids": [ - "lean" + "codex", + "claude-code", + "context-mode", + "jcodemunch-mcp" ], - "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", + "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", "limitations": [ - "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", - "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", - "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", - "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", - "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", - "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", - "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", - "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", - "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", - "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", - "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", - "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", - "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", - "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", - "No paper/live orders or automatic promotion." + "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", + "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", + "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", + "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", + "Raw private prompts, client streams, account identifiers and host paths are not published." ] }, { - "id": "native-jcodemunch-20260920", - "path": "evidence/receipts/native-jcodemunch-20260920.json", + "id": "native-sandbox-network-20260920", + "path": "evidence/receipts/native-sandbox-network-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "jcodemunch-mcp" + "sandbox-runtime" ], - "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", + "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", "limitations": [ - "Single bounded code-reading task, not a native provider A/B trial.", - "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", - "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", - "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", - "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", - "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", - "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." + "HTTP proxy path tested on this Linux/WSL host", + "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", + "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", + "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." ] }, { - "path": "blueprints/us-equities/execution-realism/receipt.json", - "id": "native-lean-execution-sensitivity-20260919", - "kind": "native_cli_e2e", + "id": "native-claude-hud-interactive-20260920", + "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", + "kind": "compatibility_attempt", "component_ids": [ - "lean" + "claude-hud" ], - "claim": "Native LEAN completed three fixed-order historical simulations with distinct upstream fee/slippage assumptions; serialized fill cash reconciles to native rounded summaries and all mounted engine/data input hashes remained unchanged.", + "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", "limitations": [ - "Exact arithmetic over serialized native event values; exported five-decimal fill prices and cent-rounded summaries do not expose all internal precision.", - "Illustrative fees and slippage are assumptions, not calibrated market or Alpaca execution observations.", - "Full-quantity market fills remain assumed; participation, partial fills, impact, latency, queueing, cancellation and broker reconciliation remain unaccepted.", - "Bundled five-day data do not establish PIT/corporate-action/universe quality or investment returns.", - "The normal dotnet build/restore route timed out twice; only the installed native C# compiler route is accepted.", - "Mounted input hashes do not prove every file was read; successful request logs list 13 paths plus possible separately read metadata.", - "No broker connection, account entitlement, deployment, strategy promotion, provider usage or token saving is established." + "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", + "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", + "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." ] }, { - "id": "native-lifecycle-sample-20260920", + "id": "native-application-delivery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "nextjs", + "react", + "fastapi", + "postgresql" ], - "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", + "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", "limitations": [ - "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", - "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", - "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", - "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", - "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", - "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." + "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", + "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", + "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", + "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", + "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", + "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", + "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", + "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." ], - "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" + "path": "blueprints/convergence-practice/application-delivery/receipt.json" }, { - "id": "native-linux-zizmor-20260920", - "path": "evidence/receipts/native-linux-zizmor-20260920.json", + "id": "mac-native-document-ingestion-20260920", "kind": "native_cli_e2e", "component_ids": [ - "zizmor" + "poppler" ], - "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", + "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", - "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", - "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", - "No provider task was run and zizmor supplies no verified lifetime token-savings counter." + "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", + "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", + "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", + "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", + "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "blueprints/convergence-practice/document-ingestion/receipt.json" }, { - "id": "native-memory", - "path": "evidence/receipts/native-memory.json", - "kind": "native_model_e2e", + "id": "native-wsl-restic-synthetic-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "codex", - "claude-code" + "restic" ], - "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", + "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", "limitations": [ - "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", - "No historical archive backfill or LLM/embedding consolidation pipeline enabled." - ] + "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", + "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", + "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", + "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", + "No token, storage-efficiency or backup performance claim.", + "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", + "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", + "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", + "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", + "Ten offline oracle/guard tests are distinct from the actual native restic commands." + ], + "path": "blueprints/convergence-practice/wsl-restore/receipt.json" }, { - "id": "native-memory-lifecycle-20260919", - "path": "blueprints/us-equities/memory-lifecycle/receipt.json", + "id": "mac-native-container-storage-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "apple-container", + "postgresql" ], - "claim": "A disposable, network-isolated native ai-memory fixture passed 23 lifecycle/routing checks across 31 MCP calls; exact-path TTL behavior and explicit sweep limits retained.", + "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", "limitations": [ - "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", - "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", - "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", - "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", - "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", - "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", - "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", - "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", - "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", - "Isolated fixture, not the live memory store or all client hooks.", - "TTL is default-search visibility until sweep, not immediate access revocation.", - "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." - ] + "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", + "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", + "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", + "Images remain cached; only owned empty failed container, test database container and test volume were removed.", + "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." + ], + "path": "blueprints/convergence-practice/container-storage/receipt.json" }, { - "id": "native-memory-rag-alignment-20260921", + "id": "mac-native-application-migration-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qdrant", - "qmd", - "vllm", - "grafana", - "loki" + "fastapi", + "postgresql" ], - "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", + "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", "limitations": [ - "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", - "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", - "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", - "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", - "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", - "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", - "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." + "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", + "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", + "No model calls; whole-task provider usage unknown." ], - "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" + "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" }, { - "id": "native-nautilus-ci-20260920", + "id": "velanext-native-quality-tools-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "gitleaks", + "worktrunk" ], - "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", + "claim": "On VelaNext, exact gitleaks8.30.1 detected one inert test credential and accepted the clean control with redacted reports. Worktrunk0.78.0 created/listed/removed owned worktrees while refusing dirty removal without loss.", "limitations": [ - "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", - "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", - "Network namespace and available-interface observations are not measured counts of attempted external transports." + "Isolated synthetic Linux/WSL fixtures; no arbitrary repository safety/security certification or Mac acceptance inferred.", + "Original executed runner and attempt retained. Second attempt follows exact-pin/archive/binary/version binding and timeout-evidence hardening;20 offline guards passed on Mac and WSL.", + "GitHub attestation endpoints returned404. Publisher checksum, GitHub archive digest and exact pinned license checks passed; no attestation claim.", + "No accounts, shared services, project hooks or model calls changed by qualification. Global promotion, when performed, is separate host deployment evidence.", + "Whole coordinator/worker provider usage is unknown; no token or monetary savings claim." ], - "path": "evidence/receipts/native-nautilus-ci-20260920.json" + "path": "blueprints/convergence-practice/wsl-native-tools/receipt.json" }, { - "id": "native-nautilus-v2-20260920", + "id": "mac-memory-patch-20260920", + "path": "evidence/receipts/mac-memory-patch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "ai-memory" ], - "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", + "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", "limitations": [ - "Release candidate, not production/live-capital acceptance.", - "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", - "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", - "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", - "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", - "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", - "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." - ], - "path": "evidence/receipts/native-nautilus-v2-20260920.json" + "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", + "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", + "No provider or whole-task token savings measurement." + ] }, { - "id": "native-observability", + "path": "evidence/receipts/wsl-application-20260920.json", + "id": "wsl-application-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana", - "alertmanager", - "ntfy" + "nextjs", + "react", + "fastapi", + "postgresql", + "playwright-test" ], - "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", + "claim": "Clean isolated WSL runtime restored the same locked application, passed12 API checks, migration reversal, schema/types, production build and real browser flow; exact row/history persisted after PostgreSQL/API/Next restart.", "limitations": [ - "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", - "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", - "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", - "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", - "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", - "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." - ], - "path": "observability/receipt.json" + "Synthetic loopback application; no production deployment, user authentication or another-host acceptance.", + "Official exact Ubuntu packages were extracted task-only with signed metadata/SHA verification; no package scripts or system database changes.", + "Historical application inputs remain frozen; Makelevel/TIME_WAIT recipe fixes were qualified separately with five real make/socket tests on Mac and WSL.", + "No model calls by application commands; whole-task usage remains unknown." + ] }, { - "id": "native-observability-followup", - "kind": "native_model_e2e", + "id": "wsl-transport-recovery-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "context-mode", - "ai-memory", - "socraticode", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana" + "dagu" ], - "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", + "claim": "An owned nonmultiplexed SSH client was terminated; fresh reconnect observed the same native Dagu job running with one unchanged checkpoint, then native completion without stop or retry.", "limitations": [ - "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", - "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", - "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", - "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", - "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", - "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." + "Controlled client termination and a deliberately detached deterministic job; not a real network outage, host restart, model-session recovery or distributed exactly-once guarantee.", + "First harness attempt misclassified native SSH exit255 and stopped the job; its narrower same-run finalizer retry is retained separately from corrected survival acceptance.", + "Original12-test oracle passed before and after; observed owned processes/listener retired; whole-task provider usage remains unknown." ], - "path": "observability/followup-receipt.json" + "path": "evidence/receipts/wsl-transport-recovery-20260920.json" }, { - "id": "native-offhost-app-state-20260920", + "id": "wsl-document-ingestion-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qdrant", - "restic" + "poppler" ], - "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", + "claim": "Native Poppler26.09.0 built in a clean WSL prefix and passed the frozen3-page,24-cell,8-positive/4-absent document protocol; four extraction/retrieval artifacts exactly match Mac output.", "limitations": [ - "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", - "Sequential native application snapshots do not establish an atomic cross-application transaction.", - "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", - "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", - "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", - "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", - "No model/provider/broker calls or causal token/cost savings measurement." + "Designed born-digital Latin fixture with explicit table geometry; no OCR, inferred layout, general semantic retrieval or broad upstream corpus qualification.", + "Exact source signature, signed package extraction and native dependency checks preceded execution; failed first public-key lookup remains recorded.", + "No global package/service/client change or model/GPU invocation; whole-task provider usage unknown." ], - "path": "evidence/receipts/native-offhost-app-state-20260920.json" + "path": "evidence/receipts/wsl-document-ingestion-20260920.json" }, { - "id": "native-offhost-restic-20260920", + "id": "wsl-memory-maintenance-20260920", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "ai-memory" ], - "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", + "claim": "Official Linux ai-memory2.3.2 passed65 synthetic native checks across exact scope, Unicode/reserved paths, restart, upstream HTTP backup and native restore; four owned processes exited0.", "limitations": [ - "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", - "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", - "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", - "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", - "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", - "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." + "Isolated fresh synthetic store and39 MCP tool calls; not production activation, native-client integration or prior-version migration.", + "Automatic capture, embeddings, generation, watcher and autowire disabled; no OS-confinement claim.", + "Native backup/restore both exit0; complete private logs retained, fixture model calls0 and whole-task provider usage unknown." ], - "path": "evidence/receipts/native-offhost-restic-20260920.json" + "path": "evidence/receipts/wsl-memory-maintenance-20260920.json" }, { - "path": "adoption/paired/receipt.json", - "id": "native-paired-adoption-20260919", - "kind": "native_model_e2e", + "id": "token-practice-confirmation-20260920", + "kind": "historical_inventory", "component_ids": [ - "codex", - "claude-code", - "duckdb", - "dagu", - "lean", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "rtk", + "context-mode", + "headroom", + "jcodemunch-mcp" ], - "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", + "claim": "Dated direct upstream counter outputs, current release metadata, independent artifact rechecks and reconciled recorded monitoring support explicit baseline selection without claiming causal lifetime provider savings.", "limitations": [ - "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", - "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", - "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", - "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", - "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", - "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", - "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", - "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." - ] + "Historical source-host observations only; not live acceptance on the reader's PC.", + "Upstream retained-history estimates, exact artifact counts and provider consumption are different quantities and must not be summed.", + "Artifact and client rechecks inspected existing retained inputs and streams; no new model task or reinstall was performed in this confirmation.", + "Public native fields are allowlisted unchanged from private outputs; host paths, process identifiers and account details are omitted.", + "Latest monitoring queries returned no matching observations in their six-hour window; this does not mean zero usage or newly confirmed savings.", + "Latest-release equality was checked only for the four selected token tools; accepted specialist compatibility pins are separate." + ], + "path": "evidence/receipts/token-practice-confirmation-20260920.json" }, { - "path": "blueprints/us-equities/point-in-time/receipt.json", - "id": "native-point-in-time-contract-20260919", + "id": "native-token-clean-prefix-20260920", "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "headroom", + "jcodemunch-mcp" ], - "claim": "DuckDB 1.5.5 materialized and selected a synthetic temporal snapshot; late revisions, universe state, feed/adjustment scope and pinned snapshot integrity were exercised through native Python SDK/SQL commands.", + "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", "limitations": [ - "Synthetic observations only; no entitled or accepted market dataset, SEC download, vendor API, model or broker call occurred.", - "Availability timestamps and evidence references are declarations, not independently authenticated vendor publication evidence.", - "Local snapshot ingestion time is separate from source publication and original capture time.", - "Scope is realized observations and effective universe state; it does not model every corporate action, event forecast, symbol mapping or delisting history.", - "Hash checks require the caller to retain a trusted manifest digest independently; local file permissions are not immutable storage or off-host recovery." - ] + "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", + "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", + "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", + "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", + "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", + "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", + "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", + "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." + ], + "path": "evidence/receipts/native-token-clean-prefix-20260920.json" }, { - "id": "native-progress-capacity-20260921", + "id": "current-session-observation-20260920", "kind": "native_cli_e2e", "component_ids": [ + "agentsview", + "ai-memory", + "alertmanager", + "ccusage", + "claude-hud", + "context-mode", + "grafana", + "headroom", + "jcodemunch-mcp", "loki", - "dagu" + "mcporter", + "ntfy", + "opentelemetry-collector-contrib", + "otel-tui", + "prometheus", + "rtk", + "serena", + "socraticode" ], - "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", + "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", "limitations": [ - "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", - "No client restart, service restart or physical reboot was performed or verified.", - "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", - "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", - "No live provider inference, account change, new dependency or upstream version change for this repair." + "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", + "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", + "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", + "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", + "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", + "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", + "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", + "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." ], - "path": "observability/grand-dashboard/capacity-recovery-20260921.json" + "path": "evidence/receipts/current-session-observation-20260920.json" }, { - "id": "native-quality-defaults-20260920", + "id": "foundation-native-20260920", "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "qmd", + "qdrant", + "vllm", + "socraticode", + "serena", + "context-mode", + "jcodemunch-mcp", + "rtk", + "headroom", + "repomix", + "toon", "codex", - "claude-code" + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "omniroute" ], - "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", + "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", "limitations": [ - "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", - "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", - "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", - "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", - "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." + "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", + "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", + "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", + "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", + "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", + "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", + "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", + "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", + "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." ], - "path": "evidence/receipts/native-quality-defaults-20260920.json" + "path": "evidence/receipts/foundation-native-20260920.json" }, { - "id": "native-rag", - "path": "evidence/receipts/native-rag.json", - "kind": "native_model_e2e", + "id": "codex-session-environment-20260920", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "socraticode", - "qdrant", - "vllm", - "huggingface-hub-native" + "context-mode", + "jcodemunch-mcp", + "serena", + "ai-memory", + "socraticode" ], - "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", + "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", "limitations": [ - "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", - "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." - ] - }, - { - "id": "native-research-efficiency-20260920", - "kind": "native_model_e2e", - "component_ids": [ - "codex", - "claude-code", - "qmd" - ], - "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", - "limitations": [ - "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", - "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", - "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", - "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", - "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", - "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", - "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", - "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", - "Local supervision does not prove provider-side cancellation; no run timed out.", - "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." - ], - "path": "blueprints/us-equities/research-efficiency/native-receipt.json" - }, - { - "id": "native-research-runtime-20260919", - "kind": "native_model_e2e", - "component_ids": [ - "claude-code", - "dagu", - "lean", - "duckdb", - "opentelemetry-collector-contrib", - "prometheus", - "loki" - ], - "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", - "limitations": [ - "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", - "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", - "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", - "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", - "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", - "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", - "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", - "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." + "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", + "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", + "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", + "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", + "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", + "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", + "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." ], - "path": "blueprints/us-equities/research-runtime/receipt.json" + "path": "evidence/receipts/codex-session-environment-20260920.json" }, { - "id": "native-returned-results-20260921", + "id": "codex-desktop-live-20260920", "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "rtk", "context-mode", - "qmd", + "jcodemunch-mcp", "serena", "ai-memory", "socraticode", - "qdrant", - "agentsview", - "grafana", - "loki", - "prometheus", - "dagu", - "ntfy", - "omniroute", - "agent-browser", - "promptfoo", + "rtk", "headroom", - "jcodemunch-mcp" + "qmd", + "loki", + "prometheus" ], - "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", + "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", "limitations": [ - "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", - "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", - "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", - "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", - "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", - "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", - "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", - "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", - "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." + "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", + "Tools without native savings ledgers remain unavailable, not zero.", + "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", + "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", + "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", + "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", + "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", + "No fresh Prometheus turn sample in the selected window; no three-way observation join." ], - "path": "evidence/receipts/native-returned-results-20260921.json" + "path": "evidence/receipts/codex-desktop-live-20260920.json" }, { - "id": "native-runtime-role-resolution-20260930", - "kind": "native_model_e2e", + "id": "native-session-defaults-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "omniroute", - "claude-code" + "codex", + "claude-code", + "ai-memory", + "context-mode", + "rtk", + "qmd" ], - "claim": "One host installed separately versioned OpenHands CLI1.16.0/SDK1.50.1 and DeepAgents0.7.21 candidates through native supported interfaces. CLI108 and final SDK184 unchanged upstream tests passed; DeepAgents361 passed with1 expected failure in its separate upstream-lock environment. Actual OmniRoute Sol-Max requests passed one OpenHands native LLM exact-output round-trip and bounded DeepAgents selected-skill/single-specialist research, saved-context repair and fresh-process SQLite continuation. All results are scoped, not a universal framework winner or global default promotion.", + "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", "limitations": [ - "CLI SDK1.21 Jinja cache hard-codes real user home; strict cache isolation remains held.", - "Final SDK native configuration/tests exercise skills/plugins/MCP/condenser interfaces; production MCP, full Conversation/condenser/provider execution and optional extensions are not qualified by them.", - "Original DeepAgents24-step attempt failed; one changed32-step saved-context repair passed. No arbitrary interrupted-tool replay, OS confinement or comparative winner is qualified.", - "Complete provider billing/backend identity and whole-task token savings remain unknown; cached/reasoning counters are subsets.", - "Native Claude Opus/Max peer timed out180s exit124 without a verdict; later peer turns reached account usage limits. Completed earlier reviews are preserved; no new acknowledgement/approval is claimed.", - "Original full output stays private with exact hashes; public excerpts replace private paths and omit raw conversations, marker values, credentials and flow identifiers.", - "Exact executed sources are archived. Initial whitespace/comment cleanup had identical ASTs; the current worker subsequently adopts native secret-aware serialization after CodeQL, verified by native fixture and fresh saved-state checks. No new provider run is claimed." + "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", + "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", + "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", + "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", + "Claude startup events join four starts to four completions but do not identify individual configured commands.", + "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", + "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." ], - "path": "evidence/receipts/native-runtime-role-resolution-20260930.json" + "path": "evidence/receipts/native-session-defaults-20260920.json" }, { - "id": "native-sandbox-network-20260920", - "path": "evidence/receipts/native-sandbox-network-20260920.json", + "id": "native-token-ci-local-20260920", "kind": "native_cli_e2e", "component_ids": [ - "sandbox-runtime" + "rtk", + "qmd", + "repomix", + "toon" ], - "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", + "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", "limitations": [ - "HTTP proxy path tested on this Linux/WSL host", - "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", - "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", - "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." - ] + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" + ], + "path": "evidence/receipts/native-token-ci-local-20260920.json" }, { - "id": "native-sdk-acceptance-20261002", + "id": "native-token-ci-github-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code" + "rtk", + "qmd", + "repomix", + "toon" ], - "claim": "Actual Claude SDK task failed its independent oracle despite successful protocol completion; a separate informed Codex SDK repair passed all four unchanged cases. Unchanged Claude and OpenHands default source suites passed within recorded skip, warning and environment limits.", + "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", "limitations": [ - "Two different model tasks and source-test suites have different evidence scopes; this is not a model-quality or token-efficiency comparison, global SOTA winner claim or full foundation closure.", - "Claude original useful-task acceptance remains FAILED. Codex passes only the four-case informed repair; its requested model/effort are bound, but resolved model/provider identity and billing cost were not returned.", - "Coordinator observed invocation, native exits and process samples. Independent reviewers checked retained source/artifact/outcome bindings without rerunning; hash equality alone is not execution provenance.", - "Public attachments are declared projections, exact resulting candidates and selected native output. Complete permitted streams remain private; raw conversations, auth/session metadata and personal paths are not published.", - "Claude default source suite has six skips, with five collection identities inferred from source/dependencies. OpenHands retains seven optional ToolShield skips, 12 xfails, 83 warnings, default stress/ACP-live exclusions and a preserved failed environment attempt; exact fetched model-map bytes were not retained.", - "OpenHands is supplemental source-test evidence, not a new adopted stack component. Its FACTS provider task remains unrun in this lane; Codex default source-suite execution remains with its separate owner.", - "Researcher/reviewer roles, resume/recovery, selected MCP, generation permission-negative tests, complete target lifecycle and target token routing remain open. Exact before/after process-name samples do not prove complete descendant cleanup.", - "Historical Claude task binding is CLI2.1.287. Current release2.1.288 reconciliation remains with the configuration owner and cannot retroactively change these captures." + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" ], - "path": "evidence/receipts/native-sdk-acceptance-20261002.json" + "path": "evidence/receipts/native-token-ci-github-20260920.json" }, { - "id": "native-sdk-role-mcp-followup-20261002", + "id": "native-tavily-cli-20260920", "kind": "native_cli_e2e", "component_ids": [ + "tavily-cli", + "codex", "claude-code" ], - "claim": "Retained Claude SDK evidence supports minimal inline MCP callback/terminal assertions with synthetic controls and one native deny-rule pair with a disarmed-rule control; the reviewer case completed without a discriminating control, and the researcher case is controlled for missing findings only. Prior researcher failures remain FAIL and complete role qualification remains incomplete.", + "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", "limitations": [ - "Retained independent case ACCEPT verdicts are observations, not qualified role acceptance. Reviewer negative grading has no discriminating control; the original researcher FAIL controls missing findings only, not wrong facts/citations or attribution.", - "Synthetic MCP0/1/1 controls discriminate callback presence and terminal success only. The separate native armed0/disarmed1 pair supports one actual deny-rule observation; definition visibility unknown, no can_use_tool callback configured.", - "Earlier query timestamps unknown; deny-pair UTC intervals captured. Counters retain separate scopes; interrupted whole-query usage/cost unknown. No billed-cost or efficiency claim.", - "Selected QMD/Serena, recovery, containment, complete lifecycle and whole-host qualification remain open; process samples are bounded and staging is not managed-upgrade acceptance.", - "Sanitized projections only; private original hashes, failed cases and corrections retained. The projection step ran no new provider/test/control execution and made no shared edits; registration in manifests/evidence.json is separate from that step." + "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", + "Claude global skill listing is not a Claude model-turn execution of every skill.", + "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", + "Search/Extract results do not independently establish their source claims or a complete research deliverable.", + "No native lifetime or exact provider-token savings counter is established.", + "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." ], - "path": "evidence/receipts/native-sdk-role-mcp-followup-20261002.json" + "path": "evidence/receipts/native-tavily-cli-20260920.json" }, { - "id": "native-sec-access-resolution-20260919", + "id": "native-nautilus-v2-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "nautilus-trader" ], - "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", + "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", "limitations": [ - "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", - "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", - "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", - "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", - "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", - "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", - "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", - "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." + "Release candidate, not production/live-capital acceptance.", + "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", + "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", + "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", + "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", + "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", + "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." ], - "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" + "path": "evidence/receipts/native-nautilus-v2-20260920.json" }, { - "id": "native-sec-new-host-20260924", - "kind": "native_cli_e2e", + "id": "native-harness-defaults-20260920", + "kind": "artifact_measurement", "component_ids": [ - "edgartools" + "codex", + "claude-code" ], - "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", + "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", "limitations": [ - "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", - "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", - "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", - "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", - "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", - "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", - "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." + "Saved instruction bytes are not proof that every future model decision will follow them.", + "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", + "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." ], - "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", - "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" + "path": "evidence/receipts/native-harness-defaults-20260920.json" }, { - "id": "native-security-identity-20260920", - "kind": "native_cli_e2e", + "id": "native-worker-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "alpaca-py", - "duckdb" + "claude-code" ], - "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", + "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", "limitations": [ - "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", - "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", - "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", - "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", - "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", - "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", - "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", - "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." + "One synthetic local fixture and one physical WSL host, not arbitrary application state.", + "Actual native child identities and paths remain private; hashes bind retained streams.", + "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", + "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", + "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", + "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", + "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." ], - "path": "blueprints/us-equities/identity-readiness/native-receipt.json" + "path": "evidence/receipts/native-worker-recovery-20260920.json" }, { - "id": "native-service-reboot-20260920", - "kind": "native_cli_e2e", + "id": "foundation-catalog-ui-20260920", + "kind": "artifact_measurement", "component_ids": [ - "dagu", - "systemd" + "agent-browser" ], - "claim": "A signed disposable Ubuntu guest automatically resumed the same native Dagu run after an orderly kernel reboot, preserved its checkpoint and produced one local effect. A dedicated read-only serial observer and independent journal review confirmed completion before postboot SSH; owned cleanup passed.", + "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", "limitations": [ - "One orderly disposable guest reboot with a synthetic workload; not a physical PC, power loss, production disaster recovery, provider recovery or broker acceptance.", - "The unchanged official Dagu retry tests are a selected upstream subset. The project planner, its original 12-test oracle and the guest experiment are local synthetic integration coverage.", - "Source, disk and process continuity cover this owned guest only; no distributed exactly-once or arbitrary external side-effect guarantee.", - "Public text projections replace owned home prefixes and synthetic UUIDs and normalize CRLF. Original artifact/stream hashes and explicit projection rules are retained; projected bytes are not labelled raw-byte-identical.", - "The full auth-free guest archive contains three hidden bookkeeping files omitted by loose-file artifact upload. Independent inspection used the intact archive.", - "Both prior failed attempts remain failures; retrospective successful workload records did not override their missing acceptance evidence.", - "No model was called and no provider or lifetime token-saving measurement was made." + "Source pin/publication URLs pending parent final source commit and regeneration.", + "No provider/broker execution or broad regression rerun performed.", + "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." ], - "path": "evidence/receipts/native-service-reboot-20260920.json" + "path": "evidence/receipts/foundation-catalog-ui-20260920.json" }, { - "id": "native-session-defaults-20260920", + "id": "native-worker-containment-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "ai-memory", - "context-mode", - "rtk", - "qmd" + "systemd", + "claude-code" ], - "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", + "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", "limitations": [ - "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", - "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", - "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", - "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", - "Claude startup events join four starts to four completions but do not identify individual configured commands.", - "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", - "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." + "Deterministic cgroup proof is not successful native child crash/resume acceptance.", + "Earlier same-child continuation still required explicit direct descendant cleanup.", + "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." ], - "path": "evidence/receipts/native-session-defaults-20260920.json" + "path": "evidence/receipts/native-worker-containment-20260920.json" }, { - "id": "native-simulation-research-dashboard-20260919", + "id": "native-nautilus-ci-20260920", "kind": "native_cli_e2e", "component_ids": [ - "grafana", - "loki" + "nautilus-trader" ], - "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", + "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", "limitations": [ - "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", - "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", - "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", - "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", - "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", - "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", - "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." + "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", + "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", + "Network namespace and available-interface observations are not measured counts of attempted external transports." ], - "path": "blueprints/us-equities/simulation-research/receipt.json" + "path": "evidence/receipts/native-nautilus-ci-20260920.json" }, { - "id": "native-tavily-cli-20260920", + "id": "native-catalog-retrieval-20260920", "kind": "native_cli_e2e", "component_ids": [ - "tavily-cli", - "codex", - "claude-code" + "qmd" ], - "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", + "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", "limitations": [ - "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", - "Claude global skill listing is not a Claude model-turn execution of every skill.", - "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", - "Search/Extract results do not independently establish their source claims or a complete research deliverable.", - "No native lifetime or exact provider-token savings counter is established.", - "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." + "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", + "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", + "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", + "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." ], - "path": "evidence/receipts/native-tavily-cli-20260920.json" + "path": "evidence/receipts/native-catalog-retrieval-20260920.json" }, { "id": "native-tavily-session-20260920", @@ -2815,127 +2357,60 @@ "path": "evidence/receipts/native-tavily-session-20260920.json" }, { - "id": "native-terminal-profiles-20260920", - "kind": "native_cli_e2e", + "id": "native-worker-cgroup-20260920", + "kind": "native_model_e2e", "component_ids": [ - "codex", "claude-code", - "qdrant", - "vllm" - ], - "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", - "limitations": [ - "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", - "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", - "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", - "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", - "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." - ], - "path": "evidence/receipts/native-terminal-profiles-20260920.json" - }, - { - "id": "native-token-ci-github-20260920", - "kind": "native_cli_e2e", - "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "systemd" ], - "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", + "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", + "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", + "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", + "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", + "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." ], - "path": "evidence/receipts/native-token-ci-github-20260920.json" + "path": "evidence/receipts/native-worker-cgroup-20260920.json" }, { - "id": "native-token-ci-local-20260920", + "id": "native-service-reboot-20260920", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "dagu", + "systemd" ], - "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", + "claim": "A signed disposable Ubuntu guest automatically resumed the same native Dagu run after an orderly kernel reboot, preserved its checkpoint and produced one local effect. A dedicated read-only serial observer and independent journal review confirmed completion before postboot SSH; owned cleanup passed.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "One orderly disposable guest reboot with a synthetic workload; not a physical PC, power loss, production disaster recovery, provider recovery or broker acceptance.", + "The unchanged official Dagu retry tests are a selected upstream subset. The project planner, its original 12-test oracle and the guest experiment are local synthetic integration coverage.", + "Source, disk and process continuity cover this owned guest only; no distributed exactly-once or arbitrary external side-effect guarantee.", + "Public text projections replace owned home prefixes and synthetic UUIDs and normalize CRLF. Original artifact/stream hashes and explicit projection rules are retained; projected bytes are not labelled raw-byte-identical.", + "The full auth-free guest archive contains three hidden bookkeeping files omitted by loose-file artifact upload. Independent inspection used the intact archive.", + "Both prior failed attempts remain failures; retrospective successful workload records did not override their missing acceptance evidence.", + "No model was called and no provider or lifetime token-saving measurement was made." ], - "path": "evidence/receipts/native-token-ci-local-20260920.json" + "path": "evidence/receipts/native-service-reboot-20260920.json" }, { - "id": "native-token-clean-prefix-20260920", + "id": "native-offhost-app-state-20260920", "kind": "native_cli_e2e", "component_ids": [ - "headroom", - "jcodemunch-mcp" - ], - "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", - "limitations": [ - "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", - "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", - "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", - "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", - "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", - "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", - "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", - "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." - ], - "path": "evidence/receipts/native-token-clean-prefix-20260920.json" - }, - { - "id": "native-token-focus-clients-20260920", - "path": "evidence/receipts/native-token-focus-clients-20260920.json", - "kind": "native_model_e2e", - "component_ids": [ - "codex", - "claude-code", - "context-mode", - "jcodemunch-mcp" - ], - "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", - "limitations": [ - "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", - "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", - "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", - "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", - "Raw private prompts, client streams, account identifiers and host paths are not published." - ] - }, - { - "id": "native-token-stack-final-20260920", - "kind": "native_model_e2e", - "component_ids": [ - "claude-code", - "codex", - "context-mode", - "jcodemunch-mcp", - "headroom", - "rtk", - "opentelemetry-collector-contrib", - "loki", - "prometheus" + "ai-memory", + "qdrant", + "restic" ], - "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", + "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", "limitations": [ - "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", - "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", - "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", - "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", - "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", - "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", - "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", - "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." + "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", + "Sequential native application snapshots do not establish an atomic cross-application transaction.", + "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", + "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", + "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", + "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", + "No model/provider/broker calls or causal token/cost savings measurement." ], - "path": "evidence/receipts/native-token-stack-final-20260920.json" + "path": "evidence/receipts/native-offhost-app-state-20260920.json" }, { "id": "native-ultracode-20260921", @@ -2957,480 +2432,849 @@ "path": "evidence/receipts/native-ultracode-20260921.json" }, { - "id": "native-worker-cgroup-20260920", - "kind": "native_model_e2e", + "id": "native-dashboard-access-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "systemd" + "dagu", + "qdrant", + "agentsview", + "grafana", + "prometheus", + "ntfy", + "agent-browser", + "omniroute" ], - "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", + "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", "limitations": [ - "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", - "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", - "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", - "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", - "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." + "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", + "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", + "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", + "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", + "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", + "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", + "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." ], - "path": "evidence/receipts/native-worker-cgroup-20260920.json" + "path": "evidence/receipts/native-dashboard-access-20260921.json" }, { - "id": "native-worker-containment-20260920", + "id": "full-stack-convergence-20260921", "kind": "native_cli_e2e", "component_ids": [ - "systemd", - "claude-code" + "agent-browser", + "agentsview", + "ai-memory", + "ccusage", + "claude-code", + "codex", + "context-mode", + "dagu", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "loki", + "omniroute", + "openresearch", + "prometheus", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "toon", + "vllm", + "worktrunk" ], - "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", + "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", "limitations": [ - "Deterministic cgroup proof is not successful native child crash/resume acceptance.", - "Earlier same-child continuation still required explicit direct descendant cleanup.", - "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." + "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", + "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", + "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", + "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", + "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", + "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", + "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", + "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." ], - "path": "evidence/receipts/native-worker-containment-20260920.json" + "path": "evidence/receipts/full-stack-convergence-20260921.json" }, { - "id": "native-worker-recovery-20260920", - "kind": "native_model_e2e", + "id": "memory-landscape-20260921", + "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "codex", "claude-code" ], - "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", + "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", "limitations": [ - "One synthetic local fixture and one physical WSL host, not arbitrary application state.", - "Actual native child identities and paths remain private; hashes bind retained streams.", - "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", - "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", - "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", - "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", - "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." + "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", + "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", + "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", + "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", + "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", + "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", + "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", + "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", + "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." ], - "path": "evidence/receipts/native-worker-recovery-20260920.json" + "path": "evidence/receipts/memory-landscape-20260921.json" }, { - "id": "native-worker-supervision-20260919", - "path": "blueprints/us-equities/worker-supervision/receipt.json", + "id": "memory-landscape-lifecycle-20260921", "kind": "native_cli_e2e", "component_ids": [ - "systemd" + "ai-memory", + "socraticode", + "qdrant", + "vllm", + "serena", + "qmd", + "codex", + "claude-code" ], - "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", + "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", "limitations": [ - "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", - "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", - "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", - "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", - "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", - "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", - "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", - "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", - "Hashes bind retained evidence bytes; they do not independently attest the execution.", - "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", - "Configured resource limits were inspected, not saturation-tested." - ] + "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", + "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", + "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", + "Exact memory session/lifetime savings are not returned and remain null.", + "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." + ], + "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" }, { - "id": "native-workflow-graceful-recovery-20260921", + "id": "alpaca-paper-e2e-20260921", "kind": "native_cli_e2e", "component_ids": [ + "alpaca-py", "claude-code" ], - "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", + "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", "limitations": [ - "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", - "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", - "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", - "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." + "One operational smoke trial, not profitable strategy or continuous trading acceptance.", + "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", + "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." ], - "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" + "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" }, { - "id": "native-workflow-writing-comparison-20260921", + "id": "nautilus-equity-replay-20260921", "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "nautilus-trader" ], - "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", + "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", "limitations": [ - "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", - "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", - "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." + "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", + "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", + "SPY/LEAN corporate-action parity and historical universe availability remain separate." ], - "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" + "path": "evidence/receipts/nautilus-equity-replay-20260921.json" }, { - "id": "native-wsl-restic-synthetic-20260920", + "id": "foundation-convergence-20260921", + "kind": "native_model_e2e", + "component_ids": [ + "codex", + "claude-code", + "context-mode", + "rtk", + "headroom", + "toon" + ], + "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", + "limitations": [ + "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", + "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", + "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", + "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", + "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." + ], + "path": "evidence/receipts/foundation-convergence-20260921.json" + }, + { + "id": "native-progress-capacity-20260921", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "loki", + "dagu" ], - "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", + "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", "limitations": [ - "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", - "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", - "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", - "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", - "No token, storage-efficiency or backup performance claim.", - "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", - "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", - "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", - "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", - "Ten offline oracle/guard tests are distinct from the actual native restic commands." + "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", + "No client restart, service restart or physical reboot was performed or verified.", + "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", + "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", + "No live provider inference, account change, new dependency or upstream version change for this repair." ], - "path": "blueprints/convergence-practice/wsl-restore/receipt.json" + "path": "observability/grand-dashboard/capacity-recovery-20260921.json" }, { - "id": "nautilus-equity-replay-20260921", + "id": "claude-upstream-checks-20260921", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "codex", + "codex-for-claude", + "context-mode", + "dagu", + "difftastic", + "gitleaks", + "grafana", + "headroom", + "jcodemunch-mcp", + "lean", + "loki", + "markitdown", + "mcporter", + "nautilus-trader", + "openresearch", + "opentelemetry-collector-contrib", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", + "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", "limitations": [ - "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", - "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", - "SPY/LEAN corporate-action parity and historical universe availability remain separate." + "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", + "Complete originals remain private; public excerpts are bounded and sanitized.", + "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." ], - "path": "evidence/receipts/nautilus-equity-replay-20260921.json" + "path": "evidence/receipts/claude-upstream-checks-20260921.json" }, { - "id": "new-wsl-embedding-model-20261002", + "id": "foundation-rd-20260921", "kind": "native_model_e2e", "component_ids": [ - "huggingface-hub-native" + "claude-code", + "codex", + "codex-for-claude", + "qmd" ], - "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02 and 2026-10-03, with the generation model swift-iq3s-s2o-64k resident, the preregistered comparison for the new WSL's embedding model gave the slot to E1: qwen3-embedding:0.6b (Q8_0, Ollama library manifest ac6da0dfba84a81fdbfbaf330198c33cd77c4cdfc53e8bc50eb581914a15621d) on Ollama 0.35.0 as qwen3-embedding-8k (num_ctx 8192). On MTEB 2.22.1's CQADupstackUnixRetrieval (test split: 47,382 documents, 1,072 queries) its nDCG@10 was 0.49827 against 0.41394 for EmbeddingGemma on the same server: E1 minus E2 0.084331, 95% paired bootstrap interval over queries 0.067738 to 0.100656 (10,000 resamples, seed 20260927). Nemotron-3-Embed-1B, which needs a second model server, scored 0.5014; E3 minus E1 was 0.003124 with an interval of -0.012194 to 0.018141 that includes zero, so by the second-server rule it does not take the slot. WeMM-Embedding-2B passed the fit gate but ran out of GPU memory in its full run and is out. The reranking condition was not run.", + "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", "limitations": [ - "One public retrieval task (CQADupstack Unix: English technical questions from a StackExchange forum), one workstation, one throwaway distribution, one run per arm: a local integration check, not an acceptance on the destination distribution.", - "Nemotron's tie holds for this task only; multilingual retrieval, longer documents and other domains were not measured.", - "The two Ollama arms are GGUF conversions served by the one model server; a difference from the reference weights is a difference of the systems, not of the models alone.", - "E1's and E2's prompts are MTEB's reference prompts as observed with a stub before the runs (amendment 4a): E1 sends the Qwen3 instruction before queries and nothing before documents; E2 sends EmbeddingGemma's query and document prompts.", - "Gate F reads the model server's listing: in window pb2 the card's memory in use fell between steps while the server kept listing the generation model entirely on the GPU, consistent with the Windows driver moving part of it off the card, so E3 passing gate F does not show co-residency. In window pb1 the readings matched the resident models, so E1's co-residency with the generation model is supported by both readings.", - "E4's first error text was lost: after its evaluation failed out of memory, the script's memory query raised the same sticky CUDA error and the outer handler replaced the text; the outcome is not in doubt, because only the evaluation's handler sets out_of_memory.", - "The reranking condition was not run: no installed retrieval owner can call an external reranker (QMD reranks in-process with its bundled model), and zerank-2 (7.49 GiB of weights) cannot be resident beside the generation model on this card.", - "Recorded, not deciding: evaluation time E1 1,166 s, E2 771 s, E3 460 s (E3 in-process, not comparable with the Ollama arms); resident sizes E1 2,857,191,341 bytes and E2 681,417,113 bytes.", - "manifests/stack.json has no Ollama or MTEB component; component_ids name huggingface-hub-native, the native route for the revision-pinned snapshots of E3 and E4, which the measurement downloaded through the huggingface_hub library at MTEB's registered revisions (its version is in the throwaway's freeze list, which was not retained).", - "The 31 MB prediction files and the run records stay private and are listed by sha256 in files.json; the published per-query nDCG@10 files reproduce the decision statistic.", - "With a server-wide context of 64,000 the embedder loaded at its full context and took 5.78 GB (Part A, A1b); the measured system sets the context per model (qwen3-embedding-8k, 8,192 tokens), never server-wide." + "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", + "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", + "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", + "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", + "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." ], - "path": "evidence/artifacts/new-wsl-local-models-20261002/part-b-receipt.json" + "path": "evidence/receipts/foundation-rd-20260921.json" }, { - "id": "new-wsl-local-generation-model-20261002", + "id": "claude-foundation-finalization-20260921", "kind": "native_model_e2e", "component_ids": [ + "claude-code", "codex", - "claude-code" + "agent-browser", + "repomix" ], - "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02, the preregistered comparison for the new WSL's local generation model gave the slot to S2o: Swift-1.5-Qwen3.8-27B IQ3_S (ukisai/Swift-1.5-Qwen3.8-27B-GSQ-RCO-GGUF at revision d74895bbe5db4bec1e0024e7cc87d59c02d7631a, file sha256 1333c6ea70ef348d4ac6d62732772e8ad6571ac5b3754c14ed54f1a0d904a786, 11,771,546,912 bytes) on Ollama 0.35.0 as swift-iq3s-s2o-64k (context 64,000). On the same 100 BFCL simple_python cases (inspect-evals 0.23.0 on Inspect AI 0.3.273) through the server's chat and responses surfaces, its first-pass valid tool calls were 200 of 200 against 175 of 200 for the control gpt-oss:20b: difference 0.125, 95% paired bootstrap interval over cases 0.065 to 0.19 (10,000 resamples, seed 20260927), not a tie. Both arms were entirely on the GPU with the embedder resident in the order of use, and both passed 10 of 10 client tasks (Codex 0.160.0 and Claude Code 2.1.287). Bonsai PTQ1_0, Bonsai PQ2_0 and Swift on PrismML's llama.cpp server failed the function gate (0 of 3 runs each: the server skips the Codex client's namespace tool type), and qwen3.8:27b was not entirely on the GPU at 64,000 tokens.", + "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", "limitations": [ - "One workstation, one throwaway distribution, one run per case and arm: a local integration check of the systems named, not an acceptance on the destination distribution.", - "First-pass tool-call validity on 100 simple public cases (BFCL simple_python) through two interfaces; nothing about coding quality, long tasks, throughput under concurrent requests or behaviour above 64,000 tokens.", - "The Anthropic-style messages surface was not evaluated through the package (Inspect AI 0.3.273 cannot read this thinking model's answer); it was exercised only by Claude Code in the client tasks, which both arms passed.", - "S2o was slower in these runs: 292 and 303 seconds for 100 cases on chat and responses against 100 and 139 for the control, and 43.1 against 108.9 output tokens per second on single long prompts that were not run as a speed comparison.", - "S2o leaves less GPU memory free: 21,579 of 24,564 MiB in use with the embedder resident while Windows applications held about 2,600 MiB; earlier the same day they held up to about 5,900 MiB, at which the same load would leave under one GB. Co-residency on a busier desktop and on the destination distribution is not measured.", - "The Ollama import is this measurement's system, not a route the publisher documents: the library qwen3.8:27b model's renderer, parser, parameters, template and licence lines with the Swift file as FROM. The publisher's own route (llama.cpp's server, here PrismML's fork) failed the function gate for a reason that lies in that server. The quantization's card says its quality tests used a 512-token context.", - "The arm that took the slot was added by the preregistration's extension (amendment 3) after the owner asked for the newest releases; the deciding measurement as the critic named it had two arms (qwen3.8:27b and gpt-oss:20b), the earlier result for gpt-oss:20b is kept as a historical result, and gpt-oss:20b ran A2 as the control under the same rules.", - "Three deviations are recorded (a void first window, the Codex client's model name with its tag, a reused label); none changed a case, a limit, the metric or the rule, and none was decided on an outcome.", - "Recorded, not deciding: the package's own score (S2o 97 and 95 of 100, the control 83 and 83) and the client tasks (10 of 10 for each arm).", - "manifests/stack.json has no Ollama, Inspect AI or PrismML llama.cpp component, so component_ids name the two clients that ran the client tasks (Codex also ran the function gate); they ran at Codex 0.160.0 and Claude Code 2.1.287, not at the stack's recorded 0.159.3 and 2.1.284.", - "Raw model outputs (the Inspect logs, the client run records, the server logs) stay private and are listed by sha256 in files.json; the published per-case validity files carry case ids, verdicts, reasons and timings, and the decision statistic reproduces from them.", - "The Swift file's licence is the publisher's own (Swift Open License v1.0, with the original Qwen parts under Apache-2.0); the Modelfile's LICENSE block is the library model's Apache-2.0 text. Recorded, not judged." + "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", + "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", + "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", + "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." ], - "path": "evidence/artifacts/new-wsl-local-models-20261002/part-a-receipt.json" + "path": "evidence/receipts/claude-foundation-finalization-20260921.json" }, { - "id": "nextjs-1638-qualification-20261001", + "id": "adaptive-paper-practice-20260921", "kind": "native_cli_e2e", "component_ids": [ - "nextjs" + "nautilus-trader", + "alpaca-py", + "claude-code", + "codex" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-10-01, the application-delivery recipe was qualified at Next.js 16.3.8 (tag v16.3.8, commit b0fad0d45eb4c4430fda5eeeb442e8a5af08a5f6, released 2026-09-30T16:13:46Z), whose release notes list seven security advisories, the most severe GHSA-cjq9-62q9-8jv4 (high: server-side request forgery in Image Optimization). The two-file patch (package.json and pnpm-lock.yaml, sha256 570ac44d237b6641a5087fe57b079aaf61dcb781b6496a721b0224dd17ea60d0) changes next, @next/env and the eight @next/swc-* lock entries, every other lock entry byte-identical. With Node v24.21.0 and pnpm 12.4.2 the frozen install, the peer check, the typecheck and the production build each exited 0 (recorded at 16:07:49Z), after a first frozen install at 12:13Z exited 1 with ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION for the ten packages published on 2026-09-30; no exclusion or policy change was made.", + "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", "limitations": [ - "Bounded recipe checks only: make verify with its PostgreSQL, API and browser stages was not run, so the 2026-09-20 receipts still qualify 16.3.5, not 16.3.6 or 16.3.8.", - "The pnpm store, node_modules and build cache were warm from the earlier attempt; no cold-store install is claimed.", - "This recipe's exposure to the seven advisories was not established; the move removes the vulnerable versions from its lock.", - "Labels 15 to 17 are the version prints of Node and pnpm and a git diff check; they are metadata, not acceptance.", - "No new-host install ran: that is unit U10 on the new distribution. Provider usage of the builder is unknown." + "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", + "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", + "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", + "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." ], - "path": "evidence/receipts/nextjs-1638-qualification-20261001.json" + "path": "evidence/receipts/adaptive-paper-practice-20260921.json" }, { - "id": "notification-types-20260929", + "id": "broad-universe-research-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "alpaca-py", + "duckdb", + "claude-code", + "codex" + ], + "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", + "limitations": [ + "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", + "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", + "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", + "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", + "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." + ], + "path": "evidence/receipts/broad-universe-research-20260921.json" + }, + { + "id": "ultracode-token-routing-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code", + "codex" + ], + "claim": "Claude Code 2.1.278 native Workflow stages re-routed to lean project agents cut the provider-returned first-request prompt from 42,396 tokens (default child) to 12,164 (named MCP grants behind ToolSearch) and 8,048 (source-scout) on one identical task; eight native review runs, two readiness audits, a builder run and probes plus one Codex cross-family review are retained as sanitized usage receipts; Haiku was not routed after an Opus-verified 9/14 versus 14/14 extraction trial; workflowSizeGuideline moved from small to unrestricted with a task sizing rule.", + "limitations": [ + "First-prompt figures come from one tiny task on one host and model; they bound a fixed spawn cost, not a savings rate.", + "The Haiku judgment rests on one packet and one Opus verifier.", + "The strict accepted envelope status was never returned in the deploying project; the commit gate was fix-and-commit after each review's findings were resolved.", + "Local suites are stubbed or synthetic; provider figures reach the receipts only as sanitized child-usage.mjs output, with raw transcripts outside Git.", + "Codex thread and turn identifiers were redacted from the cross-review record." + ], + "path": "evidence/receipts/ultracode-token-routing-20260921.json" + }, + { + "id": "portable-claude-native-qualification-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code", + "codex", + "prometheus" + ], + "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", + "limitations": [ + "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", + "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", + "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", + "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", + "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." + ], + "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" + }, + { + "id": "sota-convergence-20260922", + "kind": "historical_inventory", + "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "apple-container", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codebase-memory-mcp", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "fastapi", + "gitleaks", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "llama-cpp", + "loki", + "markitdown", + "mcp-inspector", + "mcporter", + "nextjs", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "playwright-cli", + "playwright-test", + "poppler", + "postgresql", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "react", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shanraisshan/claude-code-best-practice", + "shellcheck", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" + ], + "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", + "limitations": [ + "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", + "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", + "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", + "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." + ], + "path": "evidence/receipts/sota-convergence-20260922.json" + }, + { + "id": "claude-repository-evidence-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "alpaca-py", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "duckdb", + "edgartools", + "gitleaks", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "lean", + "loki", + "markitdown", + "mcp-inspector", + "mcporter", + "nautilus-trader", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "pandas", + "playwright-cli", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shellcheck", + "skfolio", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" + ], + "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", + "limitations": [ + "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", + "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", + "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", + "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", + "Superseded observations, including the author's own probe and invocation errors, remain recorded." + ], + "path": "evidence/receipts/claude-repository-evidence-20260921.json" + }, + { + "id": "github-automation-newpc-20260922", "kind": "native_cli_e2e", "component_ids": [ + "codex", "claude-code" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", + "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", "limitations": [ - "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", - "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", - "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", - "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", - "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", - "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", - "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", - "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", - "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", + "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", + "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", + "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", + "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", + "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." + ], + "path": "evidence/receipts/github-automation-newpc-20260922.json" + }, + { + "id": "exchange-calendars-native-check-20260922", + "kind": "native_cli_e2e", + "component_ids": [ + "exchange-calendars" + ], + "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", + "limitations": [ + "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", + "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", + "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", + "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", + "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." + ], + "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" + }, + { + "id": "adoption-macos-hosted-smoke-20260922", + "kind": "native_cli_e2e", + "component_ids": [ + "codex", + "claude-code", + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" + ], + "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", + "limitations": [ + "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", + "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", + "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", + "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", + "socraticode is the profile's documented unpinned skip and was not installed." + ], + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" + }, + { + "id": "catalog-freshness-20260923", + "kind": "upstream_provenance", + "component_ids": [ + "claude-code", + "codex", + "llama-cpp", + "mcp-inspector", + "openresearch", + "skfolio" + ], + "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", + "limitations": [ + "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", + "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", + "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", + "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." + ], + "path": "evidence/receipts/catalog-freshness-20260923.json" + }, + { + "id": "adoption-macos-hosted-smoke-20260923", + "kind": "native_cli_e2e", + "component_ids": [ + "codex", + "claude-code", + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" ], - "path": "evidence/receipts/notification-types-20260929.json" + "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", + "limitations": [ + "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", + "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", + "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", + "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." + ], + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" }, { - "id": "ns2604-e2e-20261004", - "kind": "native_model_e2e", + "id": "wsl-retrieval-20260920", + "kind": "historical_inventory", "component_ids": [ - "claude-code", - "codex", - "omniroute" + "ast-grep", + "qmd" ], - "claim": "The historical 2026-10-04 foundation E2E covered 15 units and 80 slots through native executor observations, independent model review and 22 adjudications. Final labels are READY 18, PARTIAL 31, FAIL 2, BY_DESIGN 12 and INTERIM 17, with zero unjudged slots. Readiness is (18 + 12) / 80 = 37.5%, rounded half up to 38%; all 22 executor/reviewer disagreements were adjudicated, with 14 keeping the reviewer's status and 8 taking the executor's. This publication independently checks and sanitizes the retained status chains; it does not repeat host or provider execution. The adjudication prompt as run, claude-opus-5-5 at max effort with evidence-reviewer run records and timestamps, and the separate 33-slot fix list are retained.", + "claim": "Incomplete historical WSL fixture reference: selected receipts report 22 source checks/six commands and 70 QMD lexical checks/17 commands. Offline byte and result consistency can be checked, but missing command argv/cwd, unrecovered raw logs and unsupported historical QMD installation prevent native E2E or adoption acceptance.", "limitations": [ - "Host state is as of 2026-10-04 19:10\u201320:10Z only; later adjudication and source merge timestamp 2026-10-04T20:26:16Z do not extend that observation window. Publication and repair perform artifact inspection and structural checks in the owned sandbox; they do not repeat native host probes.", - "Fixes are pending. The 33 PARTIAL/FAIL slots after adjudication are not accepted as ready: 25 repository-plan and 8 host fixes (evidence/artifacts/ns2604-e2e-20261004/fixes.json). Four INTERIM token slots (context-supply, command-output, output-compression, code-index) are held for PR #684, which has not merged. The two open token slots have separate fixes: ccusage (FAIL, plan) and statusline (PARTIAL, host).", - "This is not an upstream benchmark. Native executor observations, independent model judgments and adjudication are separate from upstream tests, structural checks, independent host replication and measured quality or token improvement.", - "The 17 INTERIM slots are held by design. They remain in the denominator and contribute zero to the readiness numerator; the 12 BY_DESIGN slots are intentional dispositions rather than proof that their tools executed.", - "Adjudication: claude-opus-5-5 at effort max (evidence-reviewer), prompt template as run in evidence/artifacts/ns2604-e2e-20261004/adjudication-prompt.md. Run wf_8bf450a9-d1e (17 agents) started 2026-10-04T20:06:45Z and completed 2026-10-04T20:20:30Z; run wf_cdbf70a0-02c (5 agents) started 2026-10-04T20:08:29Z and completed 2026-10-04T20:19:31Z.", - "Historical source command excerpts and raw conversations remain private. Public reasons are bounded to 60 words, fixes preserve the merge's 900-character bound before sanitization, and citations are limited to four per slot. Hashes establish byte identity, not success or adequacy of every native acceptance claim.", - "Reviewer records report the requested gateway model cx/gpt-6.1-sol-max and max effort; no resolved backend model identity is inferred. Independent model review is review of retained evidence, not independent execution on the host.", - "The coordinator registers all eight published files in manifests/evidence.json in the PR's final registry-only commit, and full repository validation passes at that head. Per-file scans and local receipt tests are structural evidence only." + "Historical reference only; not live verification, native E2E acceptance or adoption evidence. No new host/native/client acceptance follows from these artifacts.", + "Historical command facts omit argv and cwd. Exact raw-log locations are unavailable; no invocation was reconstructed or represented as observed.", + "The unchanged historical install receipt records npm --ignore-scripts --omit=optional. Future installation must use the current supported recipe with NODE_LLAMA_CPP_SKIP_DOWNLOAD=true and required dependency scripts enabled.", + "Both executed runner versions and the initial URI-checker failure are retained byte-for-byte. The future runner adds command provenance capture without changing past evidence.", + "Receipt-reported 22/70 checks and 6/17 commands describe selected local/synthetic fixtures. Five failed-attempt commands remain separate; no upstream-suite, semantic RAG, production, client or service acceptance.", + "Source currency remains September 20; offline completion and review do not refresh releases or native execution. Whole-task provider usage is unknown and no savings claim is made." ], - "path": "evidence/receipts/ns2604-e2e-20261004.json" + "path": "evidence/receipts/wsl-retrieval-20260920.json" }, { - "id": "omniroute-3851-npm-qualification-20260930", - "kind": "compatibility_attempt", + "id": "gitleaks-macos-memory-bound-20260924", + "kind": "native_cli_e2e", "component_ids": [ - "omniroute" + "gitleaks" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", + "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", "limitations": [ - "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", - "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", - "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", - "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", - "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", - "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", - "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", - "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", - "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." + "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", + "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", + "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", + "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", + "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", + "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", + "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." ], - "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" + "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" }, { - "id": "omniroute-claude-callsite-20260930", - "kind": "native_model_e2e", + "id": "env-freshness-wsl-ubuntu-main-20260924", + "kind": "artifact_measurement", "component_ids": [ - "claude-code", - "codex", - "omniroute" + "nautilus-trader", + "alpaca-py", + "duckdb", + "pandas", + "edgartools", + "exchange-calendars", + "vllm" ], - "claim": "A native Claude Opus5.5/Max coordinator discovered and read the project dispatcher, invoked the official Sol-Max Codex SDK worker through native Bash, and the retained original shows one unchanged fixture test with exit0.", + "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", "limitations": [ - "One bounded read-only callsite and existing arithmetic oracle; no universal quality or SDK winner claim.", - "Coordinator tool scope was Bash/Read/Skill for this acceptance; other coordinator tools and optional MCP services are not qualified.", - "Native Claude and external Codex SDK usage remain separate scopes; parent list-price cost is not complete provider billing.", - "The separate Claude SDK Devin bridge remains failed/unqualified; this native Claude-account coordinator run does not promote it.", - "Provider backend identity, overall task usage, failed/interrupted calls, remote cancellation and token savings remain unverified." + "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", + "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", + "One host; each PC publishes its own report under the same schema.", + "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." ], - "path": "evidence/receipts/omniroute-claude-callsite-20260930.json" + "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" }, { - "id": "omniroute-runtime-enhancements-20260930", + "id": "vllm-030-switch-20260925", "kind": "native_model_e2e", "component_ids": [ - "codex", - "omniroute", - "context-mode", - "serena", - "dagu" + "vllm", + "socraticode" ], - "claim": "A scoped native Codex SDK Sol-Max worker completed skill use, selected Context Mode/Serena MCP calls, one Astra-Max native judge and an unchanged oracle through OmniRoute in a successful bounded Dagu graph.", + "claim": "vLLM 0.30.0 now serves the production Nemotron-3-Embed-1B-BF16 embeddings on the NativeStack WSL2 RTX 4090 host. Qualified first on an owned instance against production 0.25.0 (identical model files, flags and route), then switched by a systemd drop-in that changes only the binary path; the live service returned identical embeddings and identical top-10 code-index results after the switch.", "limitations": [ - "One unchanged arithmetic fixture and bounded integration; no universal highest-quality model, framework or SDK ranking.", - "169 enabled skills were visible through native discovery. This run read using-superpowers and exercised three selected MCP calls; it does not qualify every installed skill, tool, language server, plugin or hook.", - "Native hook support and live web search are configured, but their execution is unmeasured here. No scheduler, schedule, hook or global account configuration was installed by this kit.", - "Native parent and child cumulative usage are separate scopes. Cached input and reasoning are subsets; observer response counters corroborate the same usage and must not be added. Failed/interrupted and complete provider usage, billing and token savings remain unknown.", - "Each observed completed stream also has an unclassified flow_error record. Native results completed; transport is not described as error-free, and requested model/provider labels are not backend identity attestation.", - "The separate Claude SDK Devin bridge retains its failed/unqualified status. Earlier native Claude-to-SDK acceptance is a historical separate callsite, not a rerun against this source.", - "The follow-up native Claude cooperation session was stopped after no confirmed SendMessage/final packet; no peer approval or new owner-contact count is claimed.", - "The isolated kit is a scoped private worker configuration. Live owners retain shared worker policy, host-wide catalogs/defaults and dashboard checkpoint ownership." + "One host (NativeStack, RTX 4090, WSL2 Windows driver 616.64) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", + "Retrieval equality covers 8 gate texts and 5 live code-index queries (top-10), not an aggregate retrieval-quality benchmark.", + "0.30.0 relies on its pinned-memory fallback for WSL (PR #56908); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", + "The 0.25.0 prefix is kept for rollback; the base unit still names it and only the drop-in points at 0.30.0." ], - "path": "evidence/receipts/omniroute-runtime-enhancements-20260930.json" + "path": "evidence/receipts/vllm-030-switch-20260925.json" }, { - "id": "omniroute-runtime-workers-20260930", - "kind": "native_model_e2e", + "id": "rtk-050-qualification-20260925", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "omniroute" + "rtk" ], - "claim": "The retained official Codex SDK Sol-Max worker passed one upstream coding fixture, native resume and fresh recovery through the selected OmniRoute Responses lane. Interrupted usage and Claude bridge qualification remain unknown/failed.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", "limitations": [ - "One arithmetic fixture and lifecycle acceptance; no universal SDK or model quality ranking.", - "Actual provider trials invoked the SDK from root, rather than through a Claude coordinator. Native project dispatch skill is supplied and structurally checked; its coordinator invocation remains unmeasured.", - "Native Codex SDK remains the incumbent. The separate frozen three-arm SDK gate remains unresolved.", - "Native gateway requested/returned model labels are not backend attestation.", - "All 136 skills are available in the owned project, with two bodies exercised; full role coverage and optional service acceptance remain incomplete.", - "Native Codex repeated in-process fixtures emit stdout/stderr ResourceWarnings; standalone per-invocation child exit is qualified separately.", - "Complete provider usage, spending, remote cancellation and token savings remain unknown.", - "Public record is sanitized selected actual return fields and independent observations; original private returned artifacts remain outside the checkout." + "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", + "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", + "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", + "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", + "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", + "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", + "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." ], - "path": "evidence/receipts/omniroute-runtime-workers-20260930.json" + "path": "evidence/receipts/rtk-050-qualification-20260925.json" }, { - "id": "omniroute-sdk-worker-0160-20261003", - "kind": "native_model_e2e", + "id": "markitdown-018-qualification-20260925", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "omniroute", - "context-mode" + "markitdown" ], - "claim": "The SDK 0.160.0 B3 review candidate addresses all five PR #628 bot findings and passed twelve of twelve twenty-five-test native loopback fixture invocations, 26 local Claude SDK tests, six observer tests and final Ruff checks. Each reported bug has a retained failing-before-repair command and a passing counterpart. B2 metadata preflight and the earlier builder/coordinator live observations remain historical; no B3 live model task ran. Writing dispatch, live keyed-shell/search qualification and backend effort remain unobserved.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", "limitations": [ - "Authored loopback SSE fixtures, local Claude SDK tests and observer tests are integration/synthetic checks, not unchanged upstream suites or provider-model trials.", - "The pre-B2 builder live task returned the correct data while two native shell attempts failed in its enclosing Codex sandbox and a Context Mode call failed with Transport closed. A separate coordinator, outside a nested Codex sandbox, observed read-only shell success at that candidate. The repaired bytes have no new live-model run; error-free MCP transport and writing (workspace-write) dispatch remain unqualified at 0.160.0.", - "Plugin disabling is the selected native feature gate. Tests observe direct app-server PID termination and absence of clone directories; descendant cleanup and global non-loopback egress are not observed.", - "Metadata preflight submits no inference. No skill was installed in the new private home and no --require-skill was used; inherited/project catalog discovery does not qualify every skill or tool.", - "Requested model/Max effort and live catalog entry are observed; gateway-forwarded effort, backend model identity, complete provider usage, cost, remote cancellation and token savings remain unknown.", - "September 30 receipts and original observations remain historical. This refresh does not rerun the historical coding oracle, Claude callsite, Astra judge, Dagu graph or unchanged upstream SDK suite.", - "Exactly pinned private SDK preflight/PID attributes require review on every pin move. Stable Python SDK and experimental, unsupported-for-production app-server are separate support boundaries.", - "Expected ResourceWarning messages and argparse rejection output remain in private fixture logs. Long-lived SDK pools, alternative approval modes, alternate binary, credential-variable path, workspace-write live execution and scheduled Dagu acceptance remain unqualified.", - "Initial Ruff failure exits are retained from native task returns, but exact full output/timing was not saved. Repository validators prove declared consistency, not the truth of provider or historical claims.", - "Earlier checkout and alternate-index validation failures are retained as before-B2 attempts. The coordinator force-added the project skill to the real index; B2 acceptance uses that actual checkout index. Historical source archive acceptance does not replace current checkout acceptance.", - "If the cleanup bound expires during retained startup or close, cleanup_status is unresolved and the CLI exits nonzero. Continued deferred cleanup is observed only while the embedding event loop remains running; no post-bound standalone cleanup or remote termination guarantee is made.", - "B3 repairs have local regression/configuration acceptance only: no live model tasks, keyed gateway shell trial, standalone search endpoint trial or native Claude connect fault injection. The native SDK retains its own shielded cleanup/transport bounds; wrapper grace does not override them." + "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", + "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", + "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", + "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", + "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", + "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", + "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", + "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." ], - "path": "evidence/receipts/omniroute-sdk-worker-0160-20261003.json" + "path": "evidence/receipts/markitdown-018-qualification-20260925.json" }, { - "id": "openresearch-0215-qualification-20261003", + "id": "ai-memory-240-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "openresearch" + "ai-memory" ], - "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", "limitations": [ - "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", - "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", + "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", + "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", + "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", + "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", + "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", + "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." ], - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" }, { - "id": "otelcol-contrib-0162-qualification-20261003", + "id": "mcporter-0141-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "opentelemetry-collector-contrib" + "mcporter" ], - "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", "limitations": [ - "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", - "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", + "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", + "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", + "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", + "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", + "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." ], - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" }, { - "id": "playwright-cli-0122-qualification-20261003", + "id": "ai-memory-241-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "playwright-cli" + "ai-memory" ], - "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", "limitations": [ - "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", - "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", - "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", + "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", + "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", + "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", + "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", + "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", + "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." ], - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" }, { - "id": "portable-claude-native-qualification-20260921", + "id": "headroom-039-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "prometheus" + "headroom" ], - "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, headroom-ai 0.39.0 was qualified against the pinned 0.37.0 and not switched; production stays on 0.37.0. Tag v0.39.0 is 66f426171bab32692cf93d2b656a8e4be9004186 and contains d971f7c3 (#3748; compare behind_by 0). Its manylinux_2_28_x86_64 wheel (14,199,952 bytes, sha256 8c7594012ce0dcd28202af471fb1bd08c6f226c8e10fc6a682b3fb233e809a74) matched PyPI JSON, the PyPI simple API and the GitHub release asset, and was installed with uv into the new prefix tools/headroom-ai-0.39.0; 555 of 555 headroom/ RECORD digests match the verified wheel and `headroom --version` printed 'headroom, version 0.39.0'. The unchanged upstream test file tests/test_transforms/test_content_detector_timestamp_search.py (blob 23b66a27) passed 6 of 6 on 0.39.0 and 4 of 6 on 0.37.0. Through `headroom mcp serve --proxy-url http://127.0.0.1:1` over stdio, 0.39.0 listed headroom_compress, headroom_retrieve and headroom_stats; compressed the 600-line ISO-timestamped fixture A 16820 -> 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", "limitations": [ - "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", - "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", - "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", - "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", - "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." + "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", + "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", + "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", + "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", + "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", + "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", + "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", + "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." ], - "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" + "path": "evidence/receipts/headroom-039-qualification-20260925.json" }, { - "id": "portable-cli-artifacts", - "kind": "native_cli_e2e", + "id": "vllm-030-switch-laptop-20260926", + "kind": "native_model_e2e", "component_ids": [ - "shellcheck", - "difftastic", - "markitdown", - "ast-grep", - "toon", - "repomix" + "vllm", + "socraticode", + "ai-memory" ], - "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", + "claim": "vLLM 0.30.0 was qualified on this laptop (WSL2, RTX 5090 Laptop GPU 24GB) as a drop-in candidate for the production Nemotron-3-Embed-1B-BF16 embedder (vLLM 0.25.0), then switched into production by a systemd --user drop-in that changes only the ExecStart binary path and PATH. Of the six qualification gates: (a) gate-text cosine, (c) batch invariance and (e) ai-memory vector reconstruction passed their pass bars; (b) mini-corpus retrieval and (d) live-code-index retrieval met top-10 SET identity on every query and trial (b: 40/40, d: 20/20 query-trials) but failed their strict top-10 ORDER bar in 3 of 4 trials each; (f) latency is report-only, with no pass bar. A prod-vs-prod control run (candidate never started) shows the same order-swap behavior already exists in production alone: gate b had 6 of 50 mismatched query-trials for the candidate (including an earlier, superseded run) against 10 of 80 for production compared with itself; gate d had 3 of 20 against 4 of 40; production against itself even had a worse single trial (6 of 10 identical) than any candidate trial. Gate (c)'s batch-invariance minimum cosine (0.9999562552851937) was bit-for-bit identical between production alone and the candidate, on the same minimizing text. The production switch itself re-checked only 30 gate texts (cosine 0.9999999999999998 before vs after) and confirmed dependents (ai-memory's vector stream, SocratiCode search); it did not re-run a post-switch top-10 retrieval check.", "limitations": [ - "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", - "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." + "One host (laptop, RTX 5090 Laptop GPU 24GB, WSL2) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", + "Retrieval equality covers 30 gate texts (a), a 50-paragraph mini-corpus over 10 queries (b), and 5 live code-index queries (d), not an aggregate retrieval-quality benchmark. Gates b and d met top-10 content-SET identity on every query and trial (b: 40/40 query-trials across the 4 recorded trials, plus full set overlap on one earlier superseded run; d: 20/20 query-trials) but did not meet strict top-10 ORDER identity on every trial (that earlier superseded run's own order count was 9 of 10). Counting every recorded run: gate b had 6 of 50 candidate query-trials with an order mismatch against 10 of 80 for a prod-vs-prod control (candidate never started, run twice -- an earlier, superseded control and the current one -- both included since only the second run's own prod_score diagnostic sub-field needed a fix, not its order counts); gate d had 3 of 20 against 4 of 40. Production compared with itself had a worse single trial (6 of 10 identical, i.e. 4 mismatched) than any candidate trial (worst: 7 of 10 identical, 3 mismatched), so this order-swap behavior is pre-existing production batching noise, not attributable to the 0.30.0 upgrade. The swap-gap range is 3.5e-05 to 8.2e-04 across all 23 recorded swaps (candidate run and both control runs combined), far smaller than the ~0.02-0.05 gaps between other adjacent ranks in the same rankings.", + "The reference receipt's own qualification-time number for this style of check (mini_corpus_top10_overlap, '10/10 on each of 10 queries') is a content-SET overlap claim, not a strict-order claim; it does not report whether its own order matched on every query, so gate (b)'s order tracking here is additional detail, not a comparison against a reported order result. The reference receipt's one reported ORDER number (production_switch.code_queries_identical_top10_order, '5/5') comes from its own post-switch production check with 5 live code queries, a different procedure from this run's own gate (d) qualification check (5 queries against the live SocratiCode index, run before any switch); the two are not directly comparable, and this run made no post-switch top-10 check of its own (see production_switch below: only 30 gate texts and a cosine value were re-checked after the switch) -- unlike the reference, which also re-checked 5 code queries' top-10 order after its own switch (that same code_queries_identical_top10_order, '5/5').", + "0.30.0 relies on its pinned-memory fallback for WSL (vllm-project/vllm PR #56908, the same warning the reference receipt's owned instance logged); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", + "The 0.25.0 unit is kept for rollback; only a drop-in override (nemotron-embed-agent-lab.service.d, ExecStart and PATH only) points production at 0.30.0.", + "A diagnostic-only bug in this run's own gate (b) script (prod_scores_by_idx had score and index reversed) made the order_diff_detail[].prod_score sub-field in every candidate-vs-prod gate (b) file (gate_b_result.json and gate_b_trial{1,2,3}.json) and in the first, superseded prod-vs-prod control unreliable; it did not affect any cosine value, top-10 set, or pass/fail boolean -- only that one diagnostic sub-field -- and was fixed before the second, current prod-vs-prod control run. See raw/ERRATUM-gate_b-order_diff_detail-prod_score-bug.txt.", + "results.json's own generated prose has two internal inconsistencies against its own structured fields, corrected in this receipt from the underlying per-trial gate files (raw/gate_b_result.json, gate_b_trial{1,2,3}.json, gate_d_result.json, gate_d_trial{1,2,3}.json): its gate (b) finding text lists strict-order counts as '9, 7, 9 and 10' where the adjacent structured array and the per-file queries_with_identical_order fields agree on '10, 9, 7 and 9' (same four numbers, wrong order in the prose only); its gate (d) finding text says strict order held on '3, 5, 4 and 4' of 5 queries where the adjacent structured array and the per-file queries_identical_count fields agree on '4, 5, 4 and 4'.", + "The laptop's vllm-0.30.0 prefix pre-existed this run (never pip-installed into by this task, per its own instructions), so no direct_url.json or install log exists on this host to independently re-hash its wheel; the pin identity below is the value the workstation's own switch receipt recorded for the same pinned release, reused for cross-host comparison, not independently re-verified here. What IS independently verified on this host: both production (0.25.0) and the candidate (0.30.0) point at the identical, single model directory (same absolute path in both /v1/models responses), and this host's own sha256 of that directory's model.safetensors is recorded below.", + "independent_review: an independent reviewer subagent checked this receipt against the retained raw files (recomputed the reported counts, re-hashed the model file, compared production's before/after flags) and re-ran no gate; that review produced every correction listed above." ], - "path": "evidence/receipts/portable-cli-artifacts.json" + "path": "evidence/receipts/vllm-030-switch-laptop-20260926.json" }, { - "path": "adoption/receipt.json", - "id": "portable-sdk-adoption-20260919", + "id": "codex-01571-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "duckdb" + "codex" ], - "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", "limitations": [ - "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", - "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", - "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", - "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", - "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", - "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", - "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." - ] + "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", + "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", + "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", + "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", + "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", + "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", + "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", + "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", + "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", + "Linux x86_64 only, one host; nothing here is macOS evidence." + ], + "path": "evidence/receipts/codex-01571-qualification-20260926.json" }, { - "id": "portable-userspace-install-20260921", + "id": "mcp-inspector-280-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon", - "codex", - "claude-code" + "mcp-inspector" ], - "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", "limitations": [ - "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", - "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", - "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", - "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", - "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", - "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", - "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", - "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", - "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." + "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", + "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", + "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", + "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", + "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." ], - "path": "evidence/receipts/portable-userspace-install-20260921.json" + "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" }, { "id": "prometheus-3150-qualification-20260926", @@ -3453,174 +3297,127 @@ "path": "evidence/receipts/prometheus-3150-qualification-20260926.json" }, { - "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", - "id": "qdrant-native-state-recovery-20260919", + "id": "tavily-research-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "qdrant", - "restic" + "tavily-cli" ], - "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", "limitations": [ - "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", - "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", - "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", - "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", - "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." - ] - }, - { - "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", - "id": "qmd-bm25-retrieval-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "qmd" + "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", + "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", + "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", + "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", + "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", + "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", + "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", + "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." ], - "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", - "limitations": [ - "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", - "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", - "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", - "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", - "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", - "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", - "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", - "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", - "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", - "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", - "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." - ] + "path": "evidence/receipts/tavily-research-qualification-20260926.json" }, { - "id": "restic-local-public-reference-20260919", - "kind": "native_cli_e2e", + "id": "local-inference-c2-serving-switch-20260926", + "kind": "native_model_e2e", "component_ids": [ - "restic" + "llama-cpp" ], - "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", "limitations": [ - "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", - "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", - "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", - "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", - "Credential loss recovery requires separately approved secure key escrow." + "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", + "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", + "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", + "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", + "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", + "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", + "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." ], - "path": "blueprints/us-equities/hosting/backup/receipt.json" + "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" }, { - "id": "rtk-050-qualification-20260925", - "kind": "native_cli_e2e", + "id": "claude-advisor-usage-scan-20260928", + "kind": "artifact_measurement", "component_ids": [ - "rtk" + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", + "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", "limitations": [ - "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", - "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", - "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", - "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", - "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", - "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", - "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", + "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", + "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", + "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", + "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", + "Whether ccusage or ecosystem-token-report count these entries was not checked." ], - "path": "evidence/receipts/rtk-050-qualification-20260925.json" + "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" }, { - "id": "rtk-051-qualification-20261004", + "id": "claude-host-practice-readback-20260928", "kind": "native_cli_e2e", "component_ids": [ - "rtk" - ], - "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed rtk 0.51.0 from the checksummed Linux release archive and returned rtk 0.51.0 with exit 0. rtk verify returned 151/151 inline self-tests with exit 0; 24 hook payloads matched 0.50.0 output and exits (16 rewritten, 0 differing), and 26 permission-deny hook decisions matched with no auto-allows. Direct git/proxy calls succeeded and the existing tracking database was read and later updated. This receipt republishes bounded sanitized facts from the historical host records; it is not a new host or model run.", - "limitations": [ - "No macOS execution; the Darwin archive is artifact-checked only. No upstream cargo test suite was run in these records; rtk verify is the native inline self-test, and the 115-test parser run (14 skipped) is local integration.", - "rtk gain, session and cc-economics are tool self-reports, not provider counts, invoice data or causal savings. Cumulative snapshots are not added together.", - "No fresh live-client acceptance or rtk init re-run was recorded. The --shell compatibility review is source-based; the host hook comparison covered only its 24 payloads and 26 deny entries. Existing exact-output exceptions and dated replay gates remain scoped to their original evidence.", - "gh attestation verification returned HTTP 404 (exit 1); no signature verification or source rebuild was recorded. Later upstream fixes and issue #4404 are follow-ups, not included in this stable pin.", - "NativeStack runs AgentsView 0.44.0 ahead of the repository pin. The 2026-09-27 qualification hold stands: synthetic_ccusage_parity failed, fresh_four_native_lanes is blocked, and the v0.44.0 MCP reported zero Codex counters. The recorded recipe rewire and qualification must pass in a separate follow-up before a repository pin move.", - "RTK replay is unavailable at 0.51.0: vendored child-usage.mjs and the test_token_measurement.py/test_skill_usage.py replay gates require exactly rtk 0.50.0. Skipped replay tests are not coverage; the kernel and gates remain unchanged.", - "The repair-round placeholder guard probes allowed the --shell form rtk test --shell sh 'cat ~/.ssh/config' (exit 0), while rtk proxy cat ~/.ssh/config was blocked (exit 2). These strings were guard input only; no credential reader was executed. This finding belongs to PR #685; the guard is unchanged in this pin move.", - "2026-10-04 control correction after PR #693 CI run 37226622626: v0.51.0 intentionally folds grep file lists (feac25d), so the former byte-unchanged grep control is superseded by counted prefix-plus-tail reconstruction of the exact native path set, byte-identical proxy recovery and a CR-filename verbatim guard fixture (3223a80). The diff half is unchanged. The repaired native fixture passes nine checks over 11 cases / 33 arms; this is local integration of the installed Linux CLI, not new host or upstream Cargo-suite acceptance. Agent-facing expansion of folded paths is unmeasured; an E2E observation of a wrong expanded path leads to adding grep -l/-rl to hook exclusions. Sources and retained red-then-green observations: docs/decisions/2026-10-04-rtk-file-list-control.md.", - "2026-10-04 PR #698 follow-up from the pre-rebase review head 45a7218c0 (rebased onto 38ac9aca1; no branch keeps it): the grep inverse now preserves native engine order, and a CR-free explicit-operand t6c sibling proves that the same grep -l shape folds without the 3223a80 guard signal. Native distinctness and the CR-case LF record count have isolating rejection controls with separate predicate-deletion red runs and restored green runs. The installed Linux CLI passes ten checks across 12 cases / 36 arms / 76 fixture commands plus one version command. Historical shell_sites line 1477 is retained; a dated appended entry corrects the direct-argv locator. Minimal sanitized original red/green outputs from job 035 and new job 042 outputs are retained under evidence/artifacts/rtk-051-file-list-control-20261004/ (README.md and native-controls.json), with the dated decision at docs/decisions/2026-10-04-rtk-file-list-control.md. This is local integration, not a WSL rerun, upstream Cargo-suite, new-host or native-model acceptance; model interpretation remains unmeasured." - ], - "path": "evidence/receipts/rtk-051-qualification-20261004.json" - }, - { - "id": "runtime-sdk-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "codex" + "claude-code", + "claude-hud", + "headroom", + "mcporter", + "jcodemunch-mcp", + "agent-browser", + "qmd" ], - "claim": "Retained coordinator results for the same-host Codex SDK/CLI 0.160.0 pair report strict-hash installation, matching bundled/npm-platform binaries and completed native-account SDK, gateway SDK and gateway CLI marker canaries. Sanitized outputs, native CLI usage, scripts, hashes, mtimes and discriminating replay controls are now retained; missing original SDK invocation/source and process start/end evidence limit this to a compatibility attempt. The separate A4 record adds fail-closed Linux package-resolution/executable-tree repairs, offline integration controls and a fresh isolated bootstrap of the shipped Codex pin; it does not upgrade the SDK/gateway canary evidence class.", + "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", "limitations": [ - "Existing-host compatibility observations and completed marker canaries only; incomplete original command/timing provenance prevents native_cli_e2e acceptance. Not new-host or model-quality acceptance.", - "Gateway backend model and effort were not read from the call log; configured/requested routes and efforts do not prove backend selection.", - "The shared host launcher, daemon and production prefix still run 0.159.3 until a separate coordinated switch.", - "The 0.159.3 queue, Hindsight and October 1 SDK receipts retain their original scope; they do not qualify 0.160.0.", - "Sanitized native canary stdout/stderr, CLI events/last message and their hashes are retained. SDK caller exit codes 0 are coordinator-verified, not fields in the supplied facts. Gateway backend billed usage and monetary cost remain unrecorded.", - "Original process start/end times and SDK outer executable/cwd are unrecorded. Source mtimes are filesystem observations only. The native heredoc is reconstructed from facts and the retained gateway example, not attested as the original source.", - "SDK last and total usage snapshots match for each canary and must be counted once; cached input and reasoning output are subsets, not additional tokens.", - "No unchanged upstream test suite, shared daemon restart, whole-system cleanup/recovery acceptance, package signature or provenance attestation verification is recorded here. The separate A4 bootstrap record retains local migration/publication fault injection and an isolated native installation.", - "The move is inside the seven-day cooldown recorded in docs/decisions/2026-09-25-workstation-sota-refresh.md, as the prior 0.159.2 and 0.159.3 moves were (docs/decisions/2026-09-27-model-currency.md).", - "This repository change records existing coordinator qualification; it performs no new model run or shared-host switch.", - "The CLI script prints the inner Codex exit but does not propagate it as its own final shell exit; the recorded inner exit 0 is supported by the coordinator facts and completed native events." - ], - "path": "evidence/receipts/runtime-sdk-20261003.json" - }, - { - "id": "runtime-tools", - "path": "evidence/receipts/runtime-tools.json", - "kind": "native_cli_e2e", - "component_ids": [ - "gitleaks", - "sandbox-runtime" + "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", + "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", + "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", + "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", + "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", + "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", + "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." ], - "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", - "limitations": [ - "No claim of full security certification.", - "Sandbox network denial configured but not separately exercised." - ] + "path": "evidence/receipts/claude-host-practice-readback-20260928.json" }, { - "id": "sec-catalyst-dataset-native-20260920", + "id": "socraticode-1150-qualification-20260927", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "socraticode" ], - "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", "limitations": [ - "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", - "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", - "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", - "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", - "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", - "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", - "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", - "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", - "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." + "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", + "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", + "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", + "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", + "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", + "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", + "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", + "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", + "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", + "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", + "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." ], - "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" + "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" }, { - "id": "sec-financial-data-20260919", - "kind": "compatibility_attempt", + "id": "ccusage-20026-qualification-20260927", + "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "ccusage" ], - "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", "limitations": [ - "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", - "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", - "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", - "Current API snapshots do not reconstruct historical point-in-time knowledge.", - "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", - "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." + "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", + "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", + "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", + "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", + "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", + "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", + "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", + "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", + "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", + "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", + "New hosts receive this pin only after the next release tag." ], - "path": "blueprints/us-equities/financial-data/receipt.json" + "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" }, { "id": "skills-listing-restore-20260928", @@ -3666,27 +3463,104 @@ "path": "evidence/receipts/skills-m4-host-removal-20260928.json" }, { - "id": "socraticode-1150-qualification-20260927", + "id": "claude-model-effort-probes-20260929", "kind": "native_cli_e2e", "component_ids": [ - "socraticode" + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", + "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", "limitations": [ - "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", - "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", - "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", - "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", - "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", - "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", - "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", - "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", - "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", - "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", - "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", + "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", + "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", + "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", + "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." ], - "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" + "path": "evidence/receipts/claude-model-effort-probes-20260929.json" + }, + { + "id": "claude-max-default-effort-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", + "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", + "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", + "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", + "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", + "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", + "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", + "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." + ], + "path": "evidence/receipts/claude-max-default-effort-20260929.json" + }, + { + "id": "claude-project-effort-flag-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", + "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", + "The Ultracode reminder is an indicator, not proof of workflow orchestration.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." + ], + "path": "evidence/receipts/claude-project-effort-flag-20260929.json" + }, + { + "id": "claude-spend-attribution-20260929", + "kind": "artifact_measurement", + "component_ids": [ + "claude-code", + "ccusage" + ], + "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", + "limitations": [ + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", + "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", + "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", + "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", + "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", + "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", + "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", + "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", + "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", + "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." + ], + "path": "evidence/receipts/claude-spend-attribution-20260929.json" + }, + { + "id": "wsl-terminal-defaults-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code", + "codex" + ], + "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, and 2.1.283 in a second distro; Codex 0.157.1; bash 5.2.21; Windows Terminal 1.24.11911.0) the repository now carries the terminal defaults that had been set by hand on the host. Merging the linux-wsl2 Claude Code overlay into the live settings with the repository's merge tool changed nothing (the merge equalled the live file), exactly one Notification group holds the bell command, and its matcher equals the overlay's (the acceptance script checks the matcher because the merge alone cannot see it). The rendered Codex template loads under `codex --strict-config` (the run stops at authentication, never at configuration); a wrong type for `[tui] notifications` and an unknown top-level key are refused, and an unknown key inside `[tui]` is not. The static `adoption_status.py --login-shell` model agreed with the real bash login search in all 512 combinations of three startup files over eight states, a FIFO made bash block (the model calls it unusable and unread), and a control that takes an empty file as absent disagreed in 26. In the second distro, the two per-project Claude profiles of the Windows Terminal settings dropped `suppressApplicationTitle` and gained the quiet bell, the audible-and-taskbar bell style and `COLORTERM` through the profile environment key, with every other profile and setting unchanged; the overlay merged into that distro's Claude settings changed only `$schema`, `hooks` and `preferredNotifChannel`, and its installed hook command printed exactly one BEL. The host practice repository's terminal-profile check now scans the live settings file and passed with 0 findings (the pre-change settings file fails it with 8 findings on the two per-project profiles), and its 22 single-defect controls each failed for exactly their rule.", + "limitations": [ + "One workstation and one Ubuntu 24.04 distro plus one second distro (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own evidence, and none of the new files is in the pinned release: a new host gets them only after a release carries them and the manifest is re-pinned.", + "No Windows Terminal tab was opened or measured after the second distro's profile change, and no session of that distro was started or observed after its overlay. Claude Code applies edits to `hooks` to a running session without a restart (settings reference, \"When edits take effect\"), so open sessions there should pick the overlay up; that was not observed, and an audible or taskbar bell for the alert path was not observed by the user in this work.", + "The profile example was checked as JSON against the policy. It declares no `guid`, so Windows Terminal derives a stable one from the folder and profile names (read in its source at the installed tag); it was not loaded into Windows Terminal or installed on any host. The host's deployed fragment is the practice repository's own file.", + "The `--login-shell` check reads file metadata only and models bash's login search from the source of bash 5.3 (shell.c execute_profile_file, builtins/evalfile.c) and the installed 5.2.21 on Linux; it does not run a login shell, read a startup file (so a non-empty file's hand-off is unknown, reported as null), or cover /etc/profile, ~/.bashrc, another shell, --noprofile, POSIX mode, an sh-mode login or macOS's bash 3.2. A special file is reported unusable: bash reads a device as empty and blocks on a FIFO, and both end the search; an unusable ~/.profile is reached but not read, so profile_read is false; HOME is the environment's, else the passwd entry's, else \"/\", the way bash falls back.", + "The Codex acceptance is a configuration load: no Codex notification was produced in this work, `async-question` does not exist at the macOS pin's tag (inert there) and Codex 0.155.1 was not run. Codex does not validate keys inside `[tui]`, so the repository's test pins that table's setting names. A `request_user_input` question notifies as `plan-mode-prompt` at both tags (tool_requests.rs L449-458), so `async-question` adds only the asynchronous questions 0.155.1 lacks.", + "The second distro's `tui` is `fullscreen` by its own setting; `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` was not set, as the upstream documentation makes it a reactive fix and no stale rendering was observed or measured.", + "The host practice repository has no remote (commits fcd291f, 396d1c1, 9500656, c14e8c3, 9f615ad and d0c7d9c); its check and controls are recorded here as results only. The Windows Terminal settings patch and the second distro's merge were host operations on private files, recorded as values.", + "The second distro's Claude Code is 2.1.283, one release before this host's. A scan of the installed binaries (this host's 2.1.282, 2.1.283 and 2.1.284, and that distro's 2.1.283) found the `notifications_disabled` and `terminalSequence` literals and `worker_permission_prompt` emitted from the same two team-inbox call sites in each (the second distro's binary is byte-identical to this host's 2.1.283 by SHA-256 prefix, and its occurrence counts by `grep -a -o` equal this host's scan), so the whole matcher is live there. The changelog dates `terminalSequence` to 2.1.141 and has no entry for `notifications_disabled`, which the settings reference documents. The hook was run in that distro.", + "The merge de-duplicates hooks by command anywhere in the event, so it never changes the matcher of a Notification hook that already runs the bell command: after a later matcher change the old group must be edited or removed first. The acceptance script checks the group count and the matcher for that reason, and a unit test proves it refuses a catch-all group and an older matcher.", + "The Codex `[tui] notifications` list is in the template that a macOS host also renders. Codex keeps its own per-terminal channel there, so needed kinds still notify natively and the turn-complete one stops; at the macOS pin `async-question` does not exist and is inert. This was decided and documented, and not observed on a Mac.", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): codex_tui_strict_check.py counts a run as loaded only with Codex's session banner and exits 1 unless the template loaded and both configuration controls were refused; overlay_noop_check.py also requires disableAllHooks not to be true and labels its verdict as a check of the user settings file only; login_shell_bash_truth.py and the 512-combination test now also compare first_read; the platform page's advice about profiles.defaults was corrected (Windows Terminal ranks a profile's own value, then profiles.defaults, then a fragment's profile). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + ], + "path": "evidence/receipts/wsl-terminal-defaults-20260929.json" }, { "id": "socraticode-1160-qualification-20260929", @@ -3710,152 +3584,112 @@ "path": "evidence/receipts/socraticode-1160-qualification-20260929.json" }, { - "id": "sota-convergence-20260922", - "kind": "historical_inventory", + "id": "omniroute-3851-npm-qualification-20260930", + "kind": "compatibility_attempt", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "apple-container", - "ast-grep", - "beads", - "ccusage", - "claude-code", - "claude-hud", - "codebase-memory-mcp", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "fastapi", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "llama-cpp", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nextjs", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "playwright-cli", - "playwright-test", - "poppler", - "postgresql", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "react", - "repomix", - "restic", - "rtk", - "sandbox-runtime", - "serena", - "shanraisshan/claude-code-best-practice", - "shellcheck", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "omniroute" ], - "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", "limitations": [ - "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", - "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", - "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", - "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." + "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", + "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", + "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", + "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", + "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", + "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", + "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", + "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", + "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." ], - "path": "evidence/receipts/sota-convergence-20260922.json" + "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" }, { - "id": "syft-1540-qualification-20261003", + "id": "codex-01592-qualification-20260930", "kind": "native_cli_e2e", "component_ids": [ - "syft" + "codex" ], - "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", "limitations": [ - "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", - "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", - "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", + "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", + "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", + "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", + "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", + "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", + "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", + "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", + "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", + "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", + "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", + "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", + "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", + "Linux x86_64 only, one host; nothing here is macOS evidence." ], - "path": "evidence/receipts/syft-1540-qualification-20261003.json" + "path": "evidence/receipts/codex-01592-qualification-20260930.json" }, { - "path": "blueprints/us-equities/supply-chain/receipt.json", - "id": "syft-sdk-inventory-20260919", + "id": "notification-types-20260929", "kind": "native_cli_e2e", "component_ids": [ - "syft" + "claude-code" ], - "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", "limitations": [ - "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", - "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", - "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", - "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", - "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", - "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", - "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", - "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", - "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", - "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." - ] + "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", + "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", + "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", + "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", + "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", + "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", + "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", + "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", + "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + ], + "path": "evidence/receipts/notification-types-20260929.json" }, { - "id": "synthetic-catalyst-contract-20260920", + "id": "login-shell-contract-20260929", "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "claude-code", + "codex" ], - "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", "limitations": [ - "Protocol thresholds are exploratory choices, not fitted or proven optimal.", - "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", - "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", - "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", - "No provider calls, broker orders, new model turn or net token-savings measurement." + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", + "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", + "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", + "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", + "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", + "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", + "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", + "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", + "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." ], - "path": "blueprints/us-equities/catalyst-experiment/receipt.json" + "path": "evidence/receipts/login-shell-contract-20260929.json" }, { - "id": "tavily-research-qualification-20260926", - "kind": "native_cli_e2e", + "id": "cross-family-review-terminal-lane-20260930", + "kind": "native_model_e2e", "component_ids": [ - "tavily-cli" + "codex", + "omniroute", + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", + "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", "limitations": [ - "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", - "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", - "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", - "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", - "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", - "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", - "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", - "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", + "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", + "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", + "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", + "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", + "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", + "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." ], - "path": "evidence/receipts/tavily-research-qualification-20260926.json" + "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" }, { "id": "terminal-experience-20260928", @@ -3882,480 +3716,497 @@ "path": "evidence/receipts/terminal-experience-20260928.json" }, { - "id": "token-native-retained-functional-20260920", - "path": "evidence/receipts/token-native-retained-functional-20260920.json", - "kind": "native_cli_e2e", + "id": "codex-shell-snapshot-cleanup-20260930", + "kind": "artifact_measurement", "component_ids": [ - "context-hub", - "headroom", - "mcp-inspector", - "promptfoo", - "worktrunk" + "codex" ], - "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", + "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", "limitations": [ - "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", - "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", - "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", - "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", - "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", - "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." - ] + "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", + "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", + "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", + "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." + ], + "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" }, { - "id": "token-practice-artifacts-20260920", + "id": "agent-browser-lna-20260930", "kind": "artifact_measurement", "component_ids": [ "agent-browser", - "ast-grep", - "edgartools", - "markitdown", - "qmd", - "repomix", - "rtk", - "socraticode", - "syft", - "toon" + "playwright-test" ], - "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", + "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", "limitations": [ - "Counts describe retained original host artifacts. This public aggregate omits the private originals; CI validates aggregate integrity, not an independent recount of those private bytes.", - "Most pairs select or transform information lossily. Shorter output does not establish equivalent answer quality or lower complete task usage.", - "Pairs overlap, including shared HTML sources and retrieval services. Do not sum them or attribute the same difference independently to dependencies.", - "Exact provider savings remain null. Tokenizer counts are not provider billing, subscription savings or causal per-repository effects.", - "The Syft table preserves checked package name/version/type columns while omitting other SBOM metadata; this is a view selection, not equivalent full SBOM content." + "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", + "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", + "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", + "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." ], - "path": "evidence/receipts/token-practice-artifacts-20260920.json" + "path": "evidence/receipts/agent-browser-lna-20260930.json" }, { - "id": "token-practice-catalog-toon-20260920", + "id": "guard-k3-verification-20260930", "kind": "artifact_measurement", "component_ids": [ - "toon" + "claude-code" ], - "claim": "A reversible full-catalog TOON conversion had a smaller native heuristic estimate but a larger exact token count than compact JSON; the guard retained compact JSON.", + "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", "limitations": [ - "This is one later artifact comparison, separate from the ten original token-practice pairs. Do not sum it with cumulative native counters or provider usage.", - "Native tokenx estimates and exact o200k_base counts use different estimators and JSON representations; they are not interchangeable savings metrics.", - "The public aggregate omits the private captured output files. Published hashes establish identity, not independent CI recount of the private bytes.", - "Exact provider savings remain unknown. The successful strict round trip establishes data equivalence for this conversion only.", - "Command templates replace host-specific source and output locations with portable placeholders." + "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", + "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", + "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", + "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", + "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1068,7 +1064,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.80.0", + "version": "0.79.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1083,21 +1079,20 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "worktrunk-0800-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" ], - "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", + "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.162.0", + "version": "0.161.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1117,15 +1112,13 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "otelcol-contrib-0162-qualification-20261003" + "claude-repository-evidence-20260921" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" + "https://github.com/open-telemetry/opentelemetry-collector-contrib" ], - "freshness": "Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The recorded scratch version and validate commands exited 0; no host service was switched. Prior 0.161.0 receipts retain their original scope. The dated upstream metadata is in catalogs/landscape/upstream-snapshot.json." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "prometheus", @@ -1233,7 +1226,7 @@ "upstream_sources": [ "https://github.com/grafana/grafana" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "alertmanager", @@ -1408,10 +1401,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.54.0", + "version": "1.52.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", + "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1420,14 +1413,13 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921", - "syft-1540-qualification-20261003" + "claude-repository-evidence-20260921" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.54.0" + "https://github.com/anchore/syft/releases/tag/v1.52.0" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." + "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." }, { "id": "alpaca-py", @@ -1690,7 +1682,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.327", + "version": "1.108.319", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1703,7 +1695,7 @@ } } ], - "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1716,14 +1708,13 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "jcodemunch-1108327-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", - "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", + "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", + "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From d1d5aee31f8c2f125da8c21abadebbd6c757a2ad Mon Sep 17 00:00:00 2001 From: Scout Date: Mon, 5 Oct 2026 02:05:56 -0400 Subject: [PATCH 31/50] Reapply this branch's manifests/evidence.json manifests/stack.json edits on the merge base (hot-file protocol: every hot-file edit in the last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 5906 ++++++++++++++++++++------------------- manifests/stack.json | 81 +- 2 files changed, 3120 insertions(+), 2867 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 3952640a2..818ed2531 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -2,518 +2,791 @@ "schema_version": 1, "receipts": [ { - "id": "memory-lifecycle-probe-20260921", + "id": "adaptive-paper-practice-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "nautilus-trader", + "alpaca-py", + "claude-code", + "codex" ], - "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", + "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", "limitations": [ - "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", - "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", - "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", - "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", - "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", - "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." + "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", + "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", + "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", + "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." ], - "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" + "path": "evidence/receipts/adaptive-paper-practice-20260921.json" }, { - "id": "catalog-runtime-review-20260921", - "kind": "native_model_e2e", + "id": "adoption-macos-hosted-smoke-20260922", + "kind": "native_cli_e2e", "component_ids": [ "codex", "claude-code", - "dagu" + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" ], - "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", + "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", "limitations": [ - "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", - "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", - "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." + "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", + "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", + "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", + "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", + "socraticode is the profile's documented unpinned skip and was not installed." ], - "path": "evidence/receipts/catalog-runtime-review-20260921.json" + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" }, { - "id": "catalog-clean-install-20260921", + "id": "adoption-macos-hosted-smoke-20260923", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "codex", + "claude-code", + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" ], - "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", + "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", "limitations": [ - "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", - "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", - "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." + "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", + "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", + "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", + "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." ], - "path": "evidence/receipts/catalog-clean-install-20260921.json" + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" }, { - "id": "dashboard-gap-resolution-20260921", - "kind": "native_cli_e2e", + "id": "agent-browser-lna-20260930", + "kind": "artifact_measurement", "component_ids": [ - "ai-memory", - "codex", - "claude-code", - "agentsview", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo", - "vllm" + "agent-browser", + "playwright-test" ], - "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", + "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", "limitations": [ - "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", - "Fresh PreCompact event and active Desktop session end remain unforced.", - "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", - "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", - "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", - "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." + "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", + "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", + "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", + "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." ], - "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" + "path": "evidence/receipts/agent-browser-lna-20260930.json" }, { - "id": "dashboard-render-e2e-20260921", + "id": "ai-memory-240-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qdrant", - "socraticode", - "serena", - "agentsview", - "dagu", - "omniroute", - "agent-browser", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo" + "ai-memory" ], - "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", "limitations": [ - "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", - "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", - "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", - "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", - "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", - "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", - "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", + "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", + "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", + "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", + "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", + "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", + "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." ], - "path": "evidence/receipts/dashboard-render-e2e-20260921.json" + "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" }, { - "id": "hf-memory-models-20260921", + "id": "ai-memory-241-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "vllm", - "grafana" + "ai-memory" ], - "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", + "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", "limitations": [ - "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", - "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", - "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", - "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", - "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", - "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", + "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", + "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", + "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", + "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", + "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", + "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." ], - "path": "evidence/receipts/hf-memory-models-20260921.json" + "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" }, { - "id": "native-memory-rag-alignment-20260921", + "path": "blueprints/us-equities/state-recovery/memory/receipt.json", + "id": "ai-memory-native-state-recovery-20260919", "kind": "native_cli_e2e", "component_ids": [ "ai-memory", - "socraticode", - "qdrant", - "qmd", - "vllm", - "grafana", - "loki" + "restic" ], - "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", + "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", "limitations": [ - "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", - "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", - "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", - "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", - "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", - "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", - "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." - ], - "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" + "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", + "38 pages table rows include historical versions, not 38 current pages.", + "Native backup excludes raw/, model caches, logs and external native session transcripts.", + "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", + "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", + "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." + ] }, { - "id": "native-returned-results-20260921", + "path": "blueprints/us-equities/order-contract/receipt.json", + "id": "alpaca-offline-order-contract-20260919", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "rtk", - "context-mode", - "qmd", - "serena", - "ai-memory", - "socraticode", - "qdrant", - "agentsview", - "grafana", - "loki", - "prometheus", - "dagu", - "ntfy", - "omniroute", - "agent-browser", - "promptfoo", - "headroom", - "jcodemunch-mcp" + "alpaca-py" ], - "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", + "claim": "Installed alpaca-py request models silently dropped synthetic advanced fields; this explicit broker-disconnected basic-intent boundary rejected those inputs and eight additional negative cases while preserving canonical decimal strings.", "limitations": [ - "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", - "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", - "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", - "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", - "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", - "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", - "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", - "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", - "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." - ], - "path": "evidence/receipts/native-returned-results-20260921.json" + "Local contract is not wired into unrelated SDK calls or existing workers; explicit future adapter adoption is required.", + "No broker account, key, asset lookup, risk approval, live/paper order or provider wire behavior was exercised.", + "Whole-share basic create-intent subset only; advanced, replacement, cancellation, retries, order journals and reconciliation remain gated.", + "Input representation cap and symbol/client-ID syntax are local conservative policies, not provider or risk authorization.", + "Python SDK float conversion is observed; the canonical exact decimal envelope is deliberately not serialized through those float fields.", + "JavaScript advanced support is pinned-source evidence only; no alternative SDK was installed or executed.", + "Python audit events and the Linux namespace substantiate this scoped probe, not a universal sandbox or macOS acceptance.", + "Canonical content hashes do not establish client-ID uniqueness, deduplication or safe retry semantics.", + "No token-saving claim or model inference belongs to this deterministic task." + ] }, { - "id": "native-workflow-writing-comparison-20260921", + "id": "alpaca-paper-e2e-20260921", "kind": "native_cli_e2e", "component_ids": [ + "alpaca-py", "claude-code" ], - "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", + "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", "limitations": [ - "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", - "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", - "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." + "One operational smoke trial, not profitable strategy or continuous trading acceptance.", + "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", + "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." ], - "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" + "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" }, { - "id": "native-workflow-graceful-recovery-20260921", - "kind": "native_cli_e2e", + "id": "artifact-reductions", + "path": "evidence/receipts/artifact-reductions.json", + "kind": "artifact_measurement", "component_ids": [ - "claude-code" + "rtk", + "socraticode", + "openresearch", + "context-mode" ], - "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", + "claim": "Recorded exact selected-text reductions, distinct from model usage.", "limitations": [ - "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", - "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", - "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", - "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." - ], - "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" + "Lossy selections compare retained text to full-file/paper counterfactuals.", + "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." + ] }, { - "id": "portable-userspace-install-20260921", + "id": "broad-universe-research-20260921", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon", - "codex", - "claude-code" + "alpaca-py", + "duckdb", + "claude-code", + "codex" ], - "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", + "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", "limitations": [ - "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", - "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", - "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", - "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", - "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", - "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", - "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", - "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", - "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." + "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", + "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", + "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", + "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", + "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." ], - "path": "evidence/receipts/portable-userspace-install-20260921.json" + "path": "evidence/receipts/broad-universe-research-20260921.json" }, { - "id": "claude-selective-context-pilot-20260921", - "kind": "native_model_e2e", + "id": "canary-proof-verification-20261001", + "kind": "artifact_measurement", "component_ids": [ "claude-code", - "context-mode" + "codex", + "systemd" ], - "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", + "claim": "The canary proof tool (tools/credentials/canary_proof.py, 1,834 lines, with the contained scan worker tools/credentials/canary_scan_worker.py, 2,114 lines) passed its synthetic acceptance on the workstation on 2026-10-01 on main with the K4 guard: its unit suite ran 143 tests, OK, with none skipped (including 12 cases that start transient systemd user scopes); its mutation runner killed 138 of 138 mutants by failures of their named permanent tests after 90 passing unmutated runs; and the credential, guard, Codex worker-lane and pre-commit suites ran 531 tests with one failure by design (the installed host copy of the guard). The tool plants a unique synthetic canary, lets named consumers use it through the key runner, and searches the named sinks with ripgrep in a worker that runs in a finite systemd user scope; its classifier refuses unless every required check has a fresh, complete result bound to the run. Reviews: a read-only GPT-6 verification found seven paths to a false clean verdict and four high findings, and an Opus build review found one blocking gap in the contract's acceptance cases; one repair round by a GPT-6 runtime worker fixed them, each with a permanent test and a mutant; an Opus re-check confirmed 37 of 42 dispositions and found one more false-clean path (a Git object store with no HEAD, refs or .git name, reached directly) and a record-validation defect, which one bounded fix round closed with tests and mutants. No end-to-end proof has run: it is the new distribution's acceptance after its guard install.", "limitations": [ - "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", - "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", - "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", - "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", - "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", - "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", - "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", - "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." + "Synthetic acceptance only: every sink, canary, Git store, SQLite database and journal in these runs is a fixture the tests build under a temporary directory; no real consumer, transcript, log, journal or credential was used, and no proof claim is made before the end-to-end run.", + "Containment evidence is workstation scope enforcement: the real-scope classes start transient systemd user scopes on this host (12 cases, all passing); hosted CI runners skip them where no user scope exists.", + "Scanner: ripgrep 14.1.0 is the executed version; the runtime also accepts 15.2.0 on a source-reviewed output grammar that no run has executed.", + "Size: the implementation (3,948 coordinator and worker lines) and the permanent test file (3,632 lines) exceed the contract's ceilings (1,800 and 2,800); the coordinator accepted the deviation for the required coverage and containment logic, and the reviews' dead-code findings were removed.", + "Residuals from the Opus re-check, recorded in the decision record: a completed but too-early or stale final is labelled requested_incomplete; the WAL/SHM-without-valid-main guard, Walk.covered's exclusion, time, special-file and symlinked-parent branches, and several O12 changes have no test of their own; three mutants are missing (END count/aux, --text, a count-based Git reconcile); bind_scope's refusal paths and the real scope_populated parser are untested; the scan's exit code still comes from events it does not validate.", + "Evidence classes differ: the unit, mutation and suite runs were made by the coordinator on the final head outside any sandbox; the reviews are read-only cross-family reads, not proofs." ], - "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" + "path": "evidence/receipts/canary-proof-verification-20261001.json" }, { - "id": "native-dashboard-data-20260921", + "id": "catalog-clean-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qmd", - "qdrant", - "agentsview", - "grafana", - "loki", - "rtk", - "context-mode", - "headroom", - "jcodemunch-mcp", - "promptfoo", - "serena", - "systemd" + "codex" ], - "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", + "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", "limitations": [ - "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", - "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", - "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", - "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", - "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", - "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", - "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", - "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", - "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." + "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", + "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", + "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." ], - "path": "evidence/receipts/native-dashboard-data-20260921.json" + "path": "evidence/receipts/catalog-clean-install-20260921.json" }, { - "id": "foundation-closure-20260921", - "kind": "native_cli_e2e", + "id": "catalog-freshness-20260923", + "kind": "upstream_provenance", "component_ids": [ "claude-code", "codex", - "affaan-m/ECC", - "context-mode" + "llama-cpp", + "mcp-inspector", + "openresearch", + "skfolio" ], - "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", + "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", "limitations": [ - "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", - "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", - "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", - "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", - "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", - "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", - "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", - "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." + "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", + "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", + "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", + "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." ], - "path": "evidence/receipts/foundation-closure-20260921.json" + "path": "evidence/receipts/catalog-freshness-20260923.json" }, { - "id": "native-quality-defaults-20260920", - "kind": "native_cli_e2e", + "id": "catalog-runtime-review-20260921", + "kind": "native_model_e2e", "component_ids": [ "codex", - "claude-code" + "claude-code", + "dagu" ], - "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", + "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", "limitations": [ - "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", - "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", - "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", - "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", - "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." + "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", + "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", + "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." ], - "path": "evidence/receipts/native-quality-defaults-20260920.json" + "path": "evidence/receipts/catalog-runtime-review-20260921.json" }, { - "id": "native-terminal-profiles-20260920", + "id": "ccusage-20026-qualification-20260927", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "qdrant", - "vllm" + "ccusage" ], - "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", "limitations": [ - "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", - "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", - "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", - "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", - "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." + "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", + "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", + "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", + "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", + "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", + "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", + "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", + "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", + "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", + "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", + "New hosts receive this pin only after the next release tag." ], - "path": "evidence/receipts/native-terminal-profiles-20260920.json" + "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" }, { - "id": "native-claude-profile-20260920", - "kind": "native_cli_e2e", + "id": "claude-advisor-usage-scan-20260928", + "kind": "artifact_measurement", + "component_ids": [ + "claude-code" + ], + "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", + "limitations": [ + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", + "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", + "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", + "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", + "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", + "Whether ccusage or ecosystem-token-report count these entries was not checked." + ], + "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" + }, + { + "id": "claude-foundation-finalization-20260921", + "kind": "native_model_e2e", "component_ids": [ "claude-code", "codex", - "affaan-m/ECC", - "context-mode", - "rtk" + "agent-browser", + "repomix" ], - "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", + "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", "limitations": [ - "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", - "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", - "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", - "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", - "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", - "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", - "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", - "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", - "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." + "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", + "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", + "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", + "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." ], - "path": "evidence/receipts/native-claude-profile-20260920.json" + "path": "evidence/receipts/claude-foundation-finalization-20260921.json" }, { - "id": "native-offhost-restic-20260920", + "id": "claude-host-practice-readback-20260928", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "claude-code", + "claude-hud", + "headroom", + "mcporter", + "jcodemunch-mcp", + "agent-browser", + "qmd" ], - "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", + "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", "limitations": [ - "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", - "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", - "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", - "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", - "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", - "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." + "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", + "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", + "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", + "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", + "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", + "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", + "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." ], - "path": "evidence/receipts/native-offhost-restic-20260920.json" + "path": "evidence/receipts/claude-host-practice-readback-20260928.json" }, { - "id": "native-dagu-retry-tests-20260920", + "id": "claude-hud-0100-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "dagu" + "claude-hud" ], - "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", "limitations": [ - "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", - "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", - "No broker/provider operations or token savings were measured.", - "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" }, { - "id": "native-token-stack-final-20260920", - "kind": "native_model_e2e", + "id": "claude-hud-0100-qualification-20261004", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", + "claude-hud" + ], + "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed claude-hud 0.10.0 from tag v0.10.0 through native Claude plugin commands after an initial marketplace-source mismatch failed. Native marketplace remove/add and plugin install succeeded; plugin list showed version 0.10.0 enabled at user scope. Direct and configured statusline commands rendered a sample payload with exit 0. This is historical plugin and sample-render evidence, not a new interactive terminal session or model run.", + "limitations": [ + "No macOS execution and no upstream test suite run. There are no release assets for this tag; the supported installation remains a native Claude Code plugin, not a tarball bootstrap kind.", + "First marketplace add failed with exit 1 due to the old source entry; native remove/add/install recovered it. Sample statusline rendering does not establish a fresh interactive Claude session or provider usage.", + "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" + }, + { + "id": "claude-max-default-effort-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", + "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", + "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", + "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", + "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", + "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", + "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", + "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." + ], + "path": "evidence/receipts/claude-max-default-effort-20260929.json" + }, + { + "id": "claude-model-effort-probes-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", + "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", + "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", + "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", + "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." + ], + "path": "evidence/receipts/claude-model-effort-probes-20260929.json" + }, + { + "id": "claude-project-effort-flag-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", + "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", + "The Ultracode reminder is an indicator, not proof of workflow orchestration.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." + ], + "path": "evidence/receipts/claude-project-effort-flag-20260929.json" + }, + { + "id": "claude-repository-evidence-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "alpaca-py", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codex", + "codex-for-claude", + "context-hub", "context-mode", - "jcodemunch-mcp", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "duckdb", + "edgartools", + "gitleaks", + "grafana", "headroom", - "rtk", - "opentelemetry-collector-contrib", + "huggingface-hub-native", + "jcodemunch-mcp", + "lean", "loki", - "prometheus" + "markitdown", + "mcp-inspector", + "mcporter", + "nautilus-trader", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "pandas", + "playwright-cli", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shellcheck", + "skfolio", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", + "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", "limitations": [ - "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", - "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", - "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", - "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", - "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", - "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", - "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", - "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." + "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", + "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", + "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", + "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", + "Superseded observations, including the author's own probe and invocation errors, remain recorded." ], - "path": "evidence/receipts/native-token-stack-final-20260920.json" + "path": "evidence/receipts/claude-repository-evidence-20260921.json" }, { - "id": "native-rag", - "path": "evidence/receipts/native-rag.json", + "id": "claude-selective-context-pilot-20260921", "kind": "native_model_e2e", "component_ids": [ - "codex", "claude-code", - "socraticode", - "qdrant", - "vllm", - "huggingface-hub-native" + "context-mode" ], - "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", + "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", "limitations": [ - "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", - "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." - ] + "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", + "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", + "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", + "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", + "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", + "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", + "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", + "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." + ], + "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" }, { - "id": "native-memory", - "path": "evidence/receipts/native-memory.json", - "kind": "native_model_e2e", + "id": "claude-spend-attribution-20260929", + "kind": "artifact_measurement", "component_ids": [ + "claude-code", + "ccusage" + ], + "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", + "limitations": [ + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", + "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", + "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", + "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", + "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", + "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", + "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", + "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", + "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", + "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." + ], + "path": "evidence/receipts/claude-spend-attribution-20260929.json" + }, + { + "id": "claude-spend-window-20261004", + "kind": "artifact_measurement", + "component_ids": [ + "claude-code", + "ccusage", + "context-mode" + ], + "claim": "Retained Claude-only ccusage daily costs rise from $2,823.79 and $2,427.25 on October 1/2 to $5,940.56 on October 3. The supplied executor window comparison reproduces exactly from count-only scanner outputs: IET per 24 h rises 2.121 times, counted call rows 2.419 times, and subagents started 2.824 times, while mean context per call falls from 271,790 to 216,230 tokens. The unfiltered retained session-view export is $12,404.88 and its workflow share is 61.402%; removing 17 rows with pre-10-03 last activity leaves $11,151.92, with coordinator-tree shares 63.296% and 33.787%. These are session-selection views, not spend since 10-03. Net pre-first-call attachment growth excluding UI is about 2.9 KB (0.8K rough tokens), rather than the positive-only 4.3 KB (1.2K) estimate. These are scoped observations, not subscription charges or a quality comparison. Adding the retained advisor-cohort estimate gives 830.270M and 1,777.960M IET per 24 h (2.141 times); all 689 A and 1,209 B advisor iterations in those cohorts used Fable. Fable is $2,092.87, or 35.230% of priced Claude dollars on 10-03. The user subsequently selected an Opus 5.5 advisor.", + "limitations": [ + "API-equivalent prices are not the subscription meter. ccusage leaves claude-sonnet-5-5 unpriced; its dollars therefore do not price every counted Claude model.", + "ccusage days are local time and Prometheus days are UTC. These scopes and the scanner windows must not be summed or equated.", + "Prometheus keeps one week; this retained export starts with the UTC day 2026-09-27 and ends with 2026-10-03.", + "The attr byte shares use unfitted weights, so they show direction only; receipt context shares exclude UI records before normalization.", + "The hook_success records are UI-only and are not counted as context. Pre-first-call attachment sizes are serialized metadata bytes, not exact model input or tokenization.", + "NativeStack only, because NativeStack2604's telemetry has no listener. This scope is the coordinator's stated observation boundary, not a new listener check.", + "10-04 is a partial day. The scanner ends at 14:00Z; no full-day projection is a measured total.", + "This is a re-derivation of retained native outputs and scanner aggregates, not a new provider/model run, an upstream acceptance test, or a quality/savings A/B.", + "window_compare.py includes synthetic zero-usage rows in its call counts and uses per-field maximum deduplication. Its subagent calls-per-file statistic spans each selected file, whereas its call and IET windows filter call timestamps.", + "Window hook text is not retained in the aggregate inputs. Historical hook-text estimates are reported as estimates; current installed carrier and upstream static hook sizes are distinct observations and do not establish historical hook outputs.", + "The unfiltered session export includes pre-10-03 activity: 17 rows worth $1,252.96 have lastActivity before 2026-10-03T04:00Z. The raw and activity-selected shares have different denominators. Filtering lastActivity does not restrict the dates of every token in a session total; neither view is established as spend since 10-03.", + "The reproduction artifact extends the supplied analysis with advisor-cohort rows. Original executor output is unchanged. Its private raw output includes source identifiers; only sanitized aggregates are retained here.", + "Advisor iterations are absent from calls.tsv and retained only as per-file tot values in files.jsonl. Grouping them by file first_ts reproduces the reviewed cohorts, but files can cross window boundaries. Executor-plus-advisor-cohort IET is an estimate with mixed timestamp scopes, not an exact call-window total; advisor iterations have no recorded effort here.", + "IET applies the same coefficients to every model: input 1, cache read 0.1, five-minute and unclassified cache writes 1.25, one-hour cache writes 2, and output 5, with thinking already in output. There is no model-specific base-price multiplier. Advisor aggregates lack cache-write duration splits and weight all cache writes at 1.25. Thus IET model shares and window ratios are relative-index measures, not dollar shares or actual spend ratios; Fable dollars from ccusage remain separate. Historical Fable usage precedes the new Opus advisor decision." + ], + "path": "evidence/receipts/claude-spend-window-20261004.json" + }, + { + "id": "claude-upstream-checks-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "agent-browser", + "agentsview", "ai-memory", + "alertmanager", + "ast-grep", + "beads", + "ccusage", + "claude-code", "codex", - "claude-code" + "codex-for-claude", + "context-mode", + "dagu", + "difftastic", + "gitleaks", + "grafana", + "headroom", + "jcodemunch-mcp", + "lean", + "loki", + "markitdown", + "mcporter", + "nautilus-trader", + "openresearch", + "opentelemetry-collector-contrib", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", + "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", "limitations": [ - "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", - "No historical archive backfill or LLM/embedding consolidation pipeline enabled." - ] + "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", + "Complete originals remain private; public excerpts are bounded and sanitized.", + "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." + ], + "path": "evidence/receipts/claude-upstream-checks-20260921.json" }, { - "id": "native-context-memory", - "path": "evidence/receipts/native-context-memory.json", - "kind": "native_model_e2e", + "id": "codex-01571-qualification-20260926", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", + "limitations": [ + "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", + "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", + "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", + "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", + "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", + "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", + "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", + "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", + "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", + "Linux x86_64 only, one host; nothing here is macOS evidence." + ], + "path": "evidence/receipts/codex-01571-qualification-20260926.json" + }, + { + "id": "codex-01592-qualification-20260930", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", + "limitations": [ + "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", + "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", + "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", + "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", + "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", + "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", + "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", + "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", + "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", + "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", + "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", + "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", + "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", + "Linux x86_64 only, one host; nothing here is macOS evidence." + ], + "path": "evidence/receipts/codex-01592-qualification-20260930.json" + }, + { + "id": "codex-01593-hindsight-native-memory-20261001", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "Fresh native Codex automatic capture and independent recollection from the selected Hindsight bank passed in both headless exec and daemon-backed interactive resume/queue paths.", + "limitations": [ + "Two invented canaries and their record budgets are explicitly synthetic, not project policy, market data or trading acceptance.", + "This is supported native command/API execution with synthetic inputs and independent observation, not an executed upstream Docker or Cargo test suite.", + "Headless exec and daemon-backed TUI are distinct paths; each has its own fresh provider-backed observations below.", + "Knowledge-page search completed but did not contain either canary. Native Hindsight reflect supplied the correct values; page population or cron refresh is not qualified here.", + "Backend seed/survey completion was not established. Native status reported synced=false with active operations; the coordinator separately owns seed-job recovery.", + "Native model token usage excludes Hindsight backend extraction/reflection usage. Backend usage and monetary cost are unknown.", + "No production-quality or token-efficiency comparison is claimed, and no unrelated session or authentication store was read." + ], + "path": "evidence/receipts/codex-01593-hindsight-native-memory-20261001.json" + }, + { + "id": "codex-01593-native-queue-20261001", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "Fresh provider-backed native queue delivery succeeded while the owned daemon-backed thread was idle, while a preceding turn was busy, and after its TUI disconnected and resumed. Three official Hindsight hook definitions were individually trusted through the native UI.", + "limitations": [ + "Synthetic messaging inputs qualify these native operations, not production task quality or the whole ecosystem.", + "No upstream Cargo test suite was run; upstream test sources were reviewed and native commands were exercised.", + "No daemon restart was attempted during live qualification, and no unrelated session was inspected or interrupted.", + "Queue delivery to a concurrently running embedded receiver, cross-family bridge delivery, cross-account isolation, remote hosts, and Hindsight retrieval/retention are outside this receipt.", + "Hindsight capture remained disabled during hook trust. Hook trust is not memory acceptance.", + "Provider monetary cost is unknown. Native usage counters do not establish improvement against another configuration." + ], + "path": "evidence/receipts/codex-01593-native-queue-20261001.json" + }, + { + "id": "codex-desktop-live-20260920", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", "context-mode", + "jcodemunch-mcp", "serena", - "rtk" + "ai-memory", + "socraticode", + "rtk", + "headroom", + "qmd", + "loki", + "prometheus" ], - "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", + "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", "limitations": [ - "Earlier Serena/RTK run uses its original CLI version.", - "PreCompact was not induced; current Desktop catalog is distinct from child native clients." - ] + "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", + "Tools without native savings ledgers remain unavailable, not zero.", + "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", + "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", + "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", + "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", + "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", + "No fresh Prometheus turn sample in the selected window; no three-way observation join." + ], + "path": "evidence/receipts/codex-desktop-live-20260920.json" }, { - "id": "runtime-tools", - "path": "evidence/receipts/runtime-tools.json", + "id": "codex-session-environment-20260920", "kind": "native_cli_e2e", "component_ids": [ - "gitleaks", - "sandbox-runtime" + "codex", + "context-mode", + "jcodemunch-mcp", + "serena", + "ai-memory", + "socraticode" ], - "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", + "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", "limitations": [ - "No claim of full security certification.", - "Sandbox network denial configured but not separately exercised." - ] + "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", + "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", + "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", + "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", + "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", + "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", + "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." + ], + "path": "evidence/receipts/codex-session-environment-20260920.json" }, { - "id": "artifact-reductions", - "path": "evidence/receipts/artifact-reductions.json", + "id": "codex-shell-snapshot-cleanup-20260930", "kind": "artifact_measurement", "component_ids": [ - "rtk", - "socraticode", - "openresearch", - "context-mode" + "codex" ], - "claim": "Recorded exact selected-text reductions, distinct from model usage.", + "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", "limitations": [ - "Lossy selections compare retained text to full-file/paper counterfactuals.", - "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." - ] + "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", + "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", + "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", + "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." + ], + "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" }, { "id": "component-history", @@ -564,61 +837,116 @@ ] }, { - "id": "native-cli-gaps", - "path": "evidence/receipts/native-cli-gaps.json", + "id": "cross-family-review-terminal-lane-20260930", "kind": "native_model_e2e", "component_ids": [ - "qmd", - "codebase-memory-mcp", - "agent-browser" + "codex", + "omniroute", + "claude-code" ], - "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", + "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", "limitations": [ - "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", - "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." - ] + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", + "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", + "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", + "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", + "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", + "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", + "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." + ], + "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" }, { - "id": "worktrunk-list", - "path": "evidence/receipts/worktrunk-list.json", + "id": "current-session-observation-20260920", "kind": "native_cli_e2e", "component_ids": [ - "worktrunk" + "agentsview", + "ai-memory", + "alertmanager", + "ccusage", + "claude-hud", + "context-mode", + "grafana", + "headroom", + "jcodemunch-mcp", + "loki", + "mcporter", + "ntfy", + "opentelemetry-collector-contrib", + "otel-tui", + "prometheus", + "rtk", + "serena", + "socraticode" ], - "claim": "Native wt list enumerated the actual publication worktree set.", + "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", "limitations": [ - "Model-free repository inventory, not multi-agent correctness." - ] + "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", + "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", + "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", + "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", + "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", + "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", + "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", + "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." + ], + "path": "evidence/receipts/current-session-observation-20260920.json" }, { - "id": "desktop-direct-rag", - "kind": "native_model_e2e", + "id": "dashboard-gap-resolution-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "socraticode", - "qdrant", - "vllm", - "ai-memory" + "ai-memory", + "codex", + "claude-code", + "agentsview", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo", + "vllm" ], - "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", + "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", "limitations": [ - "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", - "No whole-task provider usage/savings attribution is claimed." + "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", + "Fresh PreCompact event and active Desktop session end remain unforced.", + "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", + "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", + "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", + "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." ], - "path": "evidence/receipts/desktop-direct-rag.json" + "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" }, { - "id": "vllm-compatibility", - "kind": "compatibility_attempt", + "id": "dashboard-render-e2e-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "vllm", - "socraticode" + "ai-memory", + "qdrant", + "socraticode", + "serena", + "agentsview", + "dagu", + "omniroute", + "agent-browser", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo" ], - "claim": "Latest vLLM0.29.0 native install succeeded but GPU startup failed on WSL; publisher-validated0.25.0 restored and direct retrieval passed.", + "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", "limitations": [ - "This is a host-specific failure, not a claim0.29is universally unusable.", - "The resolver success does not establish GPU/runtime compatibility." + "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", + "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", + "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", + "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", + "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", + "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", + "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." ], - "path": "evidence/receipts/vllm-compatibility.json" + "path": "evidence/receipts/dashboard-render-e2e-20260921.json" }, { "id": "desktop-cli-workflows", @@ -637,72 +965,20 @@ "path": "evidence/receipts/desktop-cli-workflows.json" }, { - "id": "portable-cli-artifacts", - "kind": "native_cli_e2e", - "component_ids": [ - "shellcheck", - "difftastic", - "markitdown", - "ast-grep", - "toon", - "repomix" - ], - "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", - "limitations": [ - "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", - "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." - ], - "path": "evidence/receipts/portable-cli-artifacts.json" - }, - { - "id": "native-observability", - "kind": "native_cli_e2e", - "component_ids": [ - "codex", - "claude-code", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana", - "alertmanager", - "ntfy" - ], - "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", - "limitations": [ - "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", - "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", - "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", - "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", - "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", - "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." - ], - "path": "observability/receipt.json" - }, - { - "id": "native-observability-followup", + "id": "desktop-direct-rag", "kind": "native_model_e2e", "component_ids": [ - "codex", - "context-mode", - "ai-memory", "socraticode", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana" + "qdrant", + "vllm", + "ai-memory" ], - "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", + "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", "limitations": [ - "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", - "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", - "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", - "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", - "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", - "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." + "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", + "No whole-task provider usage/savings attribution is claimed." ], - "path": "observability/followup-receipt.json" + "path": "evidence/receipts/desktop-direct-rag.json" }, { "id": "desktop-restart-acceptance", @@ -730,817 +1006,746 @@ "path": "observability/restart-receipt.json" }, { - "id": "sec-financial-data-20260919", - "kind": "compatibility_attempt", + "id": "env-freshness-wsl-ubuntu-main-20260924", + "kind": "artifact_measurement", "component_ids": [ - "duckdb" + "nautilus-trader", + "alpaca-py", + "duckdb", + "pandas", + "edgartools", + "exchange-calendars", + "vllm" ], - "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", + "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", "limitations": [ - "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", - "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", - "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", - "Current API snapshots do not reconstruct historical point-in-time knowledge.", - "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", - "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." + "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", + "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", + "One host; each PC publishes its own report under the same schema.", + "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." ], - "path": "blueprints/us-equities/financial-data/receipt.json" + "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" }, { - "id": "restic-local-public-reference-20260919", + "id": "exchange-calendars-native-check-20260922", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "exchange-calendars" ], - "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", + "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", "limitations": [ - "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", - "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", - "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", - "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", - "Credential loss recovery requires separately approved secure key escrow." + "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", + "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", + "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", + "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", + "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." ], - "path": "blueprints/us-equities/hosting/backup/receipt.json" + "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" }, { - "id": "native-research-runtime-20260919", - "kind": "native_model_e2e", + "id": "foundation-catalog-ui-20260920", + "kind": "artifact_measurement", "component_ids": [ - "claude-code", - "dagu", - "lean", - "duckdb", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "agent-browser" ], - "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", + "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", "limitations": [ - "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", - "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", - "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", - "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", - "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", - "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", - "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", - "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." + "Source pin/publication URLs pending parent final source commit and regeneration.", + "No provider/broker execution or broad regression rerun performed.", + "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." ], - "path": "blueprints/us-equities/research-runtime/receipt.json" + "path": "evidence/receipts/foundation-catalog-ui-20260920.json" }, { - "path": "blueprints/us-equities/state-recovery/memory/receipt.json", - "id": "ai-memory-native-state-recovery-20260919", + "id": "foundation-closure-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "restic" + "claude-code", + "codex", + "affaan-m/ECC", + "context-mode" ], - "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", + "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", "limitations": [ - "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", - "38 pages table rows include historical versions, not 38 current pages.", - "Native backup excludes raw/, model caches, logs and external native session transcripts.", - "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", - "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", - "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." - ] - }, - { - "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", - "id": "qdrant-native-state-recovery-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "qdrant", - "restic" + "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", + "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", + "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", + "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", + "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", + "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", + "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", + "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." ], - "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", - "limitations": [ - "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", - "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", - "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", - "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", - "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." - ] + "path": "evidence/receipts/foundation-closure-20260921.json" }, { - "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", - "id": "qmd-bm25-retrieval-20260919", - "kind": "native_cli_e2e", + "id": "foundation-convergence-20260921", + "kind": "native_model_e2e", "component_ids": [ - "qmd" + "codex", + "claude-code", + "context-mode", + "rtk", + "headroom", + "toon" ], - "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", + "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", "limitations": [ - "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", - "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", - "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", - "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", - "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", - "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", - "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", - "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", - "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", - "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", - "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." - ] + "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", + "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", + "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", + "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", + "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." + ], + "path": "evidence/receipts/foundation-convergence-20260921.json" }, { - "path": "blueprints/us-equities/convergence-review/receipt.json", - "id": "native-claude-convergence-review-20260919", - "kind": "native_model_e2e", + "id": "foundation-native-20260920", + "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "qmd", + "qdrant", + "vllm", + "socraticode", + "serena", + "context-mode", + "jcodemunch-mcp", + "rtk", + "headroom", + "repomix", + "toon", + "codex", "claude-code", "opentelemetry-collector-contrib", "prometheus", - "loki" + "loki", + "omniroute" ], - "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", + "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", "limitations": [ - "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", - "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", - "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", - "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", - "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", - "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." - ] - }, - { - "path": "blueprints/us-equities/supply-chain/receipt.json", - "id": "syft-sdk-inventory-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "syft" + "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", + "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", + "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", + "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", + "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", + "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", + "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", + "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", + "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." ], - "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", - "limitations": [ - "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", - "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", - "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", - "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", - "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", - "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", - "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", - "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", - "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", - "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." - ] + "path": "evidence/receipts/foundation-native-20260920.json" }, { - "path": "adoption/receipt.json", - "id": "portable-sdk-adoption-20260919", - "kind": "native_cli_e2e", + "id": "foundation-rd-20260921", + "kind": "native_model_e2e", "component_ids": [ + "claude-code", "codex", - "duckdb" + "codex-for-claude", + "qmd" ], - "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", + "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", "limitations": [ - "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", - "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", - "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", - "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", - "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", - "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", - "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." - ] + "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", + "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", + "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", + "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", + "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." + ], + "path": "evidence/receipts/foundation-rd-20260921.json" }, { - "path": "adoption/paired/receipt.json", - "id": "native-paired-adoption-20260919", - "kind": "native_model_e2e", + "id": "full-stack-convergence-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "codex", + "agent-browser", + "agentsview", + "ai-memory", + "ccusage", "claude-code", - "duckdb", + "codex", + "context-mode", "dagu", - "lean", - "opentelemetry-collector-contrib", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "loki", + "omniroute", + "openresearch", "prometheus", - "loki" + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "toon", + "vllm", + "worktrunk" ], - "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", + "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", "limitations": [ - "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", - "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", - "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", - "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", - "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", - "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", - "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", - "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." - ] + "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", + "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", + "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", + "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", + "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", + "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", + "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", + "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." + ], + "path": "evidence/receipts/full-stack-convergence-20260921.json" }, { - "path": "blueprints/us-equities/architecture/receipt.json", - "id": "native-architecture-review-20260919", - "kind": "native_model_e2e", + "id": "github-automation-newpc-20260922", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "claude-code" ], - "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", + "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", "limitations": [ - "The models reviewed supplied evidence and did not independently inspect primary sources. Their critiques are advisory and were adjudicated; agreement does not establish correctness or trading performance.", - "This is a native architecture-review task, not another LEAN/Dagu backtest run, full MCP/RAG acceptance, broker integration, hosted deployment or universal SOTA census.", - "The44,214 combined native reported tokens exclude coordinator and source-research workers. They are usage, not causal tokens saved or a billing measurement across identical tokenizers.", - "Astra cached input is included in input and reasoning output in output. Claude thinking is included in output; duplicate per-model/iteration/stream views are not added again.", - "Native model selection and terminal usage are not independent provider attestation. Full account/session/process identifiers and raw event streams remain private.", - "The offline Alpaca observation detects synthetic field loss only; no client/network/order, valid advanced-order fixture, entitlement or execution adapter was tested.", - "New machines must reproduce their own selected native profile and sign-in; these local WSL receipts do not establish macOS or unattended-host acceptance." - ] + "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", + "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", + "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", + "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", + "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", + "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." + ], + "path": "evidence/receipts/github-automation-newpc-20260922.json" }, { - "path": "blueprints/us-equities/execution-realism/receipt.json", - "id": "native-lean-execution-sensitivity-20260919", + "id": "gitleaks-macos-memory-bound-20260924", "kind": "native_cli_e2e", "component_ids": [ - "lean" + "gitleaks" ], - "claim": "Native LEAN completed three fixed-order historical simulations with distinct upstream fee/slippage assumptions; serialized fill cash reconciles to native rounded summaries and all mounted engine/data input hashes remained unchanged.", + "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", "limitations": [ - "Exact arithmetic over serialized native event values; exported five-decimal fill prices and cent-rounded summaries do not expose all internal precision.", - "Illustrative fees and slippage are assumptions, not calibrated market or Alpaca execution observations.", - "Full-quantity market fills remain assumed; participation, partial fills, impact, latency, queueing, cancellation and broker reconciliation remain unaccepted.", - "Bundled five-day data do not establish PIT/corporate-action/universe quality or investment returns.", - "The normal dotnet build/restore route timed out twice; only the installed native C# compiler route is accepted.", - "Mounted input hashes do not prove every file was read; successful request logs list 13 paths plus possible separately read metadata.", - "No broker connection, account entitlement, deployment, strategy promotion, provider usage or token saving is established." - ] + "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", + "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", + "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", + "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", + "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", + "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", + "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." + ], + "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" }, { - "path": "blueprints/us-equities/point-in-time/receipt.json", - "id": "native-point-in-time-contract-20260919", - "kind": "native_cli_e2e", + "id": "guard-k3-verification-20260930", + "kind": "artifact_measurement", "component_ids": [ - "duckdb" + "claude-code" ], - "claim": "DuckDB 1.5.5 materialized and selected a synthetic temporal snapshot; late revisions, universe state, feed/adjustment scope and pinned snapshot integrity were exercised through native Python SDK/SQL commands.", + "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", "limitations": [ - "Synthetic observations only; no entitled or accepted market dataset, SEC download, vendor API, model or broker call occurred.", - "Availability timestamps and evidence references are declarations, not independently authenticated vendor publication evidence.", - "Local snapshot ingestion time is separate from source publication and original capture time.", - "Scope is realized observations and effective universe state; it does not model every corporate action, event forecast, symbol mapping or delisting history.", - "Hash checks require the caller to retain a trusted manifest digest independently; local file permissions are not immutable storage or off-host recovery." - ] + "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", + "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", + "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", + "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", "limitations": [ - "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", - "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", - "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", - "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", - "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", - "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", - "No broker, trading strategy, actual feed or net token-saving acceptance." - ] + "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", + "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", + "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", + "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", + "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", + "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", + "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", + "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." + ], + "path": "evidence/receipts/headroom-039-qualification-20260925.json" }, { - "id": "native-worker-supervision-20260919", - "path": "blueprints/us-equities/worker-supervision/receipt.json", + "id": "hf-memory-models-20260921", "kind": "native_cli_e2e", "component_ids": [ - "systemd" + "ai-memory", + "socraticode", + "vllm", + "grafana" ], - "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", + "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", "limitations": [ - "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", - "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", - "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", - "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", - "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", - "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", - "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", - "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", - "Hashes bind retained evidence bytes; they do not independently attest the execution.", - "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", - "Configured resource limits were inspected, not saturation-tested." - ] + "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", + "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", + "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", + "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", + "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", + "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." + ], + "path": "evidence/receipts/hf-memory-models-20260921.json" }, { - "id": "native-grand-dashboard-20260919", - "path": "observability/grand-dashboard/receipt.json", + "id": "jcodemunch-1108327-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "grafana", - "loki", - "prometheus", - "dagu" + "jcodemunch-mcp" ], - "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", "limitations": [ - "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", - "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", - "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", - "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", - "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", - "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", - "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", - "Recorded worker/decision state is not a live process registry.", - "No broker execution, exact-once accounting, universal coverage or net token savings.", - "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." - ] + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" }, { - "id": "native-convergence-review-20260919", - "path": "blueprints/us-equities/convergence-program/review-receipt.json", + "id": "local-inference-c2-serving-switch-20260926", "kind": "native_model_e2e", "component_ids": [ - "codex", - "claude-code", - "dagu" + "llama-cpp" ], - "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", "limitations": [ - "Models checked packet/report consistency, not original sources or underlying native artifacts.", - "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", - "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", - "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", - "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", - "Usage belongs to this pair only; not whole-goal consumption or causal savings." - ] - }, - { - "id": "native-historical-leverage-stress-20260919", - "path": "blueprints/us-equities/historical-simulation/receipt.json", - "kind": "native_cli_e2e", - "component_ids": [ - "lean" + "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", + "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", + "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", + "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", + "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", + "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", + "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." ], - "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", - "limitations": [ - "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", - "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", - "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", - "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", - "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", - "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", - "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", - "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", - "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", - "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", - "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", - "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", - "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", - "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", - "No paper/live orders or automatic promotion." - ] + "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" }, { - "id": "native-chronological-controls-20260919", + "id": "login-shell-contract-20260929", "kind": "native_cli_e2e", "component_ids": [ - "skfolio", - "pandas", - "lean" + "claude-code", + "codex" ], - "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", "limitations": [ - "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", - "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", - "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", - "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", - "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", - "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", - "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", - "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", + "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", + "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", + "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", + "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", + "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", + "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", + "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", + "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." ], - "path": "blueprints/us-equities/research-evaluation/receipt.json" + "path": "evidence/receipts/login-shell-contract-20260929.json" }, { - "id": "native-edgartools-catalyst-20260919", + "id": "mac-memory-patch-20260920", + "path": "evidence/receipts/mac-memory-patch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "ai-memory" ], - "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", + "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", "limitations": [ - "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", - "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", - "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", - "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", - "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", - "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", - "Native text/byte counts are not provider token savings.", - "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." - ], - "path": "blueprints/us-equities/catalyst-provenance/receipt.json" + "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", + "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", + "No provider or whole-task token savings measurement." + ] }, { - "id": "native-simulation-research-dashboard-20260919", + "id": "mac-native-application-migration-20260920", "kind": "native_cli_e2e", "component_ids": [ - "grafana", - "loki" + "fastapi", + "postgresql" ], - "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", + "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", "limitations": [ - "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", - "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", - "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", - "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", - "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", - "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", - "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." + "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", + "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", + "No model calls; whole-task provider usage unknown." ], - "path": "blueprints/us-equities/simulation-research/receipt.json" + "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" }, { - "id": "native-sec-access-resolution-20260919", + "id": "mac-native-container-storage-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "apple-container", + "postgresql" ], - "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", + "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", "limitations": [ - "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", - "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", - "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", - "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", - "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", - "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", - "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", - "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." + "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", + "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", + "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", + "Images remain cached; only owned empty failed container, test database container and test volume were removed.", + "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." ], - "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" + "path": "blueprints/convergence-practice/container-storage/receipt.json" }, { - "id": "native-sec-new-host-20260924", + "id": "mac-native-document-ingestion-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "poppler" ], - "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", + "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", "limitations": [ - "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", - "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", - "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", - "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", - "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", - "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", - "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." + "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", + "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", + "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", + "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", + "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." ], - "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", - "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" + "path": "blueprints/convergence-practice/document-ingestion/receipt.json" }, { - "id": "sec-catalyst-dataset-native-20260920", + "id": "markitdown-018-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "markitdown" ], - "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", "limitations": [ - "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", - "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", - "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", - "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", - "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", - "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", - "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", - "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", - "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." + "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", + "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", + "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", + "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", + "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", + "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", + "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", + "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." ], - "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" + "path": "evidence/receipts/markitdown-018-qualification-20260925.json" }, { - "id": "native-corporate-actions-20260920", + "id": "mcp-inspector-280-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "lean" + "mcp-inspector" ], - "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", "limitations": [ - "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", - "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", - "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", - "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", - "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", - "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." + "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", + "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", + "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", + "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", + "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." ], - "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" + "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" }, { - "id": "native-alpaca-historical-20260920", + "id": "mcp-inspector-290-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "lean" + "mcp-inspector" ], - "claim": "Native Alpaca-py0.44.0 GET transport acquired25 AAPL SIP/raw daily bars and2 corporate actions over5 HTTP200 pages. Terminal pagination and private artifacts verified;25 raw closes and both numeric action values match the frozen LEAN probe. Dividend currency and original historical availability remain unestablished.", + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", "limitations": [ - "One retrospective AAPL sample only; no all-equities universe, delisting completeness, intraday mover coverage or original point-in-time availability.", - "Cash amount and split ratio numerically match; missing dividend currency prevents fully qualified cash-unit reconciliation. No holdings, dividend cash posting, total return, financing or strategy performance modeled.", - "Historical SIP response does not establish real-time access, unlimited history, Elite margin/order entitlement or broker execution. No orders or account resets.", - "Five bounded authenticated GET requests; no IEX downgrade, retries after access refusal, paid data or SDK upgrade.", - "Prior LEAN direct probe passed, but its separate upstream NUnit host aborted before executing tests; this wave does not repair or supersede that failure.", - "No new model task or whole-task causal token-savings experiment in this wave." + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "blueprints/us-equities/authenticated-data/native-receipt.json" + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" }, { - "id": "native-security-identity-20260920", + "id": "mcporter-0141-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "duckdb" + "mcporter" ], - "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", "limitations": [ - "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", - "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", - "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", - "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", - "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", - "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", - "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", - "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." + "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", + "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", + "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", + "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", + "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", + "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." ], - "path": "blueprints/us-equities/identity-readiness/native-receipt.json" + "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" }, { - "id": "token-practice-artifacts-20260920", - "kind": "artifact_measurement", + "id": "mcporter-0142-qualification-20261003", + "kind": "compatibility_attempt", "component_ids": [ - "agent-browser", - "ast-grep", - "edgartools", - "markitdown", - "qmd", - "repomix", - "rtk", - "socraticode", - "syft", - "toon" + "mcporter" ], - "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", "limitations": [ - "Counts describe retained original host artifacts. This public aggregate omits the private originals; CI validates aggregate integrity, not an independent recount of those private bytes.", - "Most pairs select or transform information lossily. Shorter output does not establish equivalent answer quality or lower complete task usage.", - "Pairs overlap, including shared HTML sources and retrieval services. Do not sum them or attribute the same difference independently to dependencies.", - "Exact provider savings remain null. Tokenizer counts are not provider billing, subscription savings or causal per-repository effects.", - "The Syft table preserves checked package name/version/type columns while omitting other SBOM metadata; this is a view selection, not equivalent full SBOM content." + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/token-practice-artifacts-20260920.json" + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" }, { - "id": "token-practice-native-pairs-20260920", - "kind": "native_model_e2e", + "id": "mcporter-0142-qualification-20261004", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode" + "mcporter" ], - "claim": "Four native coding trials passed shared visible, hidden and file-scope acceptance gates; one fixed-order Context Mode non-use/explicit-use pair per client produced mixed observed task-usage differences.", + "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed mcporter 0.14.2 and returned version 0.14.2 with exit 0. Registry provenance matched openclaw/mcporter release.yml at v0.14.2, and a scratch npm audit verified 43 registry signatures and 15 attestations. Ad-hoc stdio jcodemunch session statistics and context-mode ctx_stats calls returned exit 0. Configured-daemon calls failed on a stale rendezvous and were not recovered. This receipt republishes sanitized historical host observations, not a new host execution.", "limitations": [ - "One baseline-first pair per client is not randomized, repeated or cache-matched. Native cache warmth and plugin tool availability were not fully controlled.", - "Observed differences are not causal per-repository savings, a whole-stack saving rate or evidence that either model is generally better.", - "Codex cached input and reasoning output are subsets. Claude ordinary input, cache creation, cache reads and output are separate categories; thinking is included in output.", - "Final cumulative session counters are used once. Coordinator, reviewers, audit tooling and report production are outside these four task totals.", - "Billed cost is unknown. Token counts and cached reads do not establish subscription charges or money saved.", - "Private transcripts, session identifiers and commands are not published. Hashes bind retained evidence, not independent attestation of provider execution." + "No macOS execution and no upstream test suite run. The npm tarball hash is artifact evidence and does not pin the transitive dependency tree or rolldown platform binding.", + "Configured-server list/call failures are retained. The stale daemon was not recovered and keep-alive transport acceptance is not claimed; dist/daemon/client.js was recorded byte-identical across 0.14.1 and 0.14.2.", + "npm audit signatures --global failed with EAUDITGLOBAL (exit 1); only the later scratch-project audit succeeded. The ad-hoc MCP statistics are self-reports, not provider counts or savings.", + "The Mac keeps its separately qualified MCPorter 0.13.13 pin until a Mac qualifies 0.14.2. The platform-independent tarball artifact check is not Mac execution or Mac qualification." ], - "path": "evidence/receipts/token-practice-native-pairs-20260920.json" + "path": "evidence/receipts/mcporter-0142-qualification-20261004.json" }, { - "id": "token-practice-coverage-20260920", - "kind": "historical_inventory", + "id": "memory-landscape-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", "ai-memory", - "ast-grep", - "ccusage", - "claude-code", - "claude-hud", - "codebase-memory-mcp", "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "davila7/claude-code-templates", - "difftastic", - "gitleaks", - "headroom", - "huggingface-hub-native", - "markitdown", - "mcp-inspector", - "mcporter", - "openresearch", - "playwright-cli", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "rtk", - "sandbox-runtime", - "serena", - "shanraisshan/claude-code-best-practice", - "shellcheck", - "socraticode", - "toon", - "vllm", - "worktrunk", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana", - "alertmanager", - "ntfy", - "duckdb", - "restic", - "dagu", - "lean", - "syft", - "alpaca-py", - "systemd", - "pandas", - "skfolio", - "edgartools" + "claude-code" ], - "claim": "A dated 52-component audit distinguishes native artifact/task pairs, bounded functionality, current queries, configuration validation, historical-only evidence, host failures and non-executable guidance.", + "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", "limitations": [ - "This historical coverage inventory records the dated audit only; it is not 52 fresh end-to-end passes or new-host acceptance.", - "Seventy captured operations include four retained failed attempts; successful corrections do not erase the initial OTel environment and Dagu environment-filter failures.", - "Two Linux Playwright invocations failed with ENOENT; the Windows installation does not establish Linux availability.", - "Guidance repositories are not executable tools. Current state, backup and cache queries or configuration validation do not prove complete lifecycle behavior.", - "Native RTK, TOON, Context Mode and Headroom counters have different scopes and estimators. They cannot be summed with artifact differences or provider usage.", - "Exact causal per-component provider saving values remain unknown rather than zero." + "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", + "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", + "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", + "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", + "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", + "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", + "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", + "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", + "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." ], - "path": "evidence/receipts/token-practice-coverage-20260920.json" + "path": "evidence/receipts/memory-landscape-20260921.json" }, { - "id": "token-practice-catalog-toon-20260920", - "kind": "artifact_measurement", + "id": "memory-landscape-lifecycle-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "toon" + "ai-memory", + "socraticode", + "qdrant", + "vllm", + "serena", + "qmd", + "codex", + "claude-code" ], - "claim": "A reversible full-catalog TOON conversion had a smaller native heuristic estimate but a larger exact token count than compact JSON; the guard retained compact JSON.", + "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", "limitations": [ - "This is one later artifact comparison, separate from the ten original token-practice pairs. Do not sum it with cumulative native counters or provider usage.", - "Native tokenx estimates and exact o200k_base counts use different estimators and JSON representations; they are not interchangeable savings metrics.", - "The public aggregate omits the private captured output files. Published hashes establish identity, not independent CI recount of the private bytes.", - "Exact provider savings remain unknown. The successful strict round trip establishes data equivalence for this conversion only.", - "Command templates replace host-specific source and output locations with portable placeholders." + "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", + "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", + "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", + "Exact memory session/lifetime savings are not returned and remain null.", + "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." ], - "path": "evidence/receipts/token-practice-catalog-toon-20260920.json" + "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" }, { - "id": "token-practice-native-counters-20260920", - "kind": "historical_inventory", + "id": "memory-lifecycle-probe-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "context-mode", - "headroom", - "rtk", - "toon" + "ai-memory" ], - "claim": "Dated native counter snapshots retain RTK output, the capped Headroom ledger result, per-conversion TOON estimates and three separate Context Mode runtime scopes without treating them as exact provider savings.", + "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", "limitations": [ - "This historical snapshot is a dated report only, not a live dashboard or new-host execution acceptance.", - "RTK counters estimate retained command history and default to 90-day retention; selected-project values are a subset of the global result. Do not add snapshots or assume a forever ledger.", - "Headroom 0.37.0 caps the report at 30 days despite naming a field lifetime; zero ledger calls do not establish zero offline guard use or provider usage.", - "Context Mode uses byte/event heuristics and separate runtime state. Illustrative cost estimates are not bills, and persisted files must not be added to a direct MCP connection snapshot.", - "TOON statistics are tokenx heuristics for one conversion, not a native cumulative ledger. The compact-JSON exact counterexample is represented by the separate catalog receipt and must not be counted twice.", - "Raw private files, host paths, full command outputs and session identifiers are omitted. Sanitized fields and aggregate hashes do not independently attest provider activity." + "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", + "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", + "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", + "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", + "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", + "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." ], - "path": "evidence/receipts/token-practice-native-counters-20260920.json" + "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" }, { - "id": "token-practice-gap-followup-20260920", + "id": "native-ai-memory-maintenance-20260920", + "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "playwright-cli", - "agentsview", - "ccusage", - "claude-hud", - "openresearch", - "codex-for-claude", - "codex" + "ai-memory" ], - "claim": "Six separately scoped follow-ups exercised a pinned Linux browser fixture, a single-session archive query, offline usage parsing, a synthetic HUD renderer, public-paper retrieval and one read-only native bridge backend task.", + "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", "limitations": [ - "These later bounded results do not turn the earlier dated 52-component audit into 52 full end-to-end passes. Individual scopes below remain authoritative.", - "Three failed attempts remain: file-protocol navigation rejection, implicit archive auto-start message failure and archive restart-lock failure. Successful recovery does not erase them.", - "Playwright used an existing Chrome installation and a fixture-only loopback HTTP endpoint. Its Playwright dependencies are alpha builds; no default browser download or arbitrary-site acceptance was tested.", - "The archive was restricted to one explicit project session. Full private transcripts, authentication material and session identifiers are omitted; automatic archive discovery did not pass.", - "HUD acceptance is a synthetic renderer fixture, not a live interactive account display. OpenResearch acceptance is public-paper retrieval, not an agent research workflow or research-quality assessment.", - "The ccusage reports overlap and must not be added. Upstream parser categories and totals are not bills or a matched provider savings comparison. The first date-only query returned an empty window.", - "The bridge trial is additional observed provider usage, not savings. It used one backend task without an outer Claude interaction or matched baseline; cached input is a subset of native input.", - "Tracked source remained unchanged; native MCP startup created untracked metadata. All owned temporary services were stopped. Public aggregate hashes bind retained evidence but do not independently reproduce private logs." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", + "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", + "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", + "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", + "Forward-only migrations may require restoring the retained private backup to downgrade." ], - "path": "evidence/receipts/token-practice-gap-followup-20260920.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-lifecycle-sample-20260920", + "id": "native-alpaca-historical-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "alpaca-py", + "lean" ], - "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", + "claim": "Native Alpaca-py0.44.0 GET transport acquired25 AAPL SIP/raw daily bars and2 corporate actions over5 HTTP200 pages. Terminal pagination and private artifacts verified;25 raw closes and both numeric action values match the frozen LEAN probe. Dividend currency and original historical availability remain unestablished.", "limitations": [ - "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", - "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", - "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", - "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", - "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", - "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." + "One retrospective AAPL sample only; no all-equities universe, delisting completeness, intraday mover coverage or original point-in-time availability.", + "Cash amount and split ratio numerically match; missing dividend currency prevents fully qualified cash-unit reconciliation. No holdings, dividend cash posting, total return, financing or strategy performance modeled.", + "Historical SIP response does not establish real-time access, unlimited history, Elite margin/order entitlement or broker execution. No orders or account resets.", + "Five bounded authenticated GET requests; no IEX downgrade, retries after access refusal, paid data or SDK upgrade.", + "Prior LEAN direct probe passed, but its separate upstream NUnit host aborted before executing tests; this wave does not repair or supersede that failure.", + "No new model task or whole-task causal token-savings experiment in this wave." ], - "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" + "path": "blueprints/us-equities/authenticated-data/native-receipt.json" }, { - "id": "synthetic-catalyst-contract-20260920", + "id": "native-application-delivery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "nextjs", + "react", + "fastapi", + "postgresql" ], - "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", + "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", "limitations": [ - "Protocol thresholds are exploratory choices, not fitted or proven optimal.", - "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", - "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", - "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", - "No provider calls, broker orders, new model turn or net token-savings measurement." + "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", + "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", + "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", + "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", + "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", + "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", + "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", + "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." ], - "path": "blueprints/us-equities/catalyst-experiment/receipt.json" + "path": "blueprints/convergence-practice/application-delivery/receipt.json" }, { - "id": "native-research-efficiency-20260920", + "path": "blueprints/us-equities/architecture/receipt.json", + "id": "native-architecture-review-20260919", "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki" + ], + "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", + "limitations": [ + "The models reviewed supplied evidence and did not independently inspect primary sources. Their critiques are advisory and were adjudicated; agreement does not establish correctness or trading performance.", + "This is a native architecture-review task, not another LEAN/Dagu backtest run, full MCP/RAG acceptance, broker integration, hosted deployment or universal SOTA census.", + "The44,214 combined native reported tokens exclude coordinator and source-research workers. They are usage, not causal tokens saved or a billing measurement across identical tokenizers.", + "Astra cached input is included in input and reasoning output in output. Claude thinking is included in output; duplicate per-model/iteration/stream views are not added again.", + "Native model selection and terminal usage are not independent provider attestation. Full account/session/process identifiers and raw event streams remain private.", + "The offline Alpaca observation detects synthetic field loss only; no client/network/order, valid advanced-order fixture, entitlement or execution adapter was tested.", + "New machines must reproduce their own selected native profile and sign-in; these local WSL receipts do not establish macOS or unattended-host acceptance." + ] + }, + { + "id": "native-catalog-retrieval-20260920", + "kind": "native_cli_e2e", + "component_ids": [ "qmd" ], - "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", + "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", "limitations": [ - "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", - "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", - "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", - "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", - "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", - "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", - "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", - "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", - "Local supervision does not prove provider-side cancellation; no run timed out.", - "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." + "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", + "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", + "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", + "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." ], - "path": "blueprints/us-equities/research-efficiency/native-receipt.json" + "path": "evidence/receipts/native-catalog-retrieval-20260920.json" + }, + { + "id": "native-chronological-controls-20260919", + "kind": "native_cli_e2e", + "component_ids": [ + "skfolio", + "pandas", + "lean" + ], + "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", + "limitations": [ + "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", + "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", + "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", + "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", + "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", + "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", + "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", + "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." + ], + "path": "blueprints/us-equities/research-evaluation/receipt.json" }, { "id": "native-ci-security-20260920", @@ -1572,88 +1777,92 @@ "path": "blueprints/convergence-practice/native-worker/receipt.json" }, { - "id": "upstream-native-tools-20260920", - "path": "evidence/receipts/upstream-native-tools-20260920.json", - "kind": "native_cli_e2e", + "path": "blueprints/us-equities/convergence-review/receipt.json", + "id": "native-claude-convergence-review-20260919", + "kind": "native_model_e2e", "component_ids": [ - "beads", - "skills-ref", - "otel-tui" + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Three supplemental upstream tools installed on the source Linux/WSL host: Beads persisted task claims and dependency transitions, skills-ref validated and rendered a selected skill, and otel-tui ingested and displayed one synthetic loopback trace.", + "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "Bounded native CLI/TUI acceptance on Linux/WSL; no new native Codex or Claude provider task was run for these additions.", - "Beads used one owned Git fixture with embedded Dolt, explicit task scope, skipped agent-instruction generation and skipped hooks. It does not replace ai-memory.", - "skills-ref is upstream's reference/demo implementation; successful portable-format validation does not certify production client extensions or tool semantics.", - "otel-tui received one synthetic local trace; no production or native-provider telemetry session was evaluated and no persistent exporter was installed.", - "None of these three tools exposes a verified cumulative token-savings counter. Exact causal lifetime provider savings remain null.", - "Public command forms substitute portable variables for private host paths; private raw operation logs are not published." + "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", + "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", + "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", + "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", + "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", + "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." + ] + }, + { + "id": "native-claude-hud-interactive-20260920", + "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", + "kind": "compatibility_attempt", + "component_ids": [ + "claude-hud" ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", + "limitations": [ + "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", + "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", + "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." + ] }, { - "id": "native-ai-memory-maintenance-20260920", - "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", + "id": "native-claude-profile-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "claude-code", + "codex", + "affaan-m/ECC", + "context-mode", + "rtk" ], - "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", + "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", - "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", - "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", - "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", - "Forward-only migrations may require restoring the retained private backup to downgrade." + "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", + "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", + "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", + "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", + "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", + "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", + "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", + "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", + "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "evidence/receipts/native-claude-profile-20260920.json" }, { - "id": "native-linux-zizmor-20260920", - "path": "evidence/receipts/native-linux-zizmor-20260920.json", - "kind": "native_cli_e2e", + "id": "native-claude-session-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "zizmor" + "claude-code" ], - "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", + "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", - "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", - "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", - "No provider task was run and zizmor supplies no verified lifetime token-savings counter." + "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", + "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", + "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", + "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "evidence/receipts/native-claude-session-recovery-20260920.json" }, { - "id": "native-dagu-job-recovery-20260920", - "kind": "native_cli_e2e", + "id": "native-cli-gaps", + "path": "evidence/receipts/native-cli-gaps.json", + "kind": "native_model_e2e", "component_ids": [ - "dagu" + "qmd", + "codebase-memory-mcp", + "agent-browser" ], - "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", + "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", "limitations": [ - "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", - "Initial native schema failure and earlier Mac success are retained; no savings comparison." - ], - "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" + "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", + "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." + ] }, { "id": "native-codex-session-recovery-20260920", @@ -1670,708 +1879,845 @@ "path": "evidence/receipts/native-codex-session-recovery-20260920.json" }, { - "id": "native-gpu-patch-20260920", + "id": "native-context-memory", + "path": "evidence/receipts/native-context-memory.json", "kind": "native_model_e2e", "component_ids": [ - "llama-cpp" + "codex", + "claude-code", + "context-mode", + "serena", + "rtk" ], - "claim": "One pinned Qwen3.8-27B Q4_K_M local CUDA partial-offload repair passed independent source review and all12 original planner tests on WSL RTX4090.", + "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", "limitations": [ - "One visible fixture, one trial, configured32GPUlayers; exact layer placement count unavailable at native log verbosity.", - "Generation took179.191seconds near the180second cap. This is not an interactive default or frontier-model comparison.", - "Minimum whole-device sampled freeVRAM8223MiB includes other allocations; not an isolated process-peak benchmark.", - "Native model and archives were downloaded and hash-verified; archive attestations verified. CUDA licensing reviewed for local use, not redistribution.", - "No host recovery, concurrent serving, provider billing or whole-task savings qualification." - ], - "path": "evidence/receipts/native-gpu-patch-20260920.json" + "Earlier Serena/RTK run uses its original CLI version.", + "PreCompact was not induced; current Desktop catalog is distinct from child native clients." + ] }, { - "id": "native-claude-session-recovery-20260920", + "id": "native-convergence-review-20260919", + "path": "blueprints/us-equities/convergence-program/review-receipt.json", "kind": "native_model_e2e", "component_ids": [ - "claude-code" + "codex", + "claude-code", + "dagu" ], - "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", + "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", "limitations": [ - "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", - "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", - "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", - "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." - ], - "path": "evidence/receipts/native-claude-session-recovery-20260920.json" + "Models checked packet/report consistency, not original sources or underlying native artifacts.", + "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", + "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", + "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", + "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", + "Usage belongs to this pair only; not whole-goal consumption or causal savings." + ] }, { - "id": "token-native-retained-functional-20260920", - "path": "evidence/receipts/token-native-retained-functional-20260920.json", + "id": "native-corporate-actions-20260920", "kind": "native_cli_e2e", "component_ids": [ - "context-hub", - "headroom", - "mcp-inspector", - "promptfoo", - "worktrunk" + "lean" ], - "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", + "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", "limitations": [ - "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", - "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", - "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", - "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", - "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", - "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." - ] + "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", + "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", + "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", + "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", + "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", + "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." + ], + "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" }, { - "id": "native-jcodemunch-20260920", - "path": "evidence/receipts/native-jcodemunch-20260920.json", + "id": "native-dagu-job-recovery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "jcodemunch-mcp" + "dagu" ], - "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", + "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", "limitations": [ - "Single bounded code-reading task, not a native provider A/B trial.", - "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", - "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", - "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", - "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", - "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", - "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." - ] + "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", + "Initial native schema failure and earlier Mac success are retained; no savings comparison." + ], + "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" }, { - "id": "native-headroom-mcp-20260920", - "path": "evidence/receipts/native-headroom-mcp-20260920.json", + "id": "native-dagu-retry-tests-20260920", "kind": "native_cli_e2e", "component_ids": [ - "headroom" + "dagu" ], - "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", + "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", "limitations": [ - "Owned synthetic acceptance artifacts demonstrate artifact reduction, not lifetime production or provider-token savings", - "MCP summary is not a lossless replacement of the original; its exact full retrieval consumes the original token count", - "Upstream Headroom CLI has no compress subcommand; on-demand compression/retrieval is exposed through MCP or SDK", - "No automatic agent-traffic interception was configured", - "Global native upstream savings ledger remains0; isolated fixture ledger is not merged into it", - "No new provider task or automatic native-client traffic interception is established by this direct MCP fixture." - ] + "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", + "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", + "No broker/provider operations or token savings were measured.", + "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." + ], + "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" }, { - "id": "native-token-focus-clients-20260920", - "path": "evidence/receipts/native-token-focus-clients-20260920.json", - "kind": "native_model_e2e", + "id": "native-dashboard-access-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "jcodemunch-mcp" + "dagu", + "qdrant", + "agentsview", + "grafana", + "prometheus", + "ntfy", + "agent-browser", + "omniroute" ], - "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", + "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", "limitations": [ - "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", - "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", - "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", - "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", - "Raw private prompts, client streams, account identifiers and host paths are not published." - ] + "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", + "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", + "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", + "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", + "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", + "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", + "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." + ], + "path": "evidence/receipts/native-dashboard-access-20260921.json" }, { - "id": "native-sandbox-network-20260920", - "path": "evidence/receipts/native-sandbox-network-20260920.json", + "id": "native-dashboard-data-20260921", "kind": "native_cli_e2e", "component_ids": [ - "sandbox-runtime" + "ai-memory", + "socraticode", + "qmd", + "qdrant", + "agentsview", + "grafana", + "loki", + "rtk", + "context-mode", + "headroom", + "jcodemunch-mcp", + "promptfoo", + "serena", + "systemd" ], - "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", + "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", "limitations": [ - "HTTP proxy path tested on this Linux/WSL host", - "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", - "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", - "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." - ] + "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", + "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", + "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", + "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", + "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", + "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", + "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", + "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", + "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." + ], + "path": "evidence/receipts/native-dashboard-data-20260921.json" }, { - "id": "native-claude-hud-interactive-20260920", - "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", - "kind": "compatibility_attempt", + "id": "native-edgartools-catalyst-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "claude-hud" + "edgartools" ], - "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", + "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", "limitations": [ - "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", - "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", - "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." - ] + "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", + "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", + "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", + "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", + "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", + "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", + "Native text/byte counts are not provider token savings.", + "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." + ], + "path": "blueprints/us-equities/catalyst-provenance/receipt.json" }, { - "id": "native-application-delivery-20260920", + "id": "native-exact-nanosecond-replay-20260919", + "path": "blueprints/us-equities/nanosecond-replay/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "nextjs", - "react", - "fastapi", - "postgresql" - ], - "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", - "limitations": [ - "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", - "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", - "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", - "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", - "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", - "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", - "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", - "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." + "duckdb", + "pandas" ], - "path": "blueprints/convergence-practice/application-delivery/receipt.json" + "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", + "limitations": [ + "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", + "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", + "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", + "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", + "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", + "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", + "No broker, trading strategy, actual feed or net token-saving acceptance." + ] }, { - "id": "mac-native-document-ingestion-20260920", - "kind": "native_cli_e2e", + "id": "native-gpu-patch-20260920", + "kind": "native_model_e2e", "component_ids": [ - "poppler" + "llama-cpp" ], - "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", + "claim": "One pinned Qwen3.8-27B Q4_K_M local CUDA partial-offload repair passed independent source review and all12 original planner tests on WSL RTX4090.", "limitations": [ - "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", - "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", - "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", - "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", - "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." + "One visible fixture, one trial, configured32GPUlayers; exact layer placement count unavailable at native log verbosity.", + "Generation took179.191seconds near the180second cap. This is not an interactive default or frontier-model comparison.", + "Minimum whole-device sampled freeVRAM8223MiB includes other allocations; not an isolated process-peak benchmark.", + "Native model and archives were downloaded and hash-verified; archive attestations verified. CUDA licensing reviewed for local use, not redistribution.", + "No host recovery, concurrent serving, provider billing or whole-task savings qualification." ], - "path": "blueprints/convergence-practice/document-ingestion/receipt.json" + "path": "evidence/receipts/native-gpu-patch-20260920.json" }, { - "id": "native-wsl-restic-synthetic-20260920", + "id": "native-grand-dashboard-20260919", + "path": "observability/grand-dashboard/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "grafana", + "loki", + "prometheus", + "dagu" ], - "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", + "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", "limitations": [ - "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", - "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", - "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", - "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", - "No token, storage-efficiency or backup performance claim.", - "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", - "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", - "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", - "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", - "Ten offline oracle/guard tests are distinct from the actual native restic commands." - ], - "path": "blueprints/convergence-practice/wsl-restore/receipt.json" + "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", + "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", + "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", + "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", + "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", + "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", + "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", + "Recorded worker/decision state is not a live process registry.", + "No broker execution, exact-once accounting, universal coverage or net token savings.", + "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." + ] }, { - "id": "mac-native-container-storage-20260920", - "kind": "native_cli_e2e", + "id": "native-harness-defaults-20260920", + "kind": "artifact_measurement", "component_ids": [ - "apple-container", - "postgresql" + "codex", + "claude-code" ], - "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", + "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", "limitations": [ - "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", - "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", - "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", - "Images remain cached; only owned empty failed container, test database container and test volume were removed.", - "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." + "Saved instruction bytes are not proof that every future model decision will follow them.", + "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", + "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." ], - "path": "blueprints/convergence-practice/container-storage/receipt.json" + "path": "evidence/receipts/native-harness-defaults-20260920.json" }, { - "id": "mac-native-application-migration-20260920", + "id": "native-headroom-mcp-20260920", + "path": "evidence/receipts/native-headroom-mcp-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "fastapi", - "postgresql" + "headroom" ], - "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", + "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", "limitations": [ - "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", - "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", - "No model calls; whole-task provider usage unknown." - ], - "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" + "Owned synthetic acceptance artifacts demonstrate artifact reduction, not lifetime production or provider-token savings", + "MCP summary is not a lossless replacement of the original; its exact full retrieval consumes the original token count", + "Upstream Headroom CLI has no compress subcommand; on-demand compression/retrieval is exposed through MCP or SDK", + "No automatic agent-traffic interception was configured", + "Global native upstream savings ledger remains0; isolated fixture ledger is not merged into it", + "No new provider task or automatic native-client traffic interception is established by this direct MCP fixture." + ] }, { - "id": "velanext-native-quality-tools-20260920", + "id": "native-historical-leverage-stress-20260919", + "path": "blueprints/us-equities/historical-simulation/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "gitleaks", - "worktrunk" + "lean" ], - "claim": "On VelaNext, exact gitleaks8.30.1 detected one inert test credential and accepted the clean control with redacted reports. Worktrunk0.78.0 created/listed/removed owned worktrees while refusing dirty removal without loss.", + "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", "limitations": [ - "Isolated synthetic Linux/WSL fixtures; no arbitrary repository safety/security certification or Mac acceptance inferred.", - "Original executed runner and attempt retained. Second attempt follows exact-pin/archive/binary/version binding and timeout-evidence hardening;20 offline guards passed on Mac and WSL.", - "GitHub attestation endpoints returned404. Publisher checksum, GitHub archive digest and exact pinned license checks passed; no attestation claim.", - "No accounts, shared services, project hooks or model calls changed by qualification. Global promotion, when performed, is separate host deployment evidence.", - "Whole coordinator/worker provider usage is unknown; no token or monetary savings claim." - ], - "path": "blueprints/convergence-practice/wsl-native-tools/receipt.json" + "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", + "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", + "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", + "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", + "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", + "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", + "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", + "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", + "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", + "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", + "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", + "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", + "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", + "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", + "No paper/live orders or automatic promotion." + ] }, { - "id": "mac-memory-patch-20260920", - "path": "evidence/receipts/mac-memory-patch-20260920.json", + "id": "native-jcodemunch-20260920", + "path": "evidence/receipts/native-jcodemunch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "jcodemunch-mcp" ], - "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", + "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", "limitations": [ - "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", - "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", - "No provider or whole-task token savings measurement." + "Single bounded code-reading task, not a native provider A/B trial.", + "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", + "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", + "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", + "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", + "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", + "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." ] }, { - "path": "evidence/receipts/wsl-application-20260920.json", - "id": "wsl-application-20260920", + "path": "blueprints/us-equities/execution-realism/receipt.json", + "id": "native-lean-execution-sensitivity-20260919", "kind": "native_cli_e2e", "component_ids": [ - "nextjs", - "react", - "fastapi", - "postgresql", - "playwright-test" + "lean" ], - "claim": "Clean isolated WSL runtime restored the same locked application, passed12 API checks, migration reversal, schema/types, production build and real browser flow; exact row/history persisted after PostgreSQL/API/Next restart.", + "claim": "Native LEAN completed three fixed-order historical simulations with distinct upstream fee/slippage assumptions; serialized fill cash reconciles to native rounded summaries and all mounted engine/data input hashes remained unchanged.", "limitations": [ - "Synthetic loopback application; no production deployment, user authentication or another-host acceptance.", - "Official exact Ubuntu packages were extracted task-only with signed metadata/SHA verification; no package scripts or system database changes.", - "Historical application inputs remain frozen; Makelevel/TIME_WAIT recipe fixes were qualified separately with five real make/socket tests on Mac and WSL.", - "No model calls by application commands; whole-task usage remains unknown." + "Exact arithmetic over serialized native event values; exported five-decimal fill prices and cent-rounded summaries do not expose all internal precision.", + "Illustrative fees and slippage are assumptions, not calibrated market or Alpaca execution observations.", + "Full-quantity market fills remain assumed; participation, partial fills, impact, latency, queueing, cancellation and broker reconciliation remain unaccepted.", + "Bundled five-day data do not establish PIT/corporate-action/universe quality or investment returns.", + "The normal dotnet build/restore route timed out twice; only the installed native C# compiler route is accepted.", + "Mounted input hashes do not prove every file was read; successful request logs list 13 paths plus possible separately read metadata.", + "No broker connection, account entitlement, deployment, strategy promotion, provider usage or token saving is established." ] }, { - "id": "wsl-transport-recovery-20260920", + "id": "native-lifecycle-sample-20260920", "kind": "native_cli_e2e", "component_ids": [ - "dagu" + "edgartools", + "duckdb" ], - "claim": "An owned nonmultiplexed SSH client was terminated; fresh reconnect observed the same native Dagu job running with one unchanged checkpoint, then native completion without stop or retry.", + "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", "limitations": [ - "Controlled client termination and a deliberately detached deterministic job; not a real network outage, host restart, model-session recovery or distributed exactly-once guarantee.", - "First harness attempt misclassified native SSH exit255 and stopped the job; its narrower same-run finalizer retry is retained separately from corrected survival acceptance.", - "Original12-test oracle passed before and after; observed owned processes/listener retired; whole-task provider usage remains unknown." + "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", + "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", + "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", + "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", + "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", + "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." ], - "path": "evidence/receipts/wsl-transport-recovery-20260920.json" + "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" }, { - "id": "wsl-document-ingestion-20260920", + "id": "native-linux-zizmor-20260920", + "path": "evidence/receipts/native-linux-zizmor-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "poppler" + "zizmor" ], - "claim": "Native Poppler26.09.0 built in a clean WSL prefix and passed the frozen3-page,24-cell,8-positive/4-absent document protocol; four extraction/retrieval artifacts exactly match Mac output.", + "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", "limitations": [ - "Designed born-digital Latin fixture with explicit table geometry; no OCR, inferred layout, general semantic retrieval or broad upstream corpus qualification.", - "Exact source signature, signed package extraction and native dependency checks preceded execution; failed first public-key lookup remains recorded.", - "No global package/service/client change or model/GPU invocation; whole-task provider usage unknown." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", + "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", + "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", + "No provider task was run and zizmor supplies no verified lifetime token-savings counter." ], - "path": "evidence/receipts/wsl-document-ingestion-20260920.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "wsl-memory-maintenance-20260920", + "id": "native-memory", + "path": "evidence/receipts/native-memory.json", + "kind": "native_model_e2e", + "component_ids": [ + "ai-memory", + "codex", + "claude-code" + ], + "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", + "limitations": [ + "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", + "No historical archive backfill or LLM/embedding consolidation pipeline enabled." + ] + }, + { + "id": "native-memory-lifecycle-20260919", + "path": "blueprints/us-equities/memory-lifecycle/receipt.json", "kind": "native_cli_e2e", "component_ids": [ "ai-memory" ], - "claim": "Official Linux ai-memory2.3.2 passed65 synthetic native checks across exact scope, Unicode/reserved paths, restart, upstream HTTP backup and native restore; four owned processes exited0.", + "claim": "A disposable, network-isolated native ai-memory fixture passed 23 lifecycle/routing checks across 31 MCP calls; exact-path TTL behavior and explicit sweep limits retained.", "limitations": [ - "Isolated fresh synthetic store and39 MCP tool calls; not production activation, native-client integration or prior-version migration.", - "Automatic capture, embeddings, generation, watcher and autowire disabled; no OS-confinement claim.", - "Native backup/restore both exit0; complete private logs retained, fixture model calls0 and whole-task provider usage unknown." - ], - "path": "evidence/receipts/wsl-memory-maintenance-20260920.json" + "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", + "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", + "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", + "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", + "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", + "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", + "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", + "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", + "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", + "Isolated fixture, not the live memory store or all client hooks.", + "TTL is default-search visibility until sweep, not immediate access revocation.", + "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." + ] }, { - "id": "token-practice-confirmation-20260920", - "kind": "historical_inventory", + "id": "native-memory-rag-alignment-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "context-mode", - "headroom", - "jcodemunch-mcp" + "ai-memory", + "socraticode", + "qdrant", + "qmd", + "vllm", + "grafana", + "loki" ], - "claim": "Dated direct upstream counter outputs, current release metadata, independent artifact rechecks and reconciled recorded monitoring support explicit baseline selection without claiming causal lifetime provider savings.", + "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", "limitations": [ - "Historical source-host observations only; not live acceptance on the reader's PC.", - "Upstream retained-history estimates, exact artifact counts and provider consumption are different quantities and must not be summed.", - "Artifact and client rechecks inspected existing retained inputs and streams; no new model task or reinstall was performed in this confirmation.", - "Public native fields are allowlisted unchanged from private outputs; host paths, process identifiers and account details are omitted.", - "Latest monitoring queries returned no matching observations in their six-hour window; this does not mean zero usage or newly confirmed savings.", - "Latest-release equality was checked only for the four selected token tools; accepted specialist compatibility pins are separate." + "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", + "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", + "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", + "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", + "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", + "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", + "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." ], - "path": "evidence/receipts/token-practice-confirmation-20260920.json" + "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" }, { - "id": "native-token-clean-prefix-20260920", + "id": "native-nautilus-ci-20260920", "kind": "native_cli_e2e", "component_ids": [ - "headroom", - "jcodemunch-mcp" + "nautilus-trader" ], - "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", + "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", "limitations": [ - "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", - "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", - "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", - "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", - "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", - "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", - "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", - "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." + "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", + "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", + "Network namespace and available-interface observations are not measured counts of attempted external transports." ], - "path": "evidence/receipts/native-token-clean-prefix-20260920.json" + "path": "evidence/receipts/native-nautilus-ci-20260920.json" }, { - "id": "current-session-observation-20260920", + "id": "native-nautilus-v2-20260920", "kind": "native_cli_e2e", "component_ids": [ - "agentsview", - "ai-memory", - "alertmanager", - "ccusage", - "claude-hud", - "context-mode", - "grafana", - "headroom", - "jcodemunch-mcp", - "loki", - "mcporter", - "ntfy", - "opentelemetry-collector-contrib", - "otel-tui", - "prometheus", - "rtk", - "serena", - "socraticode" + "nautilus-trader" ], - "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", + "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", "limitations": [ - "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", - "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", - "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", - "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", - "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", - "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", - "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", - "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." + "Release candidate, not production/live-capital acceptance.", + "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", + "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", + "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", + "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", + "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", + "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." ], - "path": "evidence/receipts/current-session-observation-20260920.json" + "path": "evidence/receipts/native-nautilus-v2-20260920.json" }, { - "id": "foundation-native-20260920", + "id": "native-observability", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qmd", - "qdrant", - "vllm", - "socraticode", - "serena", - "context-mode", - "jcodemunch-mcp", - "rtk", - "headroom", - "repomix", - "toon", "codex", "claude-code", + "agent-browser", "opentelemetry-collector-contrib", "prometheus", "loki", - "omniroute" + "grafana", + "alertmanager", + "ntfy" ], - "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", + "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", "limitations": [ - "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", - "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", - "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", - "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", - "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", - "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", - "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", - "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", - "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." + "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", + "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", + "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", + "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", + "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", + "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." ], - "path": "evidence/receipts/foundation-native-20260920.json" + "path": "observability/receipt.json" }, { - "id": "codex-session-environment-20260920", - "kind": "native_cli_e2e", + "id": "native-observability-followup", + "kind": "native_model_e2e", "component_ids": [ "codex", "context-mode", - "jcodemunch-mcp", - "serena", "ai-memory", - "socraticode" + "socraticode", + "agent-browser", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "grafana" ], - "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", + "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", "limitations": [ - "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", - "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", - "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", - "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", - "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", - "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", - "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." + "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", + "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", + "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", + "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", + "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", + "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." ], - "path": "evidence/receipts/codex-session-environment-20260920.json" + "path": "observability/followup-receipt.json" }, { - "id": "codex-desktop-live-20260920", + "id": "native-offhost-app-state-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "context-mode", - "jcodemunch-mcp", - "serena", "ai-memory", - "socraticode", - "rtk", - "headroom", - "qmd", - "loki", - "prometheus" + "qdrant", + "restic" ], - "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", + "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", "limitations": [ - "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", - "Tools without native savings ledgers remain unavailable, not zero.", - "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", - "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", - "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", - "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", - "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", - "No fresh Prometheus turn sample in the selected window; no three-way observation join." + "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", + "Sequential native application snapshots do not establish an atomic cross-application transaction.", + "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", + "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", + "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", + "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", + "No model/provider/broker calls or causal token/cost savings measurement." ], - "path": "evidence/receipts/codex-desktop-live-20260920.json" + "path": "evidence/receipts/native-offhost-app-state-20260920.json" }, { - "id": "native-session-defaults-20260920", + "id": "native-offhost-restic-20260920", "kind": "native_cli_e2e", + "component_ids": [ + "restic" + ], + "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", + "limitations": [ + "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", + "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", + "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", + "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", + "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", + "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." + ], + "path": "evidence/receipts/native-offhost-restic-20260920.json" + }, + { + "path": "adoption/paired/receipt.json", + "id": "native-paired-adoption-20260919", + "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", - "ai-memory", - "context-mode", - "rtk", - "qmd" + "duckdb", + "dagu", + "lean", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", + "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", "limitations": [ - "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", - "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", - "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", - "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", - "Claude startup events join four starts to four completions but do not identify individual configured commands.", - "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", - "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." + "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", + "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", + "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", + "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", + "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", + "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", + "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", + "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." + ] + }, + { + "path": "blueprints/us-equities/point-in-time/receipt.json", + "id": "native-point-in-time-contract-20260919", + "kind": "native_cli_e2e", + "component_ids": [ + "duckdb" ], - "path": "evidence/receipts/native-session-defaults-20260920.json" + "claim": "DuckDB 1.5.5 materialized and selected a synthetic temporal snapshot; late revisions, universe state, feed/adjustment scope and pinned snapshot integrity were exercised through native Python SDK/SQL commands.", + "limitations": [ + "Synthetic observations only; no entitled or accepted market dataset, SEC download, vendor API, model or broker call occurred.", + "Availability timestamps and evidence references are declarations, not independently authenticated vendor publication evidence.", + "Local snapshot ingestion time is separate from source publication and original capture time.", + "Scope is realized observations and effective universe state; it does not model every corporate action, event forecast, symbol mapping or delisting history.", + "Hash checks require the caller to retain a trusted manifest digest independently; local file permissions are not immutable storage or off-host recovery." + ] }, { - "id": "native-token-ci-local-20260920", + "id": "native-progress-capacity-20260921", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "loki", + "dagu" ], - "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", + "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", + "No client restart, service restart or physical reboot was performed or verified.", + "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", + "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", + "No live provider inference, account change, new dependency or upstream version change for this repair." ], - "path": "evidence/receipts/native-token-ci-local-20260920.json" + "path": "observability/grand-dashboard/capacity-recovery-20260921.json" }, { - "id": "native-token-ci-github-20260920", + "id": "native-quality-defaults-20260920", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "codex", + "claude-code" ], - "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", + "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", + "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", + "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", + "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", + "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." ], - "path": "evidence/receipts/native-token-ci-github-20260920.json" + "path": "evidence/receipts/native-quality-defaults-20260920.json" }, { - "id": "native-tavily-cli-20260920", - "kind": "native_cli_e2e", + "id": "native-rag", + "path": "evidence/receipts/native-rag.json", + "kind": "native_model_e2e", "component_ids": [ - "tavily-cli", "codex", - "claude-code" + "claude-code", + "socraticode", + "qdrant", + "vllm", + "huggingface-hub-native" ], - "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", + "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", "limitations": [ - "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", - "Claude global skill listing is not a Claude model-turn execution of every skill.", - "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", - "Search/Extract results do not independently establish their source claims or a complete research deliverable.", - "No native lifetime or exact provider-token savings counter is established.", - "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." + "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", + "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." + ] + }, + { + "id": "native-research-efficiency-20260920", + "kind": "native_model_e2e", + "component_ids": [ + "codex", + "claude-code", + "qmd" ], - "path": "evidence/receipts/native-tavily-cli-20260920.json" + "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", + "limitations": [ + "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", + "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", + "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", + "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", + "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", + "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", + "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", + "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", + "Local supervision does not prove provider-side cancellation; no run timed out.", + "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." + ], + "path": "blueprints/us-equities/research-efficiency/native-receipt.json" }, { - "id": "native-nautilus-v2-20260920", - "kind": "native_cli_e2e", + "id": "native-research-runtime-20260919", + "kind": "native_model_e2e", "component_ids": [ - "nautilus-trader" + "claude-code", + "dagu", + "lean", + "duckdb", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", + "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", "limitations": [ - "Release candidate, not production/live-capital acceptance.", - "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", - "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", - "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", - "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", - "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", - "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." + "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", + "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", + "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", + "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", + "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", + "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", + "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", + "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." ], - "path": "evidence/receipts/native-nautilus-v2-20260920.json" + "path": "blueprints/us-equities/research-runtime/receipt.json" }, { - "id": "native-harness-defaults-20260920", - "kind": "artifact_measurement", + "id": "native-returned-results-20260921", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code" + "claude-code", + "rtk", + "context-mode", + "qmd", + "serena", + "ai-memory", + "socraticode", + "qdrant", + "agentsview", + "grafana", + "loki", + "prometheus", + "dagu", + "ntfy", + "omniroute", + "agent-browser", + "promptfoo", + "headroom", + "jcodemunch-mcp" ], - "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", + "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", "limitations": [ - "Saved instruction bytes are not proof that every future model decision will follow them.", - "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", - "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." + "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", + "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", + "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", + "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", + "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", + "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", + "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", + "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", + "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." ], - "path": "evidence/receipts/native-harness-defaults-20260920.json" + "path": "evidence/receipts/native-returned-results-20260921.json" }, { - "id": "native-worker-recovery-20260920", + "id": "native-runtime-role-resolution-20260930", "kind": "native_model_e2e", "component_ids": [ + "omniroute", "claude-code" ], - "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", + "claim": "One host installed separately versioned OpenHands CLI1.16.0/SDK1.50.1 and DeepAgents0.7.21 candidates through native supported interfaces. CLI108 and final SDK184 unchanged upstream tests passed; DeepAgents361 passed with1 expected failure in its separate upstream-lock environment. Actual OmniRoute Sol-Max requests passed one OpenHands native LLM exact-output round-trip and bounded DeepAgents selected-skill/single-specialist research, saved-context repair and fresh-process SQLite continuation. All results are scoped, not a universal framework winner or global default promotion.", "limitations": [ - "One synthetic local fixture and one physical WSL host, not arbitrary application state.", - "Actual native child identities and paths remain private; hashes bind retained streams.", - "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", - "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", - "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", - "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", - "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." + "CLI SDK1.21 Jinja cache hard-codes real user home; strict cache isolation remains held.", + "Final SDK native configuration/tests exercise skills/plugins/MCP/condenser interfaces; production MCP, full Conversation/condenser/provider execution and optional extensions are not qualified by them.", + "Original DeepAgents24-step attempt failed; one changed32-step saved-context repair passed. No arbitrary interrupted-tool replay, OS confinement or comparative winner is qualified.", + "Complete provider billing/backend identity and whole-task token savings remain unknown; cached/reasoning counters are subsets.", + "Native Claude Opus/Max peer timed out180s exit124 without a verdict; later peer turns reached account usage limits. Completed earlier reviews are preserved; no new acknowledgement/approval is claimed.", + "Original full output stays private with exact hashes; public excerpts replace private paths and omit raw conversations, marker values, credentials and flow identifiers.", + "Exact executed sources are archived. Initial whitespace/comment cleanup had identical ASTs; the current worker subsequently adopts native secret-aware serialization after CodeQL, verified by native fixture and fresh saved-state checks. No new provider run is claimed." ], - "path": "evidence/receipts/native-worker-recovery-20260920.json" + "path": "evidence/receipts/native-runtime-role-resolution-20260930.json" }, { - "id": "foundation-catalog-ui-20260920", - "kind": "artifact_measurement", + "id": "native-sandbox-network-20260920", + "path": "evidence/receipts/native-sandbox-network-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "agent-browser" + "sandbox-runtime" ], - "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", + "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", "limitations": [ - "Source pin/publication URLs pending parent final source commit and regeneration.", - "No provider/broker execution or broad regression rerun performed.", - "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." - ], - "path": "evidence/receipts/foundation-catalog-ui-20260920.json" + "HTTP proxy path tested on this Linux/WSL host", + "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", + "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", + "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." + ] }, { - "id": "native-worker-containment-20260920", + "id": "native-sdk-acceptance-20261002", "kind": "native_cli_e2e", "component_ids": [ - "systemd", + "codex", "claude-code" ], - "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", + "claim": "Actual Claude SDK task failed its independent oracle despite successful protocol completion; a separate informed Codex SDK repair passed all four unchanged cases. Unchanged Claude and OpenHands default source suites passed within recorded skip, warning and environment limits.", "limitations": [ - "Deterministic cgroup proof is not successful native child crash/resume acceptance.", - "Earlier same-child continuation still required explicit direct descendant cleanup.", - "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." + "Two different model tasks and source-test suites have different evidence scopes; this is not a model-quality or token-efficiency comparison, global SOTA winner claim or full foundation closure.", + "Claude original useful-task acceptance remains FAILED. Codex passes only the four-case informed repair; its requested model/effort are bound, but resolved model/provider identity and billing cost were not returned.", + "Coordinator observed invocation, native exits and process samples. Independent reviewers checked retained source/artifact/outcome bindings without rerunning; hash equality alone is not execution provenance.", + "Public attachments are declared projections, exact resulting candidates and selected native output. Complete permitted streams remain private; raw conversations, auth/session metadata and personal paths are not published.", + "Claude default source suite has six skips, with five collection identities inferred from source/dependencies. OpenHands retains seven optional ToolShield skips, 12 xfails, 83 warnings, default stress/ACP-live exclusions and a preserved failed environment attempt; exact fetched model-map bytes were not retained.", + "OpenHands is supplemental source-test evidence, not a new adopted stack component. Its FACTS provider task remains unrun in this lane; Codex default source-suite execution remains with its separate owner.", + "Researcher/reviewer roles, resume/recovery, selected MCP, generation permission-negative tests, complete target lifecycle and target token routing remain open. Exact before/after process-name samples do not prove complete descendant cleanup.", + "Historical Claude task binding is CLI2.1.287. Current release2.1.288 reconciliation remains with the configuration owner and cannot retroactively change these captures." ], - "path": "evidence/receipts/native-worker-containment-20260920.json" + "path": "evidence/receipts/native-sdk-acceptance-20261002.json" }, { - "id": "native-nautilus-ci-20260920", + "id": "native-sdk-role-mcp-followup-20261002", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "claude-code" ], - "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", + "claim": "Retained Claude SDK evidence supports minimal inline MCP callback/terminal assertions with synthetic controls and one native deny-rule pair with a disarmed-rule control; the reviewer case completed without a discriminating control, and the researcher case is controlled for missing findings only. Prior researcher failures remain FAIL and complete role qualification remains incomplete.", "limitations": [ - "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", - "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", - "Network namespace and available-interface observations are not measured counts of attempted external transports." + "Retained independent case ACCEPT verdicts are observations, not qualified role acceptance. Reviewer negative grading has no discriminating control; the original researcher FAIL controls missing findings only, not wrong facts/citations or attribution.", + "Synthetic MCP0/1/1 controls discriminate callback presence and terminal success only. The separate native armed0/disarmed1 pair supports one actual deny-rule observation; definition visibility unknown, no can_use_tool callback configured.", + "Earlier query timestamps unknown; deny-pair UTC intervals captured. Counters retain separate scopes; interrupted whole-query usage/cost unknown. No billed-cost or efficiency claim.", + "Selected QMD/Serena, recovery, containment, complete lifecycle and whole-host qualification remain open; process samples are bounded and staging is not managed-upgrade acceptance.", + "Sanitized projections only; private original hashes, failed cases and corrections retained. The projection step ran no new provider/test/control execution and made no shared edits; registration in manifests/evidence.json is separate from that step." ], - "path": "evidence/receipts/native-nautilus-ci-20260920.json" + "path": "evidence/receipts/native-sdk-role-mcp-followup-20261002.json" }, { - "id": "native-catalog-retrieval-20260920", + "id": "native-sec-access-resolution-20260919", "kind": "native_cli_e2e", "component_ids": [ - "qmd" + "edgartools" ], - "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", + "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", "limitations": [ - "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", - "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", - "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", - "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." + "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", + "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", + "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", + "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", + "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", + "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", + "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", + "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." ], - "path": "evidence/receipts/native-catalog-retrieval-20260920.json" + "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" }, { - "id": "native-tavily-session-20260920", + "id": "native-sec-new-host-20260924", "kind": "native_cli_e2e", "component_ids": [ - "tavily-cli" + "edgartools" ], - "claim": "The current Desktop task received eight Tavily skill entries, loaded the Search/Extract skills, ran both upstream commands and extracted the official IBKR adapter prerequisites.", + "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", "limitations": [ - "Host-supplied active-task skill discovery is distinct from the prior fresh native-process probes. Only Search and Extract were exercised in this task.", - "The broad search returned three official IBKR sources but missed the intended Nautilus adapter guide; direct known-URL extraction supplied the needed evidence.", - "Extracted current documentation is a source check, not an executed broker connection or version-pinned adapter behavior.", - "No provider usage, per-skill performance comparison or lifetime token-saving counter is claimed." + "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", + "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", + "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", + "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", + "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", + "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", + "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." ], - "path": "evidence/receipts/native-tavily-session-20260920.json" + "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", + "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" }, { - "id": "native-worker-cgroup-20260920", - "kind": "native_model_e2e", + "id": "native-security-identity-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "systemd" + "alpaca-py", + "duckdb" ], - "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", + "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", "limitations": [ - "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", - "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", - "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", - "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", - "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." + "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", + "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", + "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", + "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", + "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", + "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", + "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", + "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." ], - "path": "evidence/receipts/native-worker-cgroup-20260920.json" + "path": "blueprints/us-equities/identity-readiness/native-receipt.json" }, { "id": "native-service-reboot-20260920", @@ -2393,888 +2739,698 @@ "path": "evidence/receipts/native-service-reboot-20260920.json" }, { - "id": "native-offhost-app-state-20260920", + "id": "native-session-defaults-20260920", "kind": "native_cli_e2e", "component_ids": [ + "codex", + "claude-code", "ai-memory", - "qdrant", - "restic" + "context-mode", + "rtk", + "qmd" ], - "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", + "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", "limitations": [ - "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", - "Sequential native application snapshots do not establish an atomic cross-application transaction.", - "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", - "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", - "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", - "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", - "No model/provider/broker calls or causal token/cost savings measurement." + "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", + "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", + "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", + "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", + "Claude startup events join four starts to four completions but do not identify individual configured commands.", + "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", + "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." ], - "path": "evidence/receipts/native-offhost-app-state-20260920.json" + "path": "evidence/receipts/native-session-defaults-20260920.json" }, { - "id": "native-ultracode-20260921", + "id": "native-simulation-research-dashboard-20260919", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "context-mode" + "grafana", + "loki" ], - "claim": "Claude Code 2.1.278 executed a Fable 5.1/xhigh native Workflow with Sonnet 5/medium and Opus 5/high workers returning results. The same coordinator resumed at high effort and completed a native same-host message round trip, source verification and one-shot idle notification with a separate Sonnet session. Native agent and restored workflow dashboards rendered the completed work.", + "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", "limitations": [ - "Read-only task contracts are not OS isolation; no writing-worker, mid-run cancellation, cross-host or reboot qualification.", - "Initial worker classifications were inaccurate and corrected after independent source review; both worker outputs exceeded their requested word contracts and one schema retry occurred.", - "Native worker identity was observed in child messages; choices are not a comparative quality or token-cost benchmark.", - "Same-host messaging and idle notification only; permission-mismatch behavior, delivery failures, retries and persistent scheduling were not tested.", - "Updated maintenance configuration is not proof of its next timed execution; no new recurring Claude loop was created.", - "Two native success events share cumulative model usage; no causal savings or exhaustive provider-accounting claim.", - "Native PTY rendering and process observations were recorded by the coordinator; message and workflow traces received independent read-only audit. Private raw logs and identifiers remain outside Git." + "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", + "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", + "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", + "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", + "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", + "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", + "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." ], - "path": "evidence/receipts/native-ultracode-20260921.json" + "path": "blueprints/us-equities/simulation-research/receipt.json" }, { - "id": "native-dashboard-access-20260921", + "id": "native-tavily-cli-20260920", "kind": "native_cli_e2e", "component_ids": [ - "dagu", - "qdrant", - "agentsview", - "grafana", - "prometheus", - "ntfy", - "agent-browser", - "omniroute" + "tavily-cli", + "codex", + "claude-code" ], - "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", + "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", "limitations": [ - "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", - "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", - "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", - "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", - "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", - "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", - "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." + "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", + "Claude global skill listing is not a Claude model-turn execution of every skill.", + "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", + "Search/Extract results do not independently establish their source claims or a complete research deliverable.", + "No native lifetime or exact provider-token savings counter is established.", + "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." ], - "path": "evidence/receipts/native-dashboard-access-20260921.json" + "path": "evidence/receipts/native-tavily-cli-20260920.json" }, { - "id": "full-stack-convergence-20260921", + "id": "native-tavily-session-20260920", "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "ccusage", - "claude-code", - "codex", - "context-mode", - "dagu", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "loki", - "omniroute", - "openresearch", - "prometheus", - "qdrant", - "qmd", - "repomix", - "rtk", - "serena", - "socraticode", - "toon", - "vllm", - "worktrunk" + "tavily-cli" ], - "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", + "claim": "The current Desktop task received eight Tavily skill entries, loaded the Search/Extract skills, ran both upstream commands and extracted the official IBKR adapter prerequisites.", "limitations": [ - "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", - "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", - "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", - "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", - "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", - "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", - "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", - "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." + "Host-supplied active-task skill discovery is distinct from the prior fresh native-process probes. Only Search and Extract were exercised in this task.", + "The broad search returned three official IBKR sources but missed the intended Nautilus adapter guide; direct known-URL extraction supplied the needed evidence.", + "Extracted current documentation is a source check, not an executed broker connection or version-pinned adapter behavior.", + "No provider usage, per-skill performance comparison or lifetime token-saving counter is claimed." ], - "path": "evidence/receipts/full-stack-convergence-20260921.json" + "path": "evidence/receipts/native-tavily-session-20260920.json" }, { - "id": "memory-landscape-20260921", + "id": "native-terminal-profiles-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", "codex", - "claude-code" + "claude-code", + "qdrant", + "vllm" ], - "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", + "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", "limitations": [ - "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", - "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", - "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", - "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", - "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", - "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", - "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", - "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", - "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." + "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", + "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", + "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", + "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", + "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." ], - "path": "evidence/receipts/memory-landscape-20260921.json" + "path": "evidence/receipts/native-terminal-profiles-20260920.json" }, { - "id": "memory-landscape-lifecycle-20260921", + "id": "native-token-ci-github-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qdrant", - "vllm", - "serena", + "rtk", "qmd", - "codex", - "claude-code" + "repomix", + "toon" ], - "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", + "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", "limitations": [ - "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", - "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", - "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", - "Exact memory session/lifetime savings are not returned and remain null.", - "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" ], - "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" + "path": "evidence/receipts/native-token-ci-github-20260920.json" }, { - "id": "alpaca-paper-e2e-20260921", + "id": "native-token-ci-local-20260920", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "claude-code" + "rtk", + "qmd", + "repomix", + "toon" ], - "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", + "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", "limitations": [ - "One operational smoke trial, not profitable strategy or continuous trading acceptance.", - "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", - "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" ], - "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" + "path": "evidence/receipts/native-token-ci-local-20260920.json" }, { - "id": "nautilus-equity-replay-20260921", + "id": "native-token-clean-prefix-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "headroom", + "jcodemunch-mcp" ], - "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", + "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", "limitations": [ - "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", - "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", - "SPY/LEAN corporate-action parity and historical universe availability remain separate." + "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", + "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", + "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", + "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", + "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", + "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", + "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", + "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." ], - "path": "evidence/receipts/nautilus-equity-replay-20260921.json" + "path": "evidence/receipts/native-token-clean-prefix-20260920.json" }, { - "id": "foundation-convergence-20260921", + "id": "native-token-focus-clients-20260920", + "path": "evidence/receipts/native-token-focus-clients-20260920.json", "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", "context-mode", - "rtk", - "headroom", - "toon" - ], - "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", - "limitations": [ - "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", - "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", - "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", - "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", - "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." - ], - "path": "evidence/receipts/foundation-convergence-20260921.json" - }, - { - "id": "native-progress-capacity-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "loki", - "dagu" + "jcodemunch-mcp" ], - "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", + "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", "limitations": [ - "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", - "No client restart, service restart or physical reboot was performed or verified.", - "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", - "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", - "No live provider inference, account change, new dependency or upstream version change for this repair." - ], - "path": "observability/grand-dashboard/capacity-recovery-20260921.json" + "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", + "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", + "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", + "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", + "Raw private prompts, client streams, account identifiers and host paths are not published." + ] }, { - "id": "claude-upstream-checks-20260921", - "kind": "native_cli_e2e", + "id": "native-token-stack-final-20260920", + "kind": "native_model_e2e", "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "ast-grep", - "beads", - "ccusage", "claude-code", "codex", - "codex-for-claude", "context-mode", - "dagu", - "difftastic", - "gitleaks", - "grafana", - "headroom", "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcporter", - "nautilus-trader", - "openresearch", - "opentelemetry-collector-contrib", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", + "headroom", "rtk", - "serena", - "socraticode", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "opentelemetry-collector-contrib", + "loki", + "prometheus" ], - "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", + "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", "limitations": [ - "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", - "Complete originals remain private; public excerpts are bounded and sanitized.", - "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." + "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", + "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", + "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", + "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", + "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", + "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", + "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", + "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." ], - "path": "evidence/receipts/claude-upstream-checks-20260921.json" + "path": "evidence/receipts/native-token-stack-final-20260920.json" }, { - "id": "foundation-rd-20260921", - "kind": "native_model_e2e", + "id": "native-ultracode-20260921", + "kind": "native_cli_e2e", "component_ids": [ "claude-code", - "codex", - "codex-for-claude", - "qmd" + "context-mode" ], - "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", + "claim": "Claude Code 2.1.278 executed a Fable 5.1/xhigh native Workflow with Sonnet 5/medium and Opus 5/high workers returning results. The same coordinator resumed at high effort and completed a native same-host message round trip, source verification and one-shot idle notification with a separate Sonnet session. Native agent and restored workflow dashboards rendered the completed work.", "limitations": [ - "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", - "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", - "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", - "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", - "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." + "Read-only task contracts are not OS isolation; no writing-worker, mid-run cancellation, cross-host or reboot qualification.", + "Initial worker classifications were inaccurate and corrected after independent source review; both worker outputs exceeded their requested word contracts and one schema retry occurred.", + "Native worker identity was observed in child messages; choices are not a comparative quality or token-cost benchmark.", + "Same-host messaging and idle notification only; permission-mismatch behavior, delivery failures, retries and persistent scheduling were not tested.", + "Updated maintenance configuration is not proof of its next timed execution; no new recurring Claude loop was created.", + "Two native success events share cumulative model usage; no causal savings or exhaustive provider-accounting claim.", + "Native PTY rendering and process observations were recorded by the coordinator; message and workflow traces received independent read-only audit. Private raw logs and identifiers remain outside Git." ], - "path": "evidence/receipts/foundation-rd-20260921.json" + "path": "evidence/receipts/native-ultracode-20260921.json" }, { - "id": "claude-foundation-finalization-20260921", + "id": "native-worker-cgroup-20260920", "kind": "native_model_e2e", "component_ids": [ "claude-code", - "codex", - "agent-browser", - "repomix" + "systemd" ], - "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", + "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", "limitations": [ - "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", - "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", - "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", - "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." + "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", + "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", + "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", + "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", + "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." ], - "path": "evidence/receipts/claude-foundation-finalization-20260921.json" + "path": "evidence/receipts/native-worker-cgroup-20260920.json" }, { - "id": "adaptive-paper-practice-20260921", + "id": "native-worker-containment-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "claude-code", - "codex" + "systemd", + "claude-code" ], - "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", + "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", "limitations": [ - "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", - "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", - "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", - "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." + "Deterministic cgroup proof is not successful native child crash/resume acceptance.", + "Earlier same-child continuation still required explicit direct descendant cleanup.", + "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." ], - "path": "evidence/receipts/adaptive-paper-practice-20260921.json" + "path": "evidence/receipts/native-worker-containment-20260920.json" }, { - "id": "broad-universe-research-20260921", - "kind": "native_cli_e2e", + "id": "native-worker-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "alpaca-py", - "duckdb", - "claude-code", - "codex" + "claude-code" ], - "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", + "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", "limitations": [ - "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", - "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", - "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", - "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", - "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." + "One synthetic local fixture and one physical WSL host, not arbitrary application state.", + "Actual native child identities and paths remain private; hashes bind retained streams.", + "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", + "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", + "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", + "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", + "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." ], - "path": "evidence/receipts/broad-universe-research-20260921.json" + "path": "evidence/receipts/native-worker-recovery-20260920.json" }, { - "id": "ultracode-token-routing-20260921", + "id": "native-worker-supervision-20260919", + "path": "blueprints/us-equities/worker-supervision/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex" + "systemd" ], - "claim": "Claude Code 2.1.278 native Workflow stages re-routed to lean project agents cut the provider-returned first-request prompt from 42,396 tokens (default child) to 12,164 (named MCP grants behind ToolSearch) and 8,048 (source-scout) on one identical task; eight native review runs, two readiness audits, a builder run and probes plus one Codex cross-family review are retained as sanitized usage receipts; Haiku was not routed after an Opus-verified 9/14 versus 14/14 extraction trial; workflowSizeGuideline moved from small to unrestricted with a task sizing rule.", + "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", "limitations": [ - "First-prompt figures come from one tiny task on one host and model; they bound a fixed spawn cost, not a savings rate.", - "The Haiku judgment rests on one packet and one Opus verifier.", - "The strict accepted envelope status was never returned in the deploying project; the commit gate was fix-and-commit after each review's findings were resolved.", - "Local suites are stubbed or synthetic; provider figures reach the receipts only as sanitized child-usage.mjs output, with raw transcripts outside Git.", - "Codex thread and turn identifiers were redacted from the cross-review record." - ], - "path": "evidence/receipts/ultracode-token-routing-20260921.json" + "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", + "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", + "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", + "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", + "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", + "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", + "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", + "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", + "Hashes bind retained evidence bytes; they do not independently attest the execution.", + "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", + "Configured resource limits were inspected, not saturation-tested." + ] }, { - "id": "portable-claude-native-qualification-20260921", + "id": "native-workflow-graceful-recovery-20260921", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "prometheus" + "claude-code" ], - "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", + "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", "limitations": [ - "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", - "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", - "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", - "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", - "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." + "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", + "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", + "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", + "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." ], - "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" + "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" }, { - "id": "sota-convergence-20260922", - "kind": "historical_inventory", + "id": "native-workflow-writing-comparison-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "apple-container", - "ast-grep", - "beads", - "ccusage", - "claude-code", - "claude-hud", - "codebase-memory-mcp", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "fastapi", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "llama-cpp", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nextjs", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "playwright-cli", - "playwright-test", - "poppler", - "postgresql", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "react", - "repomix", - "restic", - "rtk", - "sandbox-runtime", - "serena", - "shanraisshan/claude-code-best-practice", - "shellcheck", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "claude-code" ], - "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", + "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", "limitations": [ - "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", - "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", - "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", - "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." + "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", + "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", + "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." ], - "path": "evidence/receipts/sota-convergence-20260922.json" + "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" }, { - "id": "claude-repository-evidence-20260921", + "id": "native-wsl-restic-synthetic-20260920", "kind": "native_cli_e2e", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "alpaca-py", - "ast-grep", - "beads", - "ccusage", - "claude-code", - "claude-hud", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "duckdb", - "edgartools", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nautilus-trader", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "pandas", - "playwright-cli", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "restic", - "rtk", - "sandbox-runtime", - "serena", - "shellcheck", - "skfolio", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "restic" ], - "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", + "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", "limitations": [ - "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", - "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", - "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", - "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", - "Superseded observations, including the author's own probe and invocation errors, remain recorded." + "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", + "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", + "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", + "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", + "No token, storage-efficiency or backup performance claim.", + "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", + "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", + "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", + "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", + "Ten offline oracle/guard tests are distinct from the actual native restic commands." ], - "path": "evidence/receipts/claude-repository-evidence-20260921.json" + "path": "blueprints/convergence-practice/wsl-restore/receipt.json" }, { - "id": "github-automation-newpc-20260922", + "id": "nautilus-equity-replay-20260921", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code" + "nautilus-trader" ], - "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", + "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", "limitations": [ - "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", - "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", - "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", - "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", - "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", - "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." + "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", + "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", + "SPY/LEAN corporate-action parity and historical universe availability remain separate." ], - "path": "evidence/receipts/github-automation-newpc-20260922.json" + "path": "evidence/receipts/nautilus-equity-replay-20260921.json" }, { - "id": "exchange-calendars-native-check-20260922", - "kind": "native_cli_e2e", + "id": "new-wsl-embedding-model-20261002", + "kind": "native_model_e2e", "component_ids": [ - "exchange-calendars" + "huggingface-hub-native" ], - "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", + "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02 and 2026-10-03, with the generation model swift-iq3s-s2o-64k resident, the preregistered comparison for the new WSL's embedding model gave the slot to E1: qwen3-embedding:0.6b (Q8_0, Ollama library manifest ac6da0dfba84a81fdbfbaf330198c33cd77c4cdfc53e8bc50eb581914a15621d) on Ollama 0.35.0 as qwen3-embedding-8k (num_ctx 8192). On MTEB 2.22.1's CQADupstackUnixRetrieval (test split: 47,382 documents, 1,072 queries) its nDCG@10 was 0.49827 against 0.41394 for EmbeddingGemma on the same server: E1 minus E2 0.084331, 95% paired bootstrap interval over queries 0.067738 to 0.100656 (10,000 resamples, seed 20260927). Nemotron-3-Embed-1B, which needs a second model server, scored 0.5014; E3 minus E1 was 0.003124 with an interval of -0.012194 to 0.018141 that includes zero, so by the second-server rule it does not take the slot. WeMM-Embedding-2B passed the fit gate but ran out of GPU memory in its full run and is out. The reranking condition was not run.", "limitations": [ - "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", - "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", - "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", - "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", - "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." + "One public retrieval task (CQADupstack Unix: English technical questions from a StackExchange forum), one workstation, one throwaway distribution, one run per arm: a local integration check, not an acceptance on the destination distribution.", + "Nemotron's tie holds for this task only; multilingual retrieval, longer documents and other domains were not measured.", + "The two Ollama arms are GGUF conversions served by the one model server; a difference from the reference weights is a difference of the systems, not of the models alone.", + "E1's and E2's prompts are MTEB's reference prompts as observed with a stub before the runs (amendment 4a): E1 sends the Qwen3 instruction before queries and nothing before documents; E2 sends EmbeddingGemma's query and document prompts.", + "Gate F reads the model server's listing: in window pb2 the card's memory in use fell between steps while the server kept listing the generation model entirely on the GPU, consistent with the Windows driver moving part of it off the card, so E3 passing gate F does not show co-residency. In window pb1 the readings matched the resident models, so E1's co-residency with the generation model is supported by both readings.", + "E4's first error text was lost: after its evaluation failed out of memory, the script's memory query raised the same sticky CUDA error and the outer handler replaced the text; the outcome is not in doubt, because only the evaluation's handler sets out_of_memory.", + "The reranking condition was not run: no installed retrieval owner can call an external reranker (QMD reranks in-process with its bundled model), and zerank-2 (7.49 GiB of weights) cannot be resident beside the generation model on this card.", + "Recorded, not deciding: evaluation time E1 1,166 s, E2 771 s, E3 460 s (E3 in-process, not comparable with the Ollama arms); resident sizes E1 2,857,191,341 bytes and E2 681,417,113 bytes.", + "manifests/stack.json has no Ollama or MTEB component; component_ids name huggingface-hub-native, the native route for the revision-pinned snapshots of E3 and E4, which the measurement downloaded through the huggingface_hub library at MTEB's registered revisions (its version is in the throwaway's freeze list, which was not retained).", + "The 31 MB prediction files and the run records stay private and are listed by sha256 in files.json; the published per-query nDCG@10 files reproduce the decision statistic.", + "With a server-wide context of 64,000 the embedder loaded at its full context and took 5.78 GB (Part A, A1b); the measured system sets the context per model (qwen3-embedding-8k, 8,192 tokens), never server-wide." ], - "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" + "path": "evidence/artifacts/new-wsl-local-models-20261002/part-b-receipt.json" }, { - "id": "adoption-macos-hosted-smoke-20260922", - "kind": "native_cli_e2e", + "id": "new-wsl-local-generation-model-20261002", + "kind": "native_model_e2e", "component_ids": [ "codex", - "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "claude-code" ], - "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", + "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02, the preregistered comparison for the new WSL's local generation model gave the slot to S2o: Swift-1.5-Qwen3.8-27B IQ3_S (ukisai/Swift-1.5-Qwen3.8-27B-GSQ-RCO-GGUF at revision d74895bbe5db4bec1e0024e7cc87d59c02d7631a, file sha256 1333c6ea70ef348d4ac6d62732772e8ad6571ac5b3754c14ed54f1a0d904a786, 11,771,546,912 bytes) on Ollama 0.35.0 as swift-iq3s-s2o-64k (context 64,000). On the same 100 BFCL simple_python cases (inspect-evals 0.23.0 on Inspect AI 0.3.273) through the server's chat and responses surfaces, its first-pass valid tool calls were 200 of 200 against 175 of 200 for the control gpt-oss:20b: difference 0.125, 95% paired bootstrap interval over cases 0.065 to 0.19 (10,000 resamples, seed 20260927), not a tie. Both arms were entirely on the GPU with the embedder resident in the order of use, and both passed 10 of 10 client tasks (Codex 0.160.0 and Claude Code 2.1.287). Bonsai PTQ1_0, Bonsai PQ2_0 and Swift on PrismML's llama.cpp server failed the function gate (0 of 3 runs each: the server skips the Codex client's namespace tool type), and qwen3.8:27b was not entirely on the GPU at 64,000 tokens.", "limitations": [ - "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", - "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", - "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", - "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", - "socraticode is the profile's documented unpinned skip and was not installed." + "One workstation, one throwaway distribution, one run per case and arm: a local integration check of the systems named, not an acceptance on the destination distribution.", + "First-pass tool-call validity on 100 simple public cases (BFCL simple_python) through two interfaces; nothing about coding quality, long tasks, throughput under concurrent requests or behaviour above 64,000 tokens.", + "The Anthropic-style messages surface was not evaluated through the package (Inspect AI 0.3.273 cannot read this thinking model's answer); it was exercised only by Claude Code in the client tasks, which both arms passed.", + "S2o was slower in these runs: 292 and 303 seconds for 100 cases on chat and responses against 100 and 139 for the control, and 43.1 against 108.9 output tokens per second on single long prompts that were not run as a speed comparison.", + "S2o leaves less GPU memory free: 21,579 of 24,564 MiB in use with the embedder resident while Windows applications held about 2,600 MiB; earlier the same day they held up to about 5,900 MiB, at which the same load would leave under one GB. Co-residency on a busier desktop and on the destination distribution is not measured.", + "The Ollama import is this measurement's system, not a route the publisher documents: the library qwen3.8:27b model's renderer, parser, parameters, template and licence lines with the Swift file as FROM. The publisher's own route (llama.cpp's server, here PrismML's fork) failed the function gate for a reason that lies in that server. The quantization's card says its quality tests used a 512-token context.", + "The arm that took the slot was added by the preregistration's extension (amendment 3) after the owner asked for the newest releases; the deciding measurement as the critic named it had two arms (qwen3.8:27b and gpt-oss:20b), the earlier result for gpt-oss:20b is kept as a historical result, and gpt-oss:20b ran A2 as the control under the same rules.", + "Three deviations are recorded (a void first window, the Codex client's model name with its tag, a reused label); none changed a case, a limit, the metric or the rule, and none was decided on an outcome.", + "Recorded, not deciding: the package's own score (S2o 97 and 95 of 100, the control 83 and 83) and the client tasks (10 of 10 for each arm).", + "manifests/stack.json has no Ollama, Inspect AI or PrismML llama.cpp component, so component_ids name the two clients that ran the client tasks (Codex also ran the function gate); they ran at Codex 0.160.0 and Claude Code 2.1.287, not at the stack's recorded 0.159.3 and 2.1.284.", + "Raw model outputs (the Inspect logs, the client run records, the server logs) stay private and are listed by sha256 in files.json; the published per-case validity files carry case ids, verdicts, reasons and timings, and the decision statistic reproduces from them.", + "The Swift file's licence is the publisher's own (Swift Open License v1.0, with the original Qwen parts under Apache-2.0); the Modelfile's LICENSE block is the library model's Apache-2.0 text. Recorded, not judged." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" + "path": "evidence/artifacts/new-wsl-local-models-20261002/part-a-receipt.json" }, { - "id": "catalog-freshness-20260923", - "kind": "upstream_provenance", + "id": "nextjs-1638-qualification-20261001", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "llama-cpp", - "mcp-inspector", - "openresearch", - "skfolio" + "nextjs" ], - "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-10-01, the application-delivery recipe was qualified at Next.js 16.3.8 (tag v16.3.8, commit b0fad0d45eb4c4430fda5eeeb442e8a5af08a5f6, released 2026-09-30T16:13:46Z), whose release notes list seven security advisories, the most severe GHSA-cjq9-62q9-8jv4 (high: server-side request forgery in Image Optimization). The two-file patch (package.json and pnpm-lock.yaml, sha256 570ac44d237b6641a5087fe57b079aaf61dcb781b6496a721b0224dd17ea60d0) changes next, @next/env and the eight @next/swc-* lock entries, every other lock entry byte-identical. With Node v24.21.0 and pnpm 12.4.2 the frozen install, the peer check, the typecheck and the production build each exited 0 (recorded at 16:07:49Z), after a first frozen install at 12:13Z exited 1 with ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION for the ten packages published on 2026-09-30; no exclusion or policy change was made.", "limitations": [ - "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", - "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", - "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", - "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." + "Bounded recipe checks only: make verify with its PostgreSQL, API and browser stages was not run, so the 2026-09-20 receipts still qualify 16.3.5, not 16.3.6 or 16.3.8.", + "The pnpm store, node_modules and build cache were warm from the earlier attempt; no cold-store install is claimed.", + "This recipe's exposure to the seven advisories was not established; the move removes the vulnerable versions from its lock.", + "Labels 15 to 17 are the version prints of Node and pnpm and a git diff check; they are metadata, not acceptance.", + "No new-host install ran: that is unit U10 on the new distribution. Provider usage of the builder is unknown." ], - "path": "evidence/receipts/catalog-freshness-20260923.json" + "path": "evidence/receipts/nextjs-1638-qualification-20261001.json" }, { - "id": "adoption-macos-hosted-smoke-20260923", + "id": "notification-types-20260929", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "claude-code" ], - "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", "limitations": [ - "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", - "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", - "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", - "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." + "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", + "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", + "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", + "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", + "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", + "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", + "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", + "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", + "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" + "path": "evidence/receipts/notification-types-20260929.json" }, { - "id": "wsl-retrieval-20260920", - "kind": "historical_inventory", + "id": "ns2604-e2e-20261004", + "kind": "native_model_e2e", "component_ids": [ - "ast-grep", - "qmd" + "claude-code", + "codex", + "omniroute" ], - "claim": "Incomplete historical WSL fixture reference: selected receipts report 22 source checks/six commands and 70 QMD lexical checks/17 commands. Offline byte and result consistency can be checked, but missing command argv/cwd, unrecovered raw logs and unsupported historical QMD installation prevent native E2E or adoption acceptance.", + "claim": "The historical 2026-10-04 foundation E2E covered 15 units and 80 slots through native executor observations, independent model review and 22 adjudications. Final labels are READY 18, PARTIAL 31, FAIL 2, BY_DESIGN 12 and INTERIM 17, with zero unjudged slots. Readiness is (18 + 12) / 80 = 37.5%, rounded half up to 38%; all 22 executor/reviewer disagreements were adjudicated, with 14 keeping the reviewer's status and 8 taking the executor's. This publication independently checks and sanitizes the retained status chains; it does not repeat host or provider execution. The adjudication prompt as run, claude-opus-5-5 at max effort with evidence-reviewer run records and timestamps, and the separate 33-slot fix list are retained.", "limitations": [ - "Historical reference only; not live verification, native E2E acceptance or adoption evidence. No new host/native/client acceptance follows from these artifacts.", - "Historical command facts omit argv and cwd. Exact raw-log locations are unavailable; no invocation was reconstructed or represented as observed.", - "The unchanged historical install receipt records npm --ignore-scripts --omit=optional. Future installation must use the current supported recipe with NODE_LLAMA_CPP_SKIP_DOWNLOAD=true and required dependency scripts enabled.", - "Both executed runner versions and the initial URI-checker failure are retained byte-for-byte. The future runner adds command provenance capture without changing past evidence.", - "Receipt-reported 22/70 checks and 6/17 commands describe selected local/synthetic fixtures. Five failed-attempt commands remain separate; no upstream-suite, semantic RAG, production, client or service acceptance.", - "Source currency remains September 20; offline completion and review do not refresh releases or native execution. Whole-task provider usage is unknown and no savings claim is made." + "Host state is as of 2026-10-04 19:10\u201320:10Z only; later adjudication and source merge timestamp 2026-10-04T20:26:16Z do not extend that observation window. Publication and repair perform artifact inspection and structural checks in the owned sandbox; they do not repeat native host probes.", + "Fixes are pending. The 33 PARTIAL/FAIL slots after adjudication are not accepted as ready: 25 repository-plan and 8 host fixes (evidence/artifacts/ns2604-e2e-20261004/fixes.json). Four INTERIM token slots (context-supply, command-output, output-compression, code-index) are held for PR #684, which has not merged. The two open token slots have separate fixes: ccusage (FAIL, plan) and statusline (PARTIAL, host).", + "This is not an upstream benchmark. Native executor observations, independent model judgments and adjudication are separate from upstream tests, structural checks, independent host replication and measured quality or token improvement.", + "The 17 INTERIM slots are held by design. They remain in the denominator and contribute zero to the readiness numerator; the 12 BY_DESIGN slots are intentional dispositions rather than proof that their tools executed.", + "Adjudication: claude-opus-5-5 at effort max (evidence-reviewer), prompt template as run in evidence/artifacts/ns2604-e2e-20261004/adjudication-prompt.md. Run wf_8bf450a9-d1e (17 agents) started 2026-10-04T20:06:45Z and completed 2026-10-04T20:20:30Z; run wf_cdbf70a0-02c (5 agents) started 2026-10-04T20:08:29Z and completed 2026-10-04T20:19:31Z.", + "Historical source command excerpts and raw conversations remain private. Public reasons are bounded to 60 words, fixes preserve the merge's 900-character bound before sanitization, and citations are limited to four per slot. Hashes establish byte identity, not success or adequacy of every native acceptance claim.", + "Reviewer records report the requested gateway model cx/gpt-6.1-sol-max and max effort; no resolved backend model identity is inferred. Independent model review is review of retained evidence, not independent execution on the host.", + "The coordinator registers all eight published files in manifests/evidence.json in the PR's final registry-only commit, and full repository validation passes at that head. Per-file scans and local receipt tests are structural evidence only." ], - "path": "evidence/receipts/wsl-retrieval-20260920.json" + "path": "evidence/receipts/ns2604-e2e-20261004.json" }, { - "id": "gitleaks-macos-memory-bound-20260924", - "kind": "native_cli_e2e", + "id": "omniroute-3851-npm-qualification-20260930", + "kind": "compatibility_attempt", "component_ids": [ - "gitleaks" + "omniroute" ], - "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", "limitations": [ - "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", - "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", - "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", - "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", - "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", - "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", - "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." + "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", + "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", + "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", + "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", + "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", + "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", + "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", + "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", + "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." ], - "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" + "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" }, { - "id": "env-freshness-wsl-ubuntu-main-20260924", - "kind": "artifact_measurement", + "id": "omniroute-claude-callsite-20260930", + "kind": "native_model_e2e", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "duckdb", - "pandas", - "edgartools", - "exchange-calendars", - "vllm" + "claude-code", + "codex", + "omniroute" ], - "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", + "claim": "A native Claude Opus5.5/Max coordinator discovered and read the project dispatcher, invoked the official Sol-Max Codex SDK worker through native Bash, and the retained original shows one unchanged fixture test with exit0.", "limitations": [ - "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", - "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", - "One host; each PC publishes its own report under the same schema.", - "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." + "One bounded read-only callsite and existing arithmetic oracle; no universal quality or SDK winner claim.", + "Coordinator tool scope was Bash/Read/Skill for this acceptance; other coordinator tools and optional MCP services are not qualified.", + "Native Claude and external Codex SDK usage remain separate scopes; parent list-price cost is not complete provider billing.", + "The separate Claude SDK Devin bridge remains failed/unqualified; this native Claude-account coordinator run does not promote it.", + "Provider backend identity, overall task usage, failed/interrupted calls, remote cancellation and token savings remain unverified." ], - "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" + "path": "evidence/receipts/omniroute-claude-callsite-20260930.json" }, { - "id": "vllm-030-switch-20260925", + "id": "omniroute-runtime-enhancements-20260930", "kind": "native_model_e2e", "component_ids": [ - "vllm", - "socraticode" + "codex", + "omniroute", + "context-mode", + "serena", + "dagu" ], - "claim": "vLLM 0.30.0 now serves the production Nemotron-3-Embed-1B-BF16 embeddings on the NativeStack WSL2 RTX 4090 host. Qualified first on an owned instance against production 0.25.0 (identical model files, flags and route), then switched by a systemd drop-in that changes only the binary path; the live service returned identical embeddings and identical top-10 code-index results after the switch.", + "claim": "A scoped native Codex SDK Sol-Max worker completed skill use, selected Context Mode/Serena MCP calls, one Astra-Max native judge and an unchanged oracle through OmniRoute in a successful bounded Dagu graph.", "limitations": [ - "One host (NativeStack, RTX 4090, WSL2 Windows driver 616.64) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", - "Retrieval equality covers 8 gate texts and 5 live code-index queries (top-10), not an aggregate retrieval-quality benchmark.", - "0.30.0 relies on its pinned-memory fallback for WSL (PR #56908); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", - "The 0.25.0 prefix is kept for rollback; the base unit still names it and only the drop-in points at 0.30.0." + "One unchanged arithmetic fixture and bounded integration; no universal highest-quality model, framework or SDK ranking.", + "169 enabled skills were visible through native discovery. This run read using-superpowers and exercised three selected MCP calls; it does not qualify every installed skill, tool, language server, plugin or hook.", + "Native hook support and live web search are configured, but their execution is unmeasured here. No scheduler, schedule, hook or global account configuration was installed by this kit.", + "Native parent and child cumulative usage are separate scopes. Cached input and reasoning are subsets; observer response counters corroborate the same usage and must not be added. Failed/interrupted and complete provider usage, billing and token savings remain unknown.", + "Each observed completed stream also has an unclassified flow_error record. Native results completed; transport is not described as error-free, and requested model/provider labels are not backend identity attestation.", + "The separate Claude SDK Devin bridge retains its failed/unqualified status. Earlier native Claude-to-SDK acceptance is a historical separate callsite, not a rerun against this source.", + "The follow-up native Claude cooperation session was stopped after no confirmed SendMessage/final packet; no peer approval or new owner-contact count is claimed.", + "The isolated kit is a scoped private worker configuration. Live owners retain shared worker policy, host-wide catalogs/defaults and dashboard checkpoint ownership." ], - "path": "evidence/receipts/vllm-030-switch-20260925.json" + "path": "evidence/receipts/omniroute-runtime-enhancements-20260930.json" }, { - "id": "rtk-050-qualification-20260925", - "kind": "native_cli_e2e", + "id": "omniroute-runtime-workers-20260930", + "kind": "native_model_e2e", "component_ids": [ - "rtk" + "codex", + "claude-code", + "omniroute" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", + "claim": "The retained official Codex SDK Sol-Max worker passed one upstream coding fixture, native resume and fresh recovery through the selected OmniRoute Responses lane. Interrupted usage and Claude bridge qualification remain unknown/failed.", "limitations": [ - "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", - "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", - "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", - "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", - "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", - "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", - "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." + "One arithmetic fixture and lifecycle acceptance; no universal SDK or model quality ranking.", + "Actual provider trials invoked the SDK from root, rather than through a Claude coordinator. Native project dispatch skill is supplied and structurally checked; its coordinator invocation remains unmeasured.", + "Native Codex SDK remains the incumbent. The separate frozen three-arm SDK gate remains unresolved.", + "Native gateway requested/returned model labels are not backend attestation.", + "All 136 skills are available in the owned project, with two bodies exercised; full role coverage and optional service acceptance remain incomplete.", + "Native Codex repeated in-process fixtures emit stdout/stderr ResourceWarnings; standalone per-invocation child exit is qualified separately.", + "Complete provider usage, spending, remote cancellation and token savings remain unknown.", + "Public record is sanitized selected actual return fields and independent observations; original private returned artifacts remain outside the checkout." ], - "path": "evidence/receipts/rtk-050-qualification-20260925.json" + "path": "evidence/receipts/omniroute-runtime-workers-20260930.json" }, { - "id": "markitdown-018-qualification-20260925", - "kind": "native_cli_e2e", + "id": "omniroute-sdk-worker-0160-20261003", + "kind": "native_model_e2e", "component_ids": [ - "markitdown" + "codex", + "omniroute", + "context-mode" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", + "claim": "The SDK 0.160.0 B3 review candidate addresses all five PR #628 bot findings and passed twelve of twelve twenty-five-test native loopback fixture invocations, 26 local Claude SDK tests, six observer tests and final Ruff checks. Each reported bug has a retained failing-before-repair command and a passing counterpart. B2 metadata preflight and the earlier builder/coordinator live observations remain historical; no B3 live model task ran. Writing dispatch, live keyed-shell/search qualification and backend effort remain unobserved.", "limitations": [ - "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", - "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", - "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", - "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", - "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", - "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", - "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", - "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." + "Authored loopback SSE fixtures, local Claude SDK tests and observer tests are integration/synthetic checks, not unchanged upstream suites or provider-model trials.", + "The pre-B2 builder live task returned the correct data while two native shell attempts failed in its enclosing Codex sandbox and a Context Mode call failed with Transport closed. A separate coordinator, outside a nested Codex sandbox, observed read-only shell success at that candidate. The repaired bytes have no new live-model run; error-free MCP transport and writing (workspace-write) dispatch remain unqualified at 0.160.0.", + "Plugin disabling is the selected native feature gate. Tests observe direct app-server PID termination and absence of clone directories; descendant cleanup and global non-loopback egress are not observed.", + "Metadata preflight submits no inference. No skill was installed in the new private home and no --require-skill was used; inherited/project catalog discovery does not qualify every skill or tool.", + "Requested model/Max effort and live catalog entry are observed; gateway-forwarded effort, backend model identity, complete provider usage, cost, remote cancellation and token savings remain unknown.", + "September 30 receipts and original observations remain historical. This refresh does not rerun the historical coding oracle, Claude callsite, Astra judge, Dagu graph or unchanged upstream SDK suite.", + "Exactly pinned private SDK preflight/PID attributes require review on every pin move. Stable Python SDK and experimental, unsupported-for-production app-server are separate support boundaries.", + "Expected ResourceWarning messages and argparse rejection output remain in private fixture logs. Long-lived SDK pools, alternative approval modes, alternate binary, credential-variable path, workspace-write live execution and scheduled Dagu acceptance remain unqualified.", + "Initial Ruff failure exits are retained from native task returns, but exact full output/timing was not saved. Repository validators prove declared consistency, not the truth of provider or historical claims.", + "Earlier checkout and alternate-index validation failures are retained as before-B2 attempts. The coordinator force-added the project skill to the real index; B2 acceptance uses that actual checkout index. Historical source archive acceptance does not replace current checkout acceptance.", + "If the cleanup bound expires during retained startup or close, cleanup_status is unresolved and the CLI exits nonzero. Continued deferred cleanup is observed only while the embedding event loop remains running; no post-bound standalone cleanup or remote termination guarantee is made.", + "B3 repairs have local regression/configuration acceptance only: no live model tasks, keyed gateway shell trial, standalone search endpoint trial or native Claude connect fault injection. The native SDK retains its own shielded cleanup/transport bounds; wrapper grace does not override them." ], - "path": "evidence/receipts/markitdown-018-qualification-20260925.json" + "path": "evidence/receipts/omniroute-sdk-worker-0160-20261003.json" }, { - "id": "ai-memory-240-qualification-20260925", + "id": "openresearch-0215-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "openresearch" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", - "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", - "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", - "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", - "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", - "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", - "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" }, { - "id": "mcporter-0141-qualification-20260925", + "id": "otelcol-contrib-0162-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "mcporter" + "opentelemetry-collector-contrib" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", "limitations": [ - "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", - "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", - "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", - "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", - "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", - "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" }, { - "id": "ai-memory-241-qualification-20260925", + "id": "playwright-cli-0122-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "playwright-cli" ], - "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", - "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", - "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", - "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", - "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", - "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", - "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" }, { - "id": "headroom-039-qualification-20260925", + "id": "portable-claude-native-qualification-20260921", "kind": "native_cli_e2e", "component_ids": [ - "headroom" + "claude-code", + "codex", + "prometheus" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, headroom-ai 0.39.0 was qualified against the pinned 0.37.0 and not switched; production stays on 0.37.0. Tag v0.39.0 is 66f426171bab32692cf93d2b656a8e4be9004186 and contains d971f7c3 (#3748; compare behind_by 0). Its manylinux_2_28_x86_64 wheel (14,199,952 bytes, sha256 8c7594012ce0dcd28202af471fb1bd08c6f226c8e10fc6a682b3fb233e809a74) matched PyPI JSON, the PyPI simple API and the GitHub release asset, and was installed with uv into the new prefix tools/headroom-ai-0.39.0; 555 of 555 headroom/ RECORD digests match the verified wheel and `headroom --version` printed 'headroom, version 0.39.0'. The unchanged upstream test file tests/test_transforms/test_content_detector_timestamp_search.py (blob 23b66a27) passed 6 of 6 on 0.39.0 and 4 of 6 on 0.37.0. Through `headroom mcp serve --proxy-url http://127.0.0.1:1` over stdio, 0.39.0 listed headroom_compress, headroom_retrieve and headroom_stats; compressed the 600-line ISO-timestamped fixture A 16820 -> 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", + "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", "limitations": [ - "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", - "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", - "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", - "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", - "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", - "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", - "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", - "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." + "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", + "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", + "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", + "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", + "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." ], - "path": "evidence/receipts/headroom-039-qualification-20260925.json" + "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" }, { - "id": "vllm-030-switch-laptop-20260926", - "kind": "native_model_e2e", + "id": "portable-cli-artifacts", + "kind": "native_cli_e2e", "component_ids": [ - "vllm", - "socraticode", - "ai-memory" + "shellcheck", + "difftastic", + "markitdown", + "ast-grep", + "toon", + "repomix" ], - "claim": "vLLM 0.30.0 was qualified on this laptop (WSL2, RTX 5090 Laptop GPU 24GB) as a drop-in candidate for the production Nemotron-3-Embed-1B-BF16 embedder (vLLM 0.25.0), then switched into production by a systemd --user drop-in that changes only the ExecStart binary path and PATH. Of the six qualification gates: (a) gate-text cosine, (c) batch invariance and (e) ai-memory vector reconstruction passed their pass bars; (b) mini-corpus retrieval and (d) live-code-index retrieval met top-10 SET identity on every query and trial (b: 40/40, d: 20/20 query-trials) but failed their strict top-10 ORDER bar in 3 of 4 trials each; (f) latency is report-only, with no pass bar. A prod-vs-prod control run (candidate never started) shows the same order-swap behavior already exists in production alone: gate b had 6 of 50 mismatched query-trials for the candidate (including an earlier, superseded run) against 10 of 80 for production compared with itself; gate d had 3 of 20 against 4 of 40; production against itself even had a worse single trial (6 of 10 identical) than any candidate trial. Gate (c)'s batch-invariance minimum cosine (0.9999562552851937) was bit-for-bit identical between production alone and the candidate, on the same minimizing text. The production switch itself re-checked only 30 gate texts (cosine 0.9999999999999998 before vs after) and confirmed dependents (ai-memory's vector stream, SocratiCode search); it did not re-run a post-switch top-10 retrieval check.", + "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", "limitations": [ - "One host (laptop, RTX 5090 Laptop GPU 24GB, WSL2) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", - "Retrieval equality covers 30 gate texts (a), a 50-paragraph mini-corpus over 10 queries (b), and 5 live code-index queries (d), not an aggregate retrieval-quality benchmark. Gates b and d met top-10 content-SET identity on every query and trial (b: 40/40 query-trials across the 4 recorded trials, plus full set overlap on one earlier superseded run; d: 20/20 query-trials) but did not meet strict top-10 ORDER identity on every trial (that earlier superseded run's own order count was 9 of 10). Counting every recorded run: gate b had 6 of 50 candidate query-trials with an order mismatch against 10 of 80 for a prod-vs-prod control (candidate never started, run twice -- an earlier, superseded control and the current one -- both included since only the second run's own prod_score diagnostic sub-field needed a fix, not its order counts); gate d had 3 of 20 against 4 of 40. Production compared with itself had a worse single trial (6 of 10 identical, i.e. 4 mismatched) than any candidate trial (worst: 7 of 10 identical, 3 mismatched), so this order-swap behavior is pre-existing production batching noise, not attributable to the 0.30.0 upgrade. The swap-gap range is 3.5e-05 to 8.2e-04 across all 23 recorded swaps (candidate run and both control runs combined), far smaller than the ~0.02-0.05 gaps between other adjacent ranks in the same rankings.", - "The reference receipt's own qualification-time number for this style of check (mini_corpus_top10_overlap, '10/10 on each of 10 queries') is a content-SET overlap claim, not a strict-order claim; it does not report whether its own order matched on every query, so gate (b)'s order tracking here is additional detail, not a comparison against a reported order result. The reference receipt's one reported ORDER number (production_switch.code_queries_identical_top10_order, '5/5') comes from its own post-switch production check with 5 live code queries, a different procedure from this run's own gate (d) qualification check (5 queries against the live SocratiCode index, run before any switch); the two are not directly comparable, and this run made no post-switch top-10 check of its own (see production_switch below: only 30 gate texts and a cosine value were re-checked after the switch) -- unlike the reference, which also re-checked 5 code queries' top-10 order after its own switch (that same code_queries_identical_top10_order, '5/5').", - "0.30.0 relies on its pinned-memory fallback for WSL (vllm-project/vllm PR #56908, the same warning the reference receipt's owned instance logged); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", - "The 0.25.0 unit is kept for rollback; only a drop-in override (nemotron-embed-agent-lab.service.d, ExecStart and PATH only) points production at 0.30.0.", - "A diagnostic-only bug in this run's own gate (b) script (prod_scores_by_idx had score and index reversed) made the order_diff_detail[].prod_score sub-field in every candidate-vs-prod gate (b) file (gate_b_result.json and gate_b_trial{1,2,3}.json) and in the first, superseded prod-vs-prod control unreliable; it did not affect any cosine value, top-10 set, or pass/fail boolean -- only that one diagnostic sub-field -- and was fixed before the second, current prod-vs-prod control run. See raw/ERRATUM-gate_b-order_diff_detail-prod_score-bug.txt.", - "results.json's own generated prose has two internal inconsistencies against its own structured fields, corrected in this receipt from the underlying per-trial gate files (raw/gate_b_result.json, gate_b_trial{1,2,3}.json, gate_d_result.json, gate_d_trial{1,2,3}.json): its gate (b) finding text lists strict-order counts as '9, 7, 9 and 10' where the adjacent structured array and the per-file queries_with_identical_order fields agree on '10, 9, 7 and 9' (same four numbers, wrong order in the prose only); its gate (d) finding text says strict order held on '3, 5, 4 and 4' of 5 queries where the adjacent structured array and the per-file queries_identical_count fields agree on '4, 5, 4 and 4'.", - "The laptop's vllm-0.30.0 prefix pre-existed this run (never pip-installed into by this task, per its own instructions), so no direct_url.json or install log exists on this host to independently re-hash its wheel; the pin identity below is the value the workstation's own switch receipt recorded for the same pinned release, reused for cross-host comparison, not independently re-verified here. What IS independently verified on this host: both production (0.25.0) and the candidate (0.30.0) point at the identical, single model directory (same absolute path in both /v1/models responses), and this host's own sha256 of that directory's model.safetensors is recorded below.", - "independent_review: an independent reviewer subagent checked this receipt against the retained raw files (recomputed the reported counts, re-hashed the model file, compared production's before/after flags) and re-ran no gate; that review produced every correction listed above." + "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", + "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." ], - "path": "evidence/receipts/vllm-030-switch-laptop-20260926.json" + "path": "evidence/receipts/portable-cli-artifacts.json" }, { - "id": "codex-01571-qualification-20260926", + "path": "adoption/receipt.json", + "id": "portable-sdk-adoption-20260919", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "codex", + "duckdb" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", + "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", "limitations": [ - "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", - "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", - "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", - "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", - "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", - "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", - "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", - "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", - "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", - "Linux x86_64 only, one host; nothing here is macOS evidence." - ], - "path": "evidence/receipts/codex-01571-qualification-20260926.json" + "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", + "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", + "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", + "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", + "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", + "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", + "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." + ] }, { - "id": "mcp-inspector-280-qualification-20260926", + "id": "portable-userspace-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "mcp-inspector" + "rtk", + "qmd", + "repomix", + "toon", + "codex", + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", + "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", "limitations": [ - "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", - "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", - "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", - "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", - "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." + "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", + "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", + "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", + "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", + "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", + "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", + "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", + "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", + "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." ], - "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" + "path": "evidence/receipts/portable-userspace-install-20260921.json" }, { "id": "prometheus-3150-qualification-20260926", @@ -3297,127 +3453,174 @@ "path": "evidence/receipts/prometheus-3150-qualification-20260926.json" }, { - "id": "tavily-research-qualification-20260926", + "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", + "id": "qdrant-native-state-recovery-20260919", "kind": "native_cli_e2e", "component_ids": [ - "tavily-cli" + "qdrant", + "restic" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", + "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", "limitations": [ - "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", - "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", - "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", - "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", - "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", - "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", - "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", - "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." + "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", + "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", + "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", + "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", + "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." + ] + }, + { + "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", + "id": "qmd-bm25-retrieval-20260919", + "kind": "native_cli_e2e", + "component_ids": [ + "qmd" ], - "path": "evidence/receipts/tavily-research-qualification-20260926.json" + "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", + "limitations": [ + "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", + "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", + "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", + "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", + "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", + "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", + "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", + "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", + "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", + "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", + "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." + ] }, { - "id": "local-inference-c2-serving-switch-20260926", - "kind": "native_model_e2e", + "id": "restic-local-public-reference-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "llama-cpp" + "restic" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", + "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", "limitations": [ - "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", - "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", - "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", - "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", - "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", - "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", - "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." + "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", + "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", + "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", + "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", + "Credential loss recovery requires separately approved secure key escrow." ], - "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" + "path": "blueprints/us-equities/hosting/backup/receipt.json" }, { - "id": "claude-advisor-usage-scan-20260928", - "kind": "artifact_measurement", + "id": "rtk-050-qualification-20260925", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "rtk" ], - "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", - "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", - "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", - "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", - "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", - "Whether ccusage or ecosystem-token-report count these entries was not checked." + "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", + "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", + "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", + "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", + "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", + "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", + "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." ], - "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" + "path": "evidence/receipts/rtk-050-qualification-20260925.json" }, { - "id": "claude-host-practice-readback-20260928", + "id": "rtk-051-qualification-20261004", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "claude-hud", - "headroom", - "mcporter", - "jcodemunch-mcp", - "agent-browser", - "qmd" + "rtk" ], - "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", + "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed rtk 0.51.0 from the checksummed Linux release archive and returned rtk 0.51.0 with exit 0. rtk verify returned 151/151 inline self-tests with exit 0; 24 hook payloads matched 0.50.0 output and exits (16 rewritten, 0 differing), and 26 permission-deny hook decisions matched with no auto-allows. Direct git/proxy calls succeeded and the existing tracking database was read and later updated. This receipt republishes bounded sanitized facts from the historical host records; it is not a new host or model run.", "limitations": [ - "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", - "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", - "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", - "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", - "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", - "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", - "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." + "No macOS execution; the Darwin archive is artifact-checked only. No upstream cargo test suite was run in these records; rtk verify is the native inline self-test, and the 115-test parser run (14 skipped) is local integration.", + "rtk gain, session and cc-economics are tool self-reports, not provider counts, invoice data or causal savings. Cumulative snapshots are not added together.", + "No fresh live-client acceptance or rtk init re-run was recorded. The --shell compatibility review is source-based; the host hook comparison covered only its 24 payloads and 26 deny entries. Existing exact-output exceptions and dated replay gates remain scoped to their original evidence.", + "gh attestation verification returned HTTP 404 (exit 1); no signature verification or source rebuild was recorded. Later upstream fixes and issue #4404 are follow-ups, not included in this stable pin.", + "NativeStack runs AgentsView 0.44.0 ahead of the repository pin. The 2026-09-27 qualification hold stands: synthetic_ccusage_parity failed, fresh_four_native_lanes is blocked, and the v0.44.0 MCP reported zero Codex counters. The recorded recipe rewire and qualification must pass in a separate follow-up before a repository pin move.", + "RTK replay is unavailable at 0.51.0: vendored child-usage.mjs and the test_token_measurement.py/test_skill_usage.py replay gates require exactly rtk 0.50.0. Skipped replay tests are not coverage; the kernel and gates remain unchanged.", + "The repair-round placeholder guard probes allowed the --shell form rtk test --shell sh 'cat ~/.ssh/config' (exit 0), while rtk proxy cat ~/.ssh/config was blocked (exit 2). These strings were guard input only; no credential reader was executed. This finding belongs to PR #685; the guard is unchanged in this pin move.", + "2026-10-04 control correction after PR #693 CI run 37226622626: v0.51.0 intentionally folds grep file lists (feac25d), so the former byte-unchanged grep control is superseded by counted prefix-plus-tail reconstruction of the exact native path set, byte-identical proxy recovery and a CR-filename verbatim guard fixture (3223a80). The diff half is unchanged. The repaired native fixture passes nine checks over 11 cases / 33 arms; this is local integration of the installed Linux CLI, not new host or upstream Cargo-suite acceptance. Agent-facing expansion of folded paths is unmeasured; an E2E observation of a wrong expanded path leads to adding grep -l/-rl to hook exclusions. Sources and retained red-then-green observations: docs/decisions/2026-10-04-rtk-file-list-control.md.", + "2026-10-04 PR #698 follow-up from the pre-rebase review head 45a7218c0 (rebased onto 38ac9aca1; no branch keeps it): the grep inverse now preserves native engine order, and a CR-free explicit-operand t6c sibling proves that the same grep -l shape folds without the 3223a80 guard signal. Native distinctness and the CR-case LF record count have isolating rejection controls with separate predicate-deletion red runs and restored green runs. The installed Linux CLI passes ten checks across 12 cases / 36 arms / 76 fixture commands plus one version command. Historical shell_sites line 1477 is retained; a dated appended entry corrects the direct-argv locator. Minimal sanitized original red/green outputs from job 035 and new job 042 outputs are retained under evidence/artifacts/rtk-051-file-list-control-20261004/ (README.md and native-controls.json), with the dated decision at docs/decisions/2026-10-04-rtk-file-list-control.md. This is local integration, not a WSL rerun, upstream Cargo-suite, new-host or native-model acceptance; model interpretation remains unmeasured." ], - "path": "evidence/receipts/claude-host-practice-readback-20260928.json" + "path": "evidence/receipts/rtk-051-qualification-20261004.json" }, { - "id": "socraticode-1150-qualification-20260927", + "id": "runtime-sdk-20261003", + "kind": "compatibility_attempt", + "component_ids": [ + "codex" + ], + "claim": "Retained coordinator results for the same-host Codex SDK/CLI 0.160.0 pair report strict-hash installation, matching bundled/npm-platform binaries and completed native-account SDK, gateway SDK and gateway CLI marker canaries. Sanitized outputs, native CLI usage, scripts, hashes, mtimes and discriminating replay controls are now retained; missing original SDK invocation/source and process start/end evidence limit this to a compatibility attempt. The separate A4 record adds fail-closed Linux package-resolution/executable-tree repairs, offline integration controls and a fresh isolated bootstrap of the shipped Codex pin; it does not upgrade the SDK/gateway canary evidence class.", + "limitations": [ + "Existing-host compatibility observations and completed marker canaries only; incomplete original command/timing provenance prevents native_cli_e2e acceptance. Not new-host or model-quality acceptance.", + "Gateway backend model and effort were not read from the call log; configured/requested routes and efforts do not prove backend selection.", + "The shared host launcher, daemon and production prefix still run 0.159.3 until a separate coordinated switch.", + "The 0.159.3 queue, Hindsight and October 1 SDK receipts retain their original scope; they do not qualify 0.160.0.", + "Sanitized native canary stdout/stderr, CLI events/last message and their hashes are retained. SDK caller exit codes 0 are coordinator-verified, not fields in the supplied facts. Gateway backend billed usage and monetary cost remain unrecorded.", + "Original process start/end times and SDK outer executable/cwd are unrecorded. Source mtimes are filesystem observations only. The native heredoc is reconstructed from facts and the retained gateway example, not attested as the original source.", + "SDK last and total usage snapshots match for each canary and must be counted once; cached input and reasoning output are subsets, not additional tokens.", + "No unchanged upstream test suite, shared daemon restart, whole-system cleanup/recovery acceptance, package signature or provenance attestation verification is recorded here. The separate A4 bootstrap record retains local migration/publication fault injection and an isolated native installation.", + "The move is inside the seven-day cooldown recorded in docs/decisions/2026-09-25-workstation-sota-refresh.md, as the prior 0.159.2 and 0.159.3 moves were (docs/decisions/2026-09-27-model-currency.md).", + "This repository change records existing coordinator qualification; it performs no new model run or shared-host switch.", + "The CLI script prints the inner Codex exit but does not propagate it as its own final shell exit; the recorded inner exit 0 is supported by the coordinator facts and completed native events." + ], + "path": "evidence/receipts/runtime-sdk-20261003.json" + }, + { + "id": "runtime-tools", + "path": "evidence/receipts/runtime-tools.json", "kind": "native_cli_e2e", "component_ids": [ - "socraticode" + "gitleaks", + "sandbox-runtime" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", + "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", "limitations": [ - "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", - "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", - "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", - "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", - "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", - "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", - "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", - "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", - "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", - "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", - "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." + "No claim of full security certification.", + "Sandbox network denial configured but not separately exercised." + ] + }, + { + "id": "sec-catalyst-dataset-native-20260920", + "kind": "native_cli_e2e", + "component_ids": [ + "edgartools", + "duckdb" + ], + "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", + "limitations": [ + "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", + "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", + "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", + "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", + "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", + "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", + "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", + "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", + "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." ], - "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" + "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" }, { - "id": "ccusage-20026-qualification-20260927", - "kind": "native_cli_e2e", + "id": "sec-financial-data-20260919", + "kind": "compatibility_attempt", "component_ids": [ - "ccusage" + "duckdb" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", + "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", "limitations": [ - "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", - "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", - "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", - "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", - "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", - "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", - "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", - "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", - "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", - "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", - "New hosts receive this pin only after the next release tag." + "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", + "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", + "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", + "Current API snapshots do not reconstruct historical point-in-time knowledge.", + "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", + "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." ], - "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" + "path": "blueprints/us-equities/financial-data/receipt.json" }, { "id": "skills-listing-restore-20260928", @@ -3463,104 +3666,27 @@ "path": "evidence/receipts/skills-m4-host-removal-20260928.json" }, { - "id": "claude-model-effort-probes-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", - "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", - "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", - "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", - "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." - ], - "path": "evidence/receipts/claude-model-effort-probes-20260929.json" - }, - { - "id": "claude-max-default-effort-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", - "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", - "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", - "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", - "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", - "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", - "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", - "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." - ], - "path": "evidence/receipts/claude-max-default-effort-20260929.json" - }, - { - "id": "claude-project-effort-flag-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", - "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", - "The Ultracode reminder is an indicator, not proof of workflow orchestration.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." - ], - "path": "evidence/receipts/claude-project-effort-flag-20260929.json" - }, - { - "id": "claude-spend-attribution-20260929", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code", - "ccusage" - ], - "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", - "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", - "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", - "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", - "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", - "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", - "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", - "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", - "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", - "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", - "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." - ], - "path": "evidence/receipts/claude-spend-attribution-20260929.json" - }, - { - "id": "wsl-terminal-defaults-20260929", + "id": "socraticode-1150-qualification-20260927", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex" + "socraticode" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, and 2.1.283 in a second distro; Codex 0.157.1; bash 5.2.21; Windows Terminal 1.24.11911.0) the repository now carries the terminal defaults that had been set by hand on the host. Merging the linux-wsl2 Claude Code overlay into the live settings with the repository's merge tool changed nothing (the merge equalled the live file), exactly one Notification group holds the bell command, and its matcher equals the overlay's (the acceptance script checks the matcher because the merge alone cannot see it). The rendered Codex template loads under `codex --strict-config` (the run stops at authentication, never at configuration); a wrong type for `[tui] notifications` and an unknown top-level key are refused, and an unknown key inside `[tui]` is not. The static `adoption_status.py --login-shell` model agreed with the real bash login search in all 512 combinations of three startup files over eight states, a FIFO made bash block (the model calls it unusable and unread), and a control that takes an empty file as absent disagreed in 26. In the second distro, the two per-project Claude profiles of the Windows Terminal settings dropped `suppressApplicationTitle` and gained the quiet bell, the audible-and-taskbar bell style and `COLORTERM` through the profile environment key, with every other profile and setting unchanged; the overlay merged into that distro's Claude settings changed only `$schema`, `hooks` and `preferredNotifChannel`, and its installed hook command printed exactly one BEL. The host practice repository's terminal-profile check now scans the live settings file and passed with 0 findings (the pre-change settings file fails it with 8 findings on the two per-project profiles), and its 22 single-defect controls each failed for exactly their rule.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro plus one second distro (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own evidence, and none of the new files is in the pinned release: a new host gets them only after a release carries them and the manifest is re-pinned.", - "No Windows Terminal tab was opened or measured after the second distro's profile change, and no session of that distro was started or observed after its overlay. Claude Code applies edits to `hooks` to a running session without a restart (settings reference, \"When edits take effect\"), so open sessions there should pick the overlay up; that was not observed, and an audible or taskbar bell for the alert path was not observed by the user in this work.", - "The profile example was checked as JSON against the policy. It declares no `guid`, so Windows Terminal derives a stable one from the folder and profile names (read in its source at the installed tag); it was not loaded into Windows Terminal or installed on any host. The host's deployed fragment is the practice repository's own file.", - "The `--login-shell` check reads file metadata only and models bash's login search from the source of bash 5.3 (shell.c execute_profile_file, builtins/evalfile.c) and the installed 5.2.21 on Linux; it does not run a login shell, read a startup file (so a non-empty file's hand-off is unknown, reported as null), or cover /etc/profile, ~/.bashrc, another shell, --noprofile, POSIX mode, an sh-mode login or macOS's bash 3.2. A special file is reported unusable: bash reads a device as empty and blocks on a FIFO, and both end the search; an unusable ~/.profile is reached but not read, so profile_read is false; HOME is the environment's, else the passwd entry's, else \"/\", the way bash falls back.", - "The Codex acceptance is a configuration load: no Codex notification was produced in this work, `async-question` does not exist at the macOS pin's tag (inert there) and Codex 0.155.1 was not run. Codex does not validate keys inside `[tui]`, so the repository's test pins that table's setting names. A `request_user_input` question notifies as `plan-mode-prompt` at both tags (tool_requests.rs L449-458), so `async-question` adds only the asynchronous questions 0.155.1 lacks.", - "The second distro's `tui` is `fullscreen` by its own setting; `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` was not set, as the upstream documentation makes it a reactive fix and no stale rendering was observed or measured.", - "The host practice repository has no remote (commits fcd291f, 396d1c1, 9500656, c14e8c3, 9f615ad and d0c7d9c); its check and controls are recorded here as results only. The Windows Terminal settings patch and the second distro's merge were host operations on private files, recorded as values.", - "The second distro's Claude Code is 2.1.283, one release before this host's. A scan of the installed binaries (this host's 2.1.282, 2.1.283 and 2.1.284, and that distro's 2.1.283) found the `notifications_disabled` and `terminalSequence` literals and `worker_permission_prompt` emitted from the same two team-inbox call sites in each (the second distro's binary is byte-identical to this host's 2.1.283 by SHA-256 prefix, and its occurrence counts by `grep -a -o` equal this host's scan), so the whole matcher is live there. The changelog dates `terminalSequence` to 2.1.141 and has no entry for `notifications_disabled`, which the settings reference documents. The hook was run in that distro.", - "The merge de-duplicates hooks by command anywhere in the event, so it never changes the matcher of a Notification hook that already runs the bell command: after a later matcher change the old group must be edited or removed first. The acceptance script checks the group count and the matcher for that reason, and a unit test proves it refuses a catch-all group and an older matcher.", - "The Codex `[tui] notifications` list is in the template that a macOS host also renders. Codex keeps its own per-terminal channel there, so needed kinds still notify natively and the turn-complete one stops; at the macOS pin `async-question` does not exist and is inert. This was decided and documented, and not observed on a Mac.", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): codex_tui_strict_check.py counts a run as loaded only with Codex's session banner and exits 1 unless the template loaded and both configuration controls were refused; overlay_noop_check.py also requires disableAllHooks not to be true and labels its verdict as a check of the user settings file only; login_shell_bash_truth.py and the 512-combination test now also compare first_read; the platform page's advice about profiles.defaults was corrected (Windows Terminal ranks a profile's own value, then profiles.defaults, then a fragment's profile). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", + "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", + "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", + "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", + "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", + "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", + "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", + "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", + "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", + "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", + "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." ], - "path": "evidence/receipts/wsl-terminal-defaults-20260929.json" + "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" }, { "id": "socraticode-1160-qualification-20260929", @@ -3584,112 +3710,152 @@ "path": "evidence/receipts/socraticode-1160-qualification-20260929.json" }, { - "id": "omniroute-3851-npm-qualification-20260930", - "kind": "compatibility_attempt", + "id": "sota-convergence-20260922", + "kind": "historical_inventory", "component_ids": [ - "omniroute" + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "apple-container", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codebase-memory-mcp", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "fastapi", + "gitleaks", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "llama-cpp", + "loki", + "markitdown", + "mcp-inspector", + "mcporter", + "nextjs", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "playwright-cli", + "playwright-test", + "poppler", + "postgresql", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "react", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shanraisshan/claude-code-best-practice", + "shellcheck", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", + "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", "limitations": [ - "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", - "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", - "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", - "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", - "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", - "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", - "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", - "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", - "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." + "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", + "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", + "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", + "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." ], - "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" + "path": "evidence/receipts/sota-convergence-20260922.json" }, { - "id": "codex-01592-qualification-20260930", + "id": "syft-1540-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "syft" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", "limitations": [ - "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", - "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", - "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", - "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", - "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", - "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", - "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", - "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", - "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", - "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", - "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", - "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", - "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", - "Linux x86_64 only, one host; nothing here is macOS evidence." + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/codex-01592-qualification-20260930.json" + "path": "evidence/receipts/syft-1540-qualification-20261003.json" }, { - "id": "notification-types-20260929", + "path": "blueprints/us-equities/supply-chain/receipt.json", + "id": "syft-sdk-inventory-20260919", "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "syft" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", + "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", "limitations": [ - "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", - "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", - "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", - "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", - "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", - "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", - "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", - "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", - "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." - ], - "path": "evidence/receipts/notification-types-20260929.json" + "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", + "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", + "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", + "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", + "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", + "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", + "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", + "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", + "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", + "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." + ] }, { - "id": "login-shell-contract-20260929", + "id": "synthetic-catalyst-contract-20260920", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex" + "duckdb" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", + "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", - "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", - "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", - "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", - "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", - "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", - "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", - "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", - "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + "Protocol thresholds are exploratory choices, not fitted or proven optimal.", + "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", + "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", + "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", + "No provider calls, broker orders, new model turn or net token-savings measurement." ], - "path": "evidence/receipts/login-shell-contract-20260929.json" + "path": "blueprints/us-equities/catalyst-experiment/receipt.json" }, { - "id": "cross-family-review-terminal-lane-20260930", - "kind": "native_model_e2e", + "id": "tavily-research-qualification-20260926", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "omniroute", - "claude-code" + "tavily-cli" ], - "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", - "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", - "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", - "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", - "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", - "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", - "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." + "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", + "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", + "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", + "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", + "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", + "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", + "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", + "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." ], - "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" + "path": "evidence/receipts/tavily-research-qualification-20260926.json" }, { "id": "terminal-experience-20260928", @@ -3716,497 +3882,480 @@ "path": "evidence/receipts/terminal-experience-20260928.json" }, { - "id": "codex-shell-snapshot-cleanup-20260930", - "kind": "artifact_measurement", + "id": "token-native-retained-functional-20260920", + "path": "evidence/receipts/token-native-retained-functional-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "codex" + "context-hub", + "headroom", + "mcp-inspector", + "promptfoo", + "worktrunk" ], - "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", + "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", "limitations": [ - "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", - "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", - "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", - "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." - ], - "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" + "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", + "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", + "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", + "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", + "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", + "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." + ] }, { - "id": "agent-browser-lna-20260930", + "id": "token-practice-artifacts-20260920", "kind": "artifact_measurement", "component_ids": [ "agent-browser", - "playwright-test" - ], - "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", - "limitations": [ - "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", - "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", - "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", - "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." - ], - "path": "evidence/receipts/agent-browser-lna-20260930.json" - }, - { - "id": "guard-k3-verification-20260930", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code" + "ast-grep", + "edgartools", + "markitdown", + "qmd", + "repomix", + "rtk", + "socraticode", + "syft", + "toon" ], - "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", + "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", "limitations": [ - "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", - "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", - "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", - "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1064,7 +1068,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.79.0", + "version": "0.80.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1079,20 +1083,21 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "worktrunk-0800-qualification-20261003" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" ], - "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.161.0", + "version": "0.162.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1112,13 +1117,15 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "otelcol-contrib-0162-qualification-20261003" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib" + "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The recorded scratch version and validate commands exited 0; no host service was switched. Prior 0.161.0 receipts retain their original scope. The dated upstream metadata is in catalogs/landscape/upstream-snapshot.json." }, { "id": "prometheus", @@ -1226,7 +1233,7 @@ "upstream_sources": [ "https://github.com/grafana/grafana" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head." }, { "id": "alertmanager", @@ -1401,10 +1408,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.52.0", + "version": "1.54.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1413,13 +1420,14 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "syft-1540-qualification-20261003" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.52.0" + "https://github.com/anchore/syft/releases/tag/v1.54.0" ], - "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." }, { "id": "alpaca-py", @@ -1682,7 +1690,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.319", + "version": "1.108.327", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1695,7 +1703,7 @@ } } ], - "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1708,13 +1716,14 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "jcodemunch-1108327-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", - "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", + "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" ], - "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From d21bb08726c14dfeb179f6196c3b2f55207fb620 Mon Sep 17 00:00:00 2001 From: Scout Date: Mon, 5 Oct 2026 02:51:52 -0400 Subject: [PATCH 32/50] Currency W1 fix 3: recompute stale architecture pin_source locators; scope Collector history to 0.161.0; complete owner-file descriptions - catalogs/foundation/new-wsl-architecture-20261001.json had 37 distinct pin_source locators, across 74 winner entries, left stale by this PR's manifests/stack.json edits. Each now cites its owner's version or model revision line. All 53 distinct locators were verified. Pins, verdicts and formatting are unchanged. - docs/token-efficiency-stack.json: the opentelemetry-collector-contrib row's returned_result_summary and lifecycle_summary are now bound explicitly to the historical 0.161.0 observation. The selected 0.162.0 keeps its scratch/synthetic qualification scope, release hold and pending host acceptance. A regression test covers it. - install-plan.json and the dated README and SOURCES sections name the Collector/Grafana qualification limits and release holds, and the owner-file list adds this round's catalog edit. Built by GPT-6.1 Sol through the packaged SDK worker (round 642-fix3); committed by the coordinator. The coordinator re-ran the new_wsl suites, build_ecosystem --check and validate: exit 0 each. Co-Authored-By: Claude Opus 5.5 --- .../new-wsl-architecture-20261001.json | 148 +++++++++--------- docs/decisions/2026-10-03-currency-wave-w1.md | 38 ++++- docs/new-wsl-handbook.json | 2 +- docs/new-wsl-handbook.md | 2 +- docs/token-efficiency-stack.json | 4 +- .../new-wsl-handbook-20261001/receipt.json | 30 +++- manifests/evidence.json | 22 +-- tests/test_ecosystem_manifest.py | 60 +++++++ 8 files changed, 211 insertions(+), 95 deletions(-) diff --git a/catalogs/foundation/new-wsl-architecture-20261001.json b/catalogs/foundation/new-wsl-architecture-20261001.json index 8040c1976..cc9b17723 100644 --- a/catalogs/foundation/new-wsl-architecture-20261001.json +++ b/catalogs/foundation/new-wsl-architecture-20261001.json @@ -134,7 +134,7 @@ "component_id": "skills-ref", "repository": "https://github.com/agentskills/agentskills", "pin": "0.1.0", - "pin_source": "manifests/stack.json:1620", + "pin_source": "manifests/stack.json:1628", "install": {"command": "git clone https://github.com/agentskills/agentskills.git \"$STACK_HOME/tools/agentskills\"; git -C \"$STACK_HOME/tools/agentskills\" checkout --detach 69ef37e9424c0a7ea9dd2293b559e43ec8176379; cd \"$STACK_HOME/tools/agentskills/skills-ref\" && uv sync --locked", "kind": "repo_recipe", "source_path": "recipes/README.md"}, "acceptance": {"command": "uv run skills-ref validate \"$SKILL_DIRECTORY\"", "evidence_class": "upstream_example_or_native_operation", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "no GitHub release; PyPI skills-ref 0.1.1 (2026-01-10)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://pypi.org/project/skills-ref/"} @@ -210,7 +210,7 @@ "component_id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", "pin": "0.80.0", - "pin_source": "manifests/stack.json:1067", + "pin_source": "manifests/stack.json:1071", "install": {"command": "gh release view v0.80.0 --repo max-sixty/worktrunk --json assets; gh release download v0.80.0 --repo max-sixty/worktrunk (worktrunk-x86_64-unknown-linux-musl.tar.xz and its checksum asset); sha256sum -c; extract into a versioned prefix", "kind": "repo_recipe", "source_path": "recipes/native-upgrades-20260921.md"}, "acceptance": {"command": "wt list --format json", "evidence_class": "none_recorded", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v0.80.0 (2026-09-27)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "yes", "url": "https://github.com/max-sixty/worktrunk/releases"} @@ -260,7 +260,7 @@ "component_id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", "pin": "0.80.0", - "pin_source": "manifests/stack.json:1067", + "pin_source": "manifests/stack.json:1071", "install": {"command": "gh release view v0.80.0 --repo max-sixty/worktrunk --json assets; gh release download v0.80.0 --repo max-sixty/worktrunk (worktrunk-x86_64-unknown-linux-musl.tar.xz and its checksum asset); sha256sum -c; extract into a versioned prefix", "kind": "repo_recipe", "source_path": "recipes/native-upgrades-20260921.md"}, "acceptance": {"command": "wt list --format json", "evidence_class": "none_recorded", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v0.80.0 (2026-09-27)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "yes", "url": "https://github.com/max-sixty/worktrunk/releases"} @@ -269,7 +269,7 @@ "component_id": "sandbox-runtime", "repository": "https://github.com/anthropics/sandbox-runtime", "pin": "0.0.78", - "pin_source": "manifests/stack.json:865", + "pin_source": "manifests/stack.json:869", "install": { "command": "npm install --global --prefix \"$STACK_HOME/tools/sandbox-runtime-0.0.78\" --ignore-scripts @anthropic-ai/sandbox-runtime@0.0.78", "kind": "repo_recipe", @@ -329,7 +329,7 @@ "component_id": "serena", "repository": "https://github.com/oraios/serena", "pin": "2.0.0.dev0 @ c6fbd1c5932df2494ffa0020af5a9fbe80b82143", - "pin_source": "manifests/stack.json:888", + "pin_source": "manifests/stack.json:892", "install": {"command": "bash adoption/bootstrap-linux.sh --profile token-efficiency", "kind": "repo_recipe", "source_path": "adoption/bootstrap.md"}, "acceptance": {"command": "uvx --from git+https://github.com/oraios/serena@c6fbd1c5932df2494ffa0020af5a9fbe80b82143 serena start-mcp-server --context codex --project-from-cwd (then find_symbol and find_referencing_symbols through the client)", "evidence_class": "upstream_example_or_native_operation", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v1.7.0 (2026-08-09); the pin is a 2.0.0.dev0 development commit 123 commits ahead of that release, so release currency does not apply", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "unknown", "url": "https://github.com/oraios/serena/releases"} @@ -356,7 +356,7 @@ "component_id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", "pin": "1.108.319", - "pin_source": "manifests/stack.json:1685", + "pin_source": "manifests/stack.json:1693", "install": {"command": "eco=\"${ECO_INSTALL_ROOT:-$HOME/.local/share/codex-ecosystem}\"; UV_TOOL_DIR=\"$eco/python-tools\" UV_TOOL_BIN_DIR=\"$eco/bin\" uv tool install --python 3.13 jcodemunch-mcp==1.108.319", "kind": "repo_recipe", "source_path": "recipes/README.md"}, "acceptance": {"command": "a deliberately scoped local code index, then search_symbols and get_symbol_source through jcodemunch-mcp's native MCP tools (called through mcporter): the exact requested function returned (2026-09-20)", "evidence_class": "upstream_example_or_native_operation", "source_path": "evidence/receipts/native-jcodemunch-20260920.json"}, "upstream_currency": {"latest_release": "v1.108.320 (2026-09-30)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "no", "url": "https://github.com/jgravelle/jcodemunch-mcp/releases"} @@ -405,7 +405,7 @@ "component_id": "qmd", "repository": "https://github.com/tobi/qmd", "pin": "2.8.3", - "pin_source": "manifests/stack.json:765", + "pin_source": "manifests/stack.json:769", "install": {"command": "bash adoption/bootstrap-linux.sh --profile token-efficiency", "kind": "repo_recipe", "source_path": "adoption/bootstrap.md"}, "acceptance": {"command": "qmd --index \"$QMD_INDEX\" search 'local code' -c \"$QMD_COLLECTION\" -n 2 --json", "evidence_class": "upstream_example_or_native_operation", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v2.8.3 (2026-08-16)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "yes", "url": "https://github.com/tobi/qmd/releases"} @@ -423,7 +423,7 @@ "component_id": "poppler", "repository": "https://github.com/tsdgeos/poppler_mirror", "pin": "26.09.0", - "pin_source": "manifests/stack.json:1818", + "pin_source": "manifests/stack.json:1827", "install": {"command": "", "kind": "none_recorded", "source_path": "blueprints/convergence-practice/document-ingestion/README.md"}, "acceptance": {"command": "pdftotext -bbox-layout -enc UTF-8 on the frozen source list only", "evidence_class": "local_integration_check", "source_path": "blueprints/convergence-practice/document-ingestion/README.md"}, "upstream_currency": {"latest_release": "26.09.0 on the project's release page (the GitHub mirror lists no tags)", "checked_at": "2026-10-01T07:43Z", "pin_is_latest": "yes", "url": "https://poppler.freedesktop.org/"} @@ -481,7 +481,7 @@ "component_id": "socraticode", "repository": "https://github.com/giancarloerra/SocratiCode", "pin": "1.15.0", - "pin_source": "manifests/stack.json:970", + "pin_source": "manifests/stack.json:974", "install": {"command": "bash adoption/bootstrap-linux.sh --profile token-efficiency", "kind": "repo_recipe", "source_path": "adoption/bootstrap.md"}, "acceptance": {"command": "mcporter --config \"$MCPORTER_CONFIG\" call socraticode.codebase_health --args '{}' --output text --no-oauth", "evidence_class": "upstream_example_or_native_operation", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v1.16.0 (2026-09-28)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "no", "url": "https://github.com/giancarloerra/SocratiCode/releases"} @@ -490,7 +490,7 @@ "component_id": "qdrant", "repository": "https://github.com/qdrant/qdrant", "pin": "1.19.1", - "pin_source": "manifests/stack.json:734", + "pin_source": "manifests/stack.json:738", "install": {"command": "official v1.19.1 archive qdrant-x86_64-unknown-linux-musl.tar.gz, verified against SHA-256 70a40529e2ebe0a2787d574d3a2e28437cfe94f26f24fa419f6ac57b4ae817c9", "kind": "repo_recipe", "source_path": "recipes/README.md"}, "acceptance": {"command": "GET / on the running Qdrant server: it answered with version 1.19.1 at commit 6ab21ca, the catalog pin (host receipt, stage use, result pass)", "evidence_class": "upstream_example_or_native_operation", "source_path": "evidence/hosts/nativestack-5975wx-20260925/nativestack-5975wx-20260925--qdrant--use--20260925.json"}, "upstream_currency": {"latest_release": "v1.19.1 (2026-09-04)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "yes", "url": "https://github.com/qdrant/qdrant/releases"} @@ -499,7 +499,7 @@ "component_id": "vllm", "repository": "https://github.com/vllm-project/vllm", "pin": "0.30.0", - "pin_source": "manifests/stack.json:1037", + "pin_source": "manifests/stack.json:1041", "install": {"command": "uv venv --python 3.13 \"$STACK_HOME/tools/vllm-0.30.0\"; uv pip install --python \"$STACK_HOME/tools/vllm-0.30.0/bin/python\" vllm==0.30.0", "kind": "repo_recipe", "source_path": "recipes/README.md"}, "acceptance": {"command": "curl --fail --silent --show-error http://127.0.0.1:8231/v1/embeddings with the recipe's request body (the new host file moves the port)", "evidence_class": "upstream_example_or_native_operation", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v0.30.0 (2026-09-22)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "yes", "url": "https://github.com/vllm-project/vllm/releases"} @@ -517,7 +517,7 @@ "name": "nvidia/Nemotron-3-Embed-1B-BF16 (embedding model)", "repository": "https://huggingface.co/nvidia/Nemotron-3-Embed-1B-BF16", "pin": "c0c9fea93ea424587517f2c59e20db9f1d6bf615", - "pin_source": "manifests/stack.json:2086", + "pin_source": "manifests/stack.json:2095", "install": {"command": "hf download nvidia/Nemotron-3-Embed-1B-BF16 --revision c0c9fea93ea424587517f2c59e20db9f1d6bf615 --local-dir \"${MODEL_DIRECTORY}\" --max-workers 2 --json", "kind": "repo_recipe", "source_path": "manifests/stack.json"}, "acceptance": {"command": "an embeddings request to the vLLM service with the recipe's request body; the receipt records identical embeddings and identical top-10 code-index results after the switch to vLLM 0.30.0", "evidence_class": "upstream_example_or_native_operation", "source_path": "evidence/receipts/vllm-030-switch-20260925.json"}, "upstream_currency": {"latest_release": "model revision c0c9fea9 (last modified 2026-08-27) is the current head of the model repository", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://huggingface.co/nvidia/Nemotron-3-Embed-1B-BF16"} @@ -625,7 +625,7 @@ "component_id": "tavily-cli", "repository": "https://github.com/tavily-ai/tavily-cli", "pin": "0.1.8", - "pin_source": "manifests/stack.json:1926", + "pin_source": "manifests/stack.json:1935", "install": {"command": "uv tool install 'tavily-cli==0.1.8'", "kind": "repo_recipe", "source_path": "recipes/tavily.md"}, "acceptance": {"command": "tvly search \"Codex CLI Claude Code native agent harness skills official documentation\" --depth basic --max-results 4 --include-domains developers.openai.com,code.claude.com --json", "evidence_class": "upstream_example_or_native_operation", "source_path": "recipes/tavily.md"}, "upstream_currency": {"latest_release": "no GitHub release; PyPI tavily-cli 0.1.8 (2026-09-02)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://pypi.org/project/tavily-cli/"} @@ -643,7 +643,7 @@ "component_id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", "pin": "0.2.7", - "pin_source": "manifests/stack.json:657", + "pin_source": "manifests/stack.json:658", "install": {"command": "gh release download v0.2.7 --repo alphaXiv/OpenResearch (openresearch-cli-x86_64-unknown-linux-musl.tar.xz and its checksum asset); sha256sum -c; extract into a versioned prefix", "kind": "repo_recipe", "source_path": "recipes/native-upgrades-20260921.md"}, "acceptance": {"command": "orx --no-telemetry discover keyword 'agent memory' --published-after 2026-06-21 --published-before 2026-09-19 --limit 3", "evidence_class": "none_recorded", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v0.2.14 (2026-09-30)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "no", "url": "https://github.com/alphaXiv/OpenResearch/releases"} @@ -693,7 +693,7 @@ "component_id": "rtk", "repository": "https://github.com/rtk-ai/rtk", "pin": "0.50.0", - "pin_source": "manifests/stack.json:829", + "pin_source": "manifests/stack.json:833", "install": {"command": "bash adoption/bootstrap-linux.sh --profile token-efficiency", "kind": "repo_recipe", "source_path": "adoption/bootstrap.md"}, "acceptance": {"command": "rtk git log -6; rtk proxy git log -6", "evidence_class": "upstream_example_or_native_operation", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v0.50.0 (2026-09-24)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "yes", "url": "https://github.com/rtk-ai/rtk/releases"} @@ -720,7 +720,7 @@ "component_id": "repomix", "repository": "https://github.com/yamadashy/repomix", "pin": "1.18.1", - "pin_source": "manifests/stack.json:800", + "pin_source": "manifests/stack.json:804", "install": {"command": "bash adoption/bootstrap-linux.sh --profile token-efficiency", "kind": "repo_recipe", "source_path": "adoption/bootstrap.md"}, "acceptance": {"command": "repomix \"$PROJECT_ROOT\" --include 'fixtures/before.py,fixtures/after.py' --style xml --parsable-style --compress --token-count-encoding o200k_base --output \"$STACK_HOME/output/selected-code.xml\"", "evidence_class": "local_integration_check", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v1.18.1 (2026-09-21)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "yes", "url": "https://github.com/yamadashy/repomix/releases"} @@ -729,7 +729,7 @@ "component_id": "toon", "repository": "https://github.com/toon-format/toon", "pin": "4.1.1", - "pin_source": "manifests/stack.json:1007", + "pin_source": "manifests/stack.json:1011", "install": {"command": "bash adoption/bootstrap-linux.sh --profile token-efficiency", "kind": "repo_recipe", "source_path": "adoption/bootstrap.md"}, "acceptance": {"command": "toon fixtures/records.json --stats -o \"$STACK_HOME/output/records.toon\"; toon \"$STACK_HOME/output/records.toon\" --decode --strict -o \"$STACK_HOME/output/records.recovered.json\"", "evidence_class": "local_integration_check", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v4.1.1 (2026-08-05)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "yes", "url": "https://github.com/toon-format/toon/releases"} @@ -792,7 +792,7 @@ "component_id": "promptfoo", "repository": "https://github.com/promptfoo/promptfoo", "pin": "0.123.1", - "pin_source": "manifests/stack.json:708", + "pin_source": "manifests/stack.json:712", "install": {"command": "npm install --global --prefix \"$STACK_HOME/tools/promptfoo-0.123.1\" promptfoo@0.123.1", "kind": "repo_recipe", "source_path": "recipes/README.md"}, "acceptance": {"command": "PROMPTFOO_DISABLE_TELEMETRY=1 promptfoo eval --config \"$EVAL_CONFIG\" --no-cache --no-table --no-progress-bar --no-share --no-write --output \"$EVAL_RESULT\"", "evidence_class": "local_integration_check", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "0.123.1 (2026-09-18)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "yes", "url": "https://github.com/promptfoo/promptfoo/releases"} @@ -801,7 +801,7 @@ "component_id": "playwright-test", "repository": "https://github.com/microsoft/playwright", "pin": "1.63.0", - "pin_source": "manifests/stack.json:1866", + "pin_source": "manifests/stack.json:1875", "install": {"command": "the wsl-application blueprint's pinned lock with the measured pnpm, plus the verified Chrome for Testing archive extracted into tools/chrome-linux64", "kind": "repo_recipe", "source_path": "blueprints/convergence-practice/wsl-application/README.md"}, "acceptance": {"command": "taskset -c 0-3 pnpm exec playwright test", "evidence_class": "local_integration_check", "source_path": "blueprints/convergence-practice/wsl-application/README.md"}, "upstream_currency": {"latest_release": "v1.63.0 (2026-09-04)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "yes", "url": "https://github.com/microsoft/playwright/releases"} @@ -866,7 +866,7 @@ "component_id": "zizmor", "repository": "https://github.com/zizmorcore/zizmor", "pin": "1.30.1", - "pin_source": "manifests/stack.json:1573", + "pin_source": "manifests/stack.json:1581", "install": {"command": "uv tool install zizmor==1.30.1", "kind": "repo_recipe", "source_path": "blueprints/convergence-practice/ci-security/README.md"}, "acceptance": {"command": "env -u GH_TOKEN -u GITHUB_TOKEN -u ZIZMOR_GITHUB_TOKEN zizmor --offline --no-config --no-ignores --no-progress --persona regular --strict-collection --format json --cache-dir \"$OWNED_CACHE\" \"$PROJECT_ROOT/.github/workflows\"", "evidence_class": "upstream_example_or_native_operation", "source_path": "blueprints/convergence-practice/ci-security/README.md"}, "upstream_currency": {"latest_release": "v1.30.1 (2026-09-09)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/zizmorcore/zizmor/releases"} @@ -875,7 +875,7 @@ "component_id": "syft", "repository": "https://github.com/anchore/syft", "pin": "1.54.0", - "pin_source": "manifests/stack.json:1404", + "pin_source": "manifests/stack.json:1411", "install": { "command": "mise use -g syft@1.54.0", "kind": "repo_recipe", @@ -945,7 +945,7 @@ "component_id": "dagu", "repository": "https://github.com/dagucloud/dagu", "pin": "2.16.6", - "pin_source": "manifests/stack.json:1343", + "pin_source": "manifests/stack.json:1350", "install": {"command": "gh release download v2.16.6 --repo dagucloud/dagu (the linux_amd64 archive and checksums.txt); check the checksum, extract and place the binary (the recipe omits this step)", "kind": "repo_recipe", "source_path": "blueprints/us-equities/hosting/README.md"}, "acceptance": {"command": "dagu start --context local --dagu-home \"$RESEARCH_HOME\" --run-id evidence-20260919-ready \"$WORKFLOW\": the three-step equity-research-evidence workflow through the upstream CLI (DuckDB summarized six LEAN simulated events into three orders, then both evidence validators passed; exit 0), and the native history kept its succeeded, failed and cancelled runs after a service restart (Dagu 2.16.6, 2026-09-19)", "evidence_class": "upstream_example_or_native_operation", "source_path": "blueprints/us-equities/hosting/receipt.json"}, "upstream_currency": {"latest_release": "v2.18.1 (2026-09-29)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/dagucloud/dagu/releases"} @@ -954,7 +954,7 @@ "component_id": "systemd", "repository": "https://github.com/systemd/systemd", "pin": "255.4-1ubuntu8.17", - "pin_source": "manifests/stack.json:1456", + "pin_source": "manifests/stack.json:1464", "install": {"command": "", "kind": "none_recorded", "source_path": "blueprints/us-equities/worker-supervision/README.md"}, "acceptance": {"command": "systemd 255 user units on the historical host: the timer started paper-ext-20260929.service at 16:00:05 ET on 2026-09-29, and journalctl --user -o json USER_UNIT=.service and systemctl --user show recorded its exit (status 3, Result=exit-code) and the run of its OnFailure alert unit", "evidence_class": "upstream_example_or_native_operation", "source_path": "blueprints/us-equities/adaptive-paper/trials/ext-20260929/README.md"}, "upstream_currency": {"latest_release": "255.4-1ubuntu8.17 is the published Ubuntu 24.04 (noble) updates and security version; upstream v255 source is cited for semantics only", "checked_at": "2026-10-01T07:43Z", "pin_is_latest": "yes", "url": "https://launchpad.net/ubuntu/noble/+source/systemd"} @@ -1005,7 +1005,7 @@ "component_id": "fastapi", "repository": "https://github.com/fastapi/fastapi", "pin": "0.141.1", - "pin_source": "manifests/stack.json:1769", + "pin_source": "manifests/stack.json:1778", "install": {"command": "make setup; make postgres-install; make postgres-init; make postgres-start", "kind": "repo_recipe", "source_path": "blueprints/convergence-practice/application-delivery/README.md"}, "acceptance": {"command": "make verify", "evidence_class": "local_integration_check", "source_path": "blueprints/convergence-practice/application-delivery/README.md"}, "upstream_currency": {"latest_release": "0.142.2 (2026-09-30)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/fastapi/fastapi/releases"} @@ -1014,7 +1014,7 @@ "component_id": "nextjs", "repository": "https://github.com/vercel/next.js", "pin": "16.3.6", - "pin_source": "manifests/stack.json:1723", + "pin_source": "manifests/stack.json:1732", "install": {"command": "make setup", "kind": "repo_recipe", "source_path": "blueprints/convergence-practice/application-delivery/README.md"}, "acceptance": {"command": "make verify", "evidence_class": "local_integration_check", "source_path": "blueprints/convergence-practice/application-delivery/README.md"}, "upstream_currency": {"latest_release": "v16.3.8 (2026-09-30)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/vercel/next.js/releases"} @@ -1023,7 +1023,7 @@ "component_id": "postgresql", "repository": "https://github.com/postgres/postgres", "pin": "18.6", - "pin_source": "manifests/stack.json:1791", + "pin_source": "manifests/stack.json:1800", "install": {"command": "make postgres-install; make postgres-init; make postgres-start", "kind": "repo_recipe", "source_path": "blueprints/convergence-practice/application-delivery/README.md"}, "acceptance": {"command": "make verify", "evidence_class": "local_integration_check", "source_path": "blueprints/convergence-practice/application-delivery/README.md"}, "upstream_currency": {"latest_release": "18.6 is the current 18.x release on the project's versioning page (the GitHub mirror publishes tags only)", "checked_at": "2026-10-01T07:43Z", "pin_is_latest": "yes", "url": "https://www.postgresql.org/support/versioning/"} @@ -1071,7 +1071,7 @@ "component_id": "restic", "repository": "https://github.com/restic/restic", "pin": "0.19.1", - "pin_source": "manifests/stack.json:1315", + "pin_source": "manifests/stack.json:1322", "install": {"command": "the official restic_0.19.1_linux_amd64.bz2 release asset, its detached signature verified against the upstream primary fingerprint", "kind": "upstream_documented", "source_path": "blueprints/us-equities/hosting/backup/README.md"}, "acceptance": {"command": "restic check and restore of two synthetic snapshots on a GitHub-hosted runner, after seven unchanged upstream restic tests passed there", "evidence_class": "upstream_example_or_native_operation", "source_path": "evidence/receipts/native-offhost-restic-20260920.json"}, "upstream_currency": {"latest_release": "v0.19.1 (2026-07-05)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/restic/restic/releases"} @@ -1126,7 +1126,7 @@ "component_id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", "pin": "0.162.0", - "pin_source": "manifests/stack.json:1095", + "pin_source": "manifests/stack.json:1100", "install": {"command": "bash evidence/artifacts/new-wsl-install-plan-20261002/install.sh --only otel-collector-contrib", "kind": "repo_recipe", "source_path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md"}, "acceptance": {"command": "bash evidence/artifacts/new-wsl-install-plan-20261002/accept.sh --only otel-collector-contrib --stage post_install; bash evidence/artifacts/new-wsl-install-plan-20261002/accept.sh --only otel-collector-contrib --stage service_health (revised G4 commands UNRUN on a distribution)", "evidence_class": "upstream_example_or_native_operation", "source_path": "docs/decisions/2026-10-04-2604-e2e-fix-wave-g4-observability.md"}, "upstream_currency": {"latest_release": "v0.162.0 (2026-09-29)", "checked_at": "2026-10-04T21:22:09Z", "pin_is_latest": "yes", "url": "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases"} @@ -1135,7 +1135,7 @@ "component_id": "prometheus", "repository": "https://github.com/prometheus/prometheus", "pin": "3.15.0", - "pin_source": "manifests/stack.json:1126", + "pin_source": "manifests/stack.json:1133", "install": {"command": "python3 observability/backends/install.py --tools-root \"$STACK_TOOLS_ROOT\" --evidence-dir \"$STACK_EVIDENCE_ROOT\"", "kind": "repo_recipe", "source_path": "observability/backends/README.md"}, "acceptance": {"command": "promtool check config and check rules (14 rules) on the live files, systemd-analyze --user verify of the rendered unit, then daemon-reload and restart of ecosystem-prometheus.service: /-/ready answered 0.86 s after the restart, buildinfo read 3.15.0, the seven targets were up and the 14 rules evaluated with health ok (2026-09-26)", "evidence_class": "upstream_example_or_native_operation", "source_path": "evidence/receipts/prometheus-3150-qualification-20260926.json"}, "upstream_currency": {"latest_release": "v3.15.0 (2026-09-25)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/prometheus/prometheus/releases"} @@ -1144,7 +1144,7 @@ "component_id": "loki", "repository": "https://github.com/grafana/loki", "pin": "3.7.8", - "pin_source": "manifests/stack.json:1164", + "pin_source": "manifests/stack.json:1171", "install": {"command": "python3 observability/backends/install.py --tools-root \"$STACK_TOOLS_ROOT\" --evidence-dir \"$STACK_EVIDENCE_ROOT\"", "kind": "repo_recipe", "source_path": "observability/backends/README.md"}, "acceptance": {"command": "loki -config.file=\"$LOKI_CONFIG\" -verify-config=true (exit 0: the final native Loki OTLP structured-metadata configuration accepted)", "evidence_class": "structural_validation", "source_path": "observability/receipt.json"}, "upstream_currency": {"latest_release": "v3.7.8 (2026-09-17)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/grafana/loki/releases"} @@ -1253,7 +1253,7 @@ "component_id": "mcporter", "repository": "https://github.com/openclaw/mcporter", "pin": "0.14.1", - "pin_source": "manifests/stack.json:631", + "pin_source": "manifests/stack.json:632", "install": {"command": "bash adoption/bootstrap-linux.sh --profile token-efficiency", "kind": "repo_recipe", "source_path": "adoption/bootstrap.md"}, "acceptance": {"command": "mcporter --config \"$MCPORTER_CONFIG\" list socraticode --brief --no-oauth", "evidence_class": "upstream_example_or_native_operation", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v0.14.1 (2026-09-24)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/openclaw/mcporter/releases"} @@ -1356,7 +1356,7 @@ "component_id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", "pin": "0.80.0", - "pin_source": "manifests/stack.json:1067", + "pin_source": "manifests/stack.json:1071", "install": {"command": "gh release view v0.80.0 --repo max-sixty/worktrunk --json assets; gh release download v0.80.0 --repo max-sixty/worktrunk (worktrunk-x86_64-unknown-linux-musl.tar.xz and its checksum asset); sha256sum -c; extract into a versioned prefix", "kind": "repo_recipe", "source_path": "recipes/native-upgrades-20260921.md"}, "acceptance": {"command": "wt list --format json", "evidence_class": "none_recorded", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v0.80.0 (2026-09-27)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "yes", "url": "https://github.com/max-sixty/worktrunk/releases"} @@ -1430,7 +1430,7 @@ "component_id": "edgartools", "repository": "https://github.com/dgunning/edgartools", "pin": "5.58.0", - "pin_source": "manifests/stack.json:1524", + "pin_source": "manifests/stack.json:1532", "install": {"command": "uv venv \"$CATALYST_RUNTIME/sdk\" --python 3.13; uv pip install --python \"$CATALYST_RUNTIME/sdk/bin/python\" -r blueprints/us-equities/catalyst-provenance/requirements.lock", "kind": "repo_recipe", "source_path": "blueprints/us-equities/catalyst-provenance/README.md"}, "acceptance": {"command": "native_edgar.py with the private SEC contact as EDGAR_IDENTITY: upstream edgar.get_filings and native bounded Filings.to_context completed the full quarterly-index request (EdgarTools 5.58.0; 371 8-K/8-K/A index rows for 2020-03-02; repeated on a second WSL2 host on 2026-09-24)", "evidence_class": "upstream_example_or_native_operation", "source_path": "blueprints/us-equities/catalyst-provenance/access-resolution.md"}, "upstream_currency": {"latest_release": "v5.59.1 (2026-09-26)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/dgunning/edgartools/releases"} @@ -1439,7 +1439,7 @@ "component_id": "exchange-calendars", "repository": "https://github.com/gerrymanoim/exchange_calendars", "pin": "4.13.2", - "pin_source": "manifests/stack.json:1552", + "pin_source": "manifests/stack.json:1560", "install": {"command": "uv pip install --python \"$GATE_TOOL_DIR/.venv/bin/python3\" pandera==0.33.1 pandas exchange_calendars==4.13.2 pyarrow duckdb==1.5.5", "kind": "repo_recipe", "source_path": "blueprints/us-equities/data/README.md"}, "acceptance": {"command": "\"$GATE_TOOL_DIR/.venv/bin/python3\" promotion_gate.py --input snapshot.parquet --out gate-result.json --calendar XNYS", "evidence_class": "local_integration_check", "source_path": "blueprints/us-equities/data/README.md"}, "upstream_currency": {"latest_release": "4.13.2 (2026-03-10)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/gerrymanoim/exchange_calendars/releases"} @@ -1448,7 +1448,7 @@ "component_id": "duckdb", "repository": "https://github.com/duckdb/duckdb", "pin": "1.5.5", - "pin_source": "manifests/stack.json:1283", + "pin_source": "manifests/stack.json:1290", "install": {"command": "uv pip install --python \"$GATE_TOOL_DIR/.venv/bin/python3\" pandera==0.33.1 pandas exchange_calendars==4.13.2 pyarrow duckdb==1.5.5", "kind": "repo_recipe", "source_path": "blueprints/us-equities/data/README.md"}, "acceptance": {"command": "\"$GATE_TOOL_DIR/.venv/bin/python3\" promotion_gate.py --input snapshot.parquet --out gate-result.json", "evidence_class": "local_integration_check", "source_path": "blueprints/us-equities/data/README.md"}, "upstream_currency": {"latest_release": "v1.5.6 (2026-09-28)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/duckdb/duckdb/releases"} @@ -1507,7 +1507,7 @@ "component_id": "edgartools", "repository": "https://github.com/dgunning/edgartools", "pin": "5.58.0", - "pin_source": "manifests/stack.json:1524", + "pin_source": "manifests/stack.json:1532", "install": {"command": "uv venv \"$CATALYST_RUNTIME/sdk\" --python 3.13; uv pip install --python \"$CATALYST_RUNTIME/sdk/bin/python\" -r blueprints/us-equities/catalyst-provenance/requirements.lock", "kind": "repo_recipe", "source_path": "blueprints/us-equities/catalyst-provenance/README.md"}, "acceptance": {"command": "native_edgar.py with the private SEC contact as EDGAR_IDENTITY: upstream edgar.get_filings and native bounded Filings.to_context completed the full quarterly-index request (EdgarTools 5.58.0; 371 8-K/8-K/A index rows for 2020-03-02; repeated on a second WSL2 host on 2026-09-24)", "evidence_class": "upstream_example_or_native_operation", "source_path": "blueprints/us-equities/catalyst-provenance/access-resolution.md"}, "upstream_currency": {"latest_release": "v5.59.1 (2026-09-26)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/dgunning/edgartools/releases"} @@ -1516,7 +1516,7 @@ "component_id": "duckdb", "repository": "https://github.com/duckdb/duckdb", "pin": "1.5.5", - "pin_source": "manifests/stack.json:1283", + "pin_source": "manifests/stack.json:1290", "install": {"command": "uv pip install --python \"$GATE_TOOL_DIR/.venv/bin/python3\" pandera==0.33.1 pandas exchange_calendars==4.13.2 pyarrow duckdb==1.5.5", "kind": "repo_recipe", "source_path": "blueprints/us-equities/data/README.md"}, "acceptance": {"command": "\"$GATE_TOOL_DIR/.venv/bin/python3\" promotion_gate.py --input snapshot.parquet --out gate-result.json", "evidence_class": "local_integration_check", "source_path": "blueprints/us-equities/data/README.md"}, "upstream_currency": {"latest_release": "v1.5.6 (2026-09-28)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/duckdb/duckdb/releases"} @@ -1525,7 +1525,7 @@ "component_id": "exchange-calendars", "repository": "https://github.com/gerrymanoim/exchange_calendars", "pin": "4.13.2", - "pin_source": "manifests/stack.json:1552", + "pin_source": "manifests/stack.json:1560", "install": {"command": "uv pip install --python \"$GATE_TOOL_DIR/.venv/bin/python3\" pandera==0.33.1 pandas exchange_calendars==4.13.2 pyarrow duckdb==1.5.5", "kind": "repo_recipe", "source_path": "blueprints/us-equities/data/README.md"}, "acceptance": {"command": "\"$GATE_TOOL_DIR/.venv/bin/python3\" promotion_gate.py --input snapshot.parquet --out gate-result.json --calendar XNYS", "evidence_class": "local_integration_check", "source_path": "blueprints/us-equities/data/README.md"}, "upstream_currency": {"latest_release": "4.13.2 (2026-03-10)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/gerrymanoim/exchange_calendars/releases"} @@ -1584,7 +1584,7 @@ "component_id": "duckdb", "repository": "https://github.com/duckdb/duckdb", "pin": "1.5.5", - "pin_source": "manifests/stack.json:1283", + "pin_source": "manifests/stack.json:1290", "install": {"command": "uv pip install --python \"$GATE_TOOL_DIR/.venv/bin/python3\" pandera==0.33.1 pandas exchange_calendars==4.13.2 pyarrow duckdb==1.5.5", "kind": "repo_recipe", "source_path": "blueprints/us-equities/data/README.md"}, "acceptance": {"command": "\"$GATE_TOOL_DIR/.venv/bin/python3\" promotion_gate.py --input snapshot.parquet --out gate-result.json", "evidence_class": "local_integration_check", "source_path": "blueprints/us-equities/data/README.md"}, "upstream_currency": {"latest_release": "v1.5.6 (2026-09-28)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/duckdb/duckdb/releases"} @@ -1602,7 +1602,7 @@ "component_id": "edgartools", "repository": "https://github.com/dgunning/edgartools", "pin": "5.58.0", - "pin_source": "manifests/stack.json:1524", + "pin_source": "manifests/stack.json:1532", "install": {"command": "uv venv \"$CATALYST_RUNTIME/sdk\" --python 3.13; uv pip install --python \"$CATALYST_RUNTIME/sdk/bin/python\" -r blueprints/us-equities/catalyst-provenance/requirements.lock", "kind": "repo_recipe", "source_path": "blueprints/us-equities/catalyst-provenance/README.md"}, "acceptance": {"command": "native_edgar.py with the private SEC contact as EDGAR_IDENTITY: upstream edgar.get_filings and native bounded Filings.to_context completed the full quarterly-index request (EdgarTools 5.58.0; 371 8-K/8-K/A index rows for 2020-03-02; repeated on a second WSL2 host on 2026-09-24)", "evidence_class": "upstream_example_or_native_operation", "source_path": "blueprints/us-equities/catalyst-provenance/access-resolution.md"}, "upstream_currency": {"latest_release": "v5.59.1 (2026-09-26)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/dgunning/edgartools/releases"} @@ -1611,7 +1611,7 @@ "component_id": "exchange-calendars", "repository": "https://github.com/gerrymanoim/exchange_calendars", "pin": "4.13.2", - "pin_source": "manifests/stack.json:1552", + "pin_source": "manifests/stack.json:1560", "install": {"command": "uv pip install --python \"$GATE_TOOL_DIR/.venv/bin/python3\" pandera==0.33.1 pandas exchange_calendars==4.13.2 pyarrow duckdb==1.5.5", "kind": "repo_recipe", "source_path": "blueprints/us-equities/data/README.md"}, "acceptance": {"command": "\"$GATE_TOOL_DIR/.venv/bin/python3\" promotion_gate.py --input snapshot.parquet --out gate-result.json --calendar XNYS", "evidence_class": "local_integration_check", "source_path": "blueprints/us-equities/data/README.md"}, "upstream_currency": {"latest_release": "4.13.2 (2026-03-10)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/gerrymanoim/exchange_calendars/releases"} @@ -1658,7 +1658,7 @@ "component_id": "dagu", "repository": "https://github.com/dagucloud/dagu", "pin": "2.16.6", - "pin_source": "manifests/stack.json:1343", + "pin_source": "manifests/stack.json:1350", "install": {"command": "gh release download v2.16.6 --repo dagucloud/dagu (the linux_amd64 archive and checksums.txt); check the checksum, extract and place the binary", "kind": "repo_recipe", "source_path": "blueprints/us-equities/hosting/README.md"}, "acceptance": {"command": "dagu start --context local --dagu-home \"$RESEARCH_HOME\" --run-id evidence-20260919-ready \"$WORKFLOW\": the three-step equity-research-evidence workflow through the upstream CLI (DuckDB summarized six LEAN simulated events into three orders, then both evidence validators passed; exit 0), and the native history kept its succeeded, failed and cancelled runs after a service restart (Dagu 2.16.6, 2026-09-19)", "evidence_class": "upstream_example_or_native_operation", "source_path": "blueprints/us-equities/hosting/receipt.json"}, "upstream_currency": {"latest_release": "v2.18.1 (2026-09-29)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/dagucloud/dagu/releases"} @@ -1685,7 +1685,7 @@ "component_id": "systemd", "repository": "https://github.com/systemd/systemd", "pin": "255.4-1ubuntu8.17", - "pin_source": "manifests/stack.json:1456", + "pin_source": "manifests/stack.json:1464", "install": {"command": "", "kind": "none_recorded", "source_path": "blueprints/us-equities/worker-supervision/README.md"}, "acceptance": {"command": "systemd 255 user units on the historical host: the timer started paper-ext-20260929.service at 16:00:05 ET on 2026-09-29, and journalctl --user -o json USER_UNIT=.service and systemctl --user show recorded its exit (status 3, Result=exit-code) and the run of its OnFailure alert unit", "evidence_class": "upstream_example_or_native_operation", "source_path": "blueprints/us-equities/adaptive-paper/trials/ext-20260929/README.md"}, "upstream_currency": {"latest_release": "255.4-1ubuntu8.17 is the published Ubuntu 24.04 (noble) updates and security version", "checked_at": "2026-10-01T07:43Z", "pin_is_latest": "yes", "url": "https://launchpad.net/ubuntu/noble/+source/systemd"} @@ -1694,7 +1694,7 @@ "component_id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", "pin": "0.162.0", - "pin_source": "manifests/stack.json:1095", + "pin_source": "manifests/stack.json:1100", "install": {"command": "bash evidence/artifacts/new-wsl-install-plan-20261002/install.sh --only otel-collector-contrib", "kind": "repo_recipe", "source_path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md"}, "acceptance": {"command": "bash evidence/artifacts/new-wsl-install-plan-20261002/accept.sh --only otel-collector-contrib --stage post_install; bash evidence/artifacts/new-wsl-install-plan-20261002/accept.sh --only otel-collector-contrib --stage service_health (revised G4 commands UNRUN on a distribution)", "evidence_class": "upstream_example_or_native_operation", "source_path": "docs/decisions/2026-10-04-2604-e2e-fix-wave-g4-observability.md"}, "upstream_currency": {"latest_release": "v0.162.0 (2026-09-29)", "checked_at": "2026-10-04T21:22:09Z", "pin_is_latest": "yes", "url": "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases"} @@ -1703,7 +1703,7 @@ "component_id": "prometheus", "repository": "https://github.com/prometheus/prometheus", "pin": "3.15.0", - "pin_source": "manifests/stack.json:1126", + "pin_source": "manifests/stack.json:1133", "install": {"command": "python3 observability/backends/install.py --tools-root \"$STACK_TOOLS_ROOT\" --evidence-dir \"$STACK_EVIDENCE_ROOT\"", "kind": "repo_recipe", "source_path": "observability/backends/README.md"}, "acceptance": {"command": "promtool check config and check rules (14 rules) on the live files, systemd-analyze --user verify of the rendered unit, then daemon-reload and restart of ecosystem-prometheus.service: /-/ready answered 0.86 s after the restart, buildinfo read 3.15.0, the seven targets were up and the 14 rules evaluated with health ok (2026-09-26)", "evidence_class": "upstream_example_or_native_operation", "source_path": "evidence/receipts/prometheus-3150-qualification-20260926.json"}, "upstream_currency": {"latest_release": "v3.15.0 (2026-09-25)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/prometheus/prometheus/releases"} @@ -1712,7 +1712,7 @@ "component_id": "loki", "repository": "https://github.com/grafana/loki", "pin": "3.7.8", - "pin_source": "manifests/stack.json:1164", + "pin_source": "manifests/stack.json:1171", "install": {"command": "python3 observability/backends/install.py --tools-root \"$STACK_TOOLS_ROOT\" --evidence-dir \"$STACK_EVIDENCE_ROOT\"", "kind": "repo_recipe", "source_path": "observability/backends/README.md"}, "acceptance": {"command": "loki -config.file=\"$LOKI_CONFIG\" -verify-config=true (exit 0: the final native Loki OTLP structured-metadata configuration accepted)", "evidence_class": "structural_validation", "source_path": "observability/receipt.json"}, "upstream_currency": {"latest_release": "v3.7.8 (2026-09-17)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/grafana/loki/releases"} @@ -1721,7 +1721,7 @@ "component_id": "grafana", "repository": "https://github.com/grafana/grafana", "pin": "13.2.3", - "pin_source": "manifests/stack.json:1201", + "pin_source": "manifests/stack.json:1208", "install": {"command": "bash evidence/artifacts/new-wsl-install-plan-20261002/install.sh --only grafana", "kind": "repo_recipe", "source_path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md"}, "acceptance": {"command": "bash evidence/artifacts/new-wsl-install-plan-20261002/accept.sh --only grafana --stage post_install; bash evidence/artifacts/new-wsl-install-plan-20261002/accept.sh --only grafana --stage service_health (revised G4 commands UNRUN on a distribution)", "evidence_class": "upstream_example_or_native_operation", "source_path": "docs/decisions/2026-10-04-2604-e2e-fix-wave-g4-observability.md"}, "upstream_currency": {"latest_release": "v13.2.3 (2026-09-29)", "checked_at": "2026-10-04T21:22:09Z", "pin_is_latest": "yes", "url": "https://github.com/grafana/grafana/releases"} @@ -1730,7 +1730,7 @@ "component_id": "restic", "repository": "https://github.com/restic/restic", "pin": "0.19.1", - "pin_source": "manifests/stack.json:1315", + "pin_source": "manifests/stack.json:1322", "install": {"command": "the official restic_0.19.1_linux_amd64.bz2 release asset, its detached signature verified against the upstream primary fingerprint", "kind": "upstream_documented", "source_path": "blueprints/us-equities/hosting/backup/README.md"}, "acceptance": {"command": "restic check and restore of two synthetic snapshots on a GitHub-hosted runner, after seven unchanged upstream restic tests passed there", "evidence_class": "upstream_example_or_native_operation", "source_path": "evidence/receipts/native-offhost-restic-20260920.json"}, "upstream_currency": {"latest_release": "v0.19.1 (2026-07-05)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/restic/restic/releases"} @@ -1789,7 +1789,7 @@ "role": "SEC filing acquisition and parsing", "repository": "https://github.com/dgunning/edgartools", "pin": "5.58.0", - "pin_source": "manifests/stack.json:1524", + "pin_source": "manifests/stack.json:1532", "install": {"command": "uv venv \"$CATALYST_RUNTIME/sdk\" --python 3.13; uv pip install --python \"$CATALYST_RUNTIME/sdk/bin/python\" -r blueprints/us-equities/catalyst-provenance/requirements.lock", "kind": "repo_recipe", "source_path": "blueprints/us-equities/catalyst-provenance/README.md"}, "acceptance": {"command": "native_edgar.py with the private SEC contact as EDGAR_IDENTITY: upstream edgar.get_filings and native bounded Filings.to_context completed the full quarterly-index request (EdgarTools 5.58.0; 371 8-K/8-K/A index rows for 2020-03-02; repeated on a second WSL2 host on 2026-09-24)", "evidence_class": "upstream_example_or_native_operation", "source_path": "blueprints/us-equities/catalyst-provenance/access-resolution.md"}, "upstream_currency": {"latest_release": "v5.59.1 (2026-09-26)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/dgunning/edgartools/releases"} @@ -1799,7 +1799,7 @@ "role": "portfolio models and chronological evaluation", "repository": "https://github.com/skfolio/skfolio", "pin": "1.2.9", - "pin_source": "manifests/stack.json:1501", + "pin_source": "manifests/stack.json:1509", "install": {"command": "uv venv --python \"$PYTHON\" \"$WAVE_DIR/venv\"; uv pip sync --python \"$WAVE_DIR/venv/bin/python\" --require-hashes blueprints/us-equities/research-evaluation/requirements.lock", "kind": "repo_recipe", "source_path": "blueprints/us-equities/research-evaluation/README.md"}, "acceptance": {"command": "\"$WAVE_DIR/venv/bin/python\" blueprints/us-equities/research-evaluation/evaluate.py --lean-source \"$LEAN_SOURCE\" --out \"$WAVE_DIR/run-1\" (the receipt: native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation)", "evidence_class": "local_integration_check", "source_path": "blueprints/us-equities/research-evaluation/receipt.json"}, "upstream_currency": {"latest_release": "v1.4.10 (2026-09-30)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/skfolio/skfolio/releases"} @@ -1859,7 +1859,7 @@ "role": "frozen comparison oracle, not the destination", "repository": "https://github.com/QuantConnect/Lean", "pin": "985ef30 with documented dependency remediation", - "pin_source": "manifests/stack.json:1376", + "pin_source": "manifests/stack.json:1383", "install": {"command": "git clone https://github.com/QuantConnect/Lean.git \"$LEAN_SOURCE\" at the pinned commit, built with the verified .NET 10 SDK 10.0.401", "kind": "repo_recipe", "source_path": "blueprints/us-equities/engine/README.md"}, "acceptance": {"command": "\"$DOTNET_ROOT/dotnet\" QuantConnect.Lean.Launcher.dll (from Launcher/bin/Debug, with Launcher/config.json unchanged)", "evidence_class": "upstream_example_or_native_operation", "source_path": "blueprints/us-equities/engine/README.md"}, "upstream_currency": {"latest_release": "GitHub releases stop at v2.4.0.1 (2017-08-08); the default branch is 24 commits ahead of the pinned commit", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/QuantConnect/Lean/releases"} @@ -1954,7 +1954,7 @@ "role": "frozen comparison oracle", "repository": "https://github.com/QuantConnect/Lean", "pin": "985ef30 with documented dependency remediation", - "pin_source": "manifests/stack.json:1376", + "pin_source": "manifests/stack.json:1383", "install": {"command": "git clone https://github.com/QuantConnect/Lean.git \"$LEAN_SOURCE\" at the pinned commit, built with the verified .NET 10 SDK 10.0.401", "kind": "repo_recipe", "source_path": "blueprints/us-equities/engine/README.md"}, "acceptance": {"command": "\"$DOTNET_ROOT/dotnet\" QuantConnect.Lean.Launcher.dll (from Launcher/bin/Debug, with Launcher/config.json unchanged)", "evidence_class": "upstream_example_or_native_operation", "source_path": "blueprints/us-equities/engine/README.md"}, "upstream_currency": {"latest_release": "GitHub releases stop at v2.4.0.1 (2017-08-08); the default branch is 24 commits ahead of the pinned commit", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/QuantConnect/Lean/releases"} @@ -2019,7 +2019,7 @@ "role": "comparison oracle", "repository": "https://github.com/QuantConnect/Lean", "pin": "985ef30 with documented dependency remediation", - "pin_source": "manifests/stack.json:1376", + "pin_source": "manifests/stack.json:1383", "install": {"command": "git clone https://github.com/QuantConnect/Lean.git \"$LEAN_SOURCE\" at the pinned commit, built with the verified .NET 10 SDK 10.0.401", "kind": "repo_recipe", "source_path": "blueprints/us-equities/engine/README.md"}, "acceptance": {"command": "\"$DOTNET_ROOT/dotnet\" QuantConnect.Lean.Launcher.dll (from Launcher/bin/Debug, with Launcher/config.json unchanged)", "evidence_class": "upstream_example_or_native_operation", "source_path": "blueprints/us-equities/engine/README.md"}, "upstream_currency": {"latest_release": "GitHub releases stop at v2.4.0.1 (2017-08-08); the default branch is 24 commits ahead of the pinned commit", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/QuantConnect/Lean/releases"} @@ -2039,7 +2039,7 @@ "role": "walk-forward splitter only; winner in one place of the layer entry and conditional in another", "repository": "https://github.com/skfolio/skfolio", "pin": "1.2.9", - "pin_source": "manifests/stack.json:1501", + "pin_source": "manifests/stack.json:1509", "install": {"command": "uv venv --python \"$PYTHON\" \"$WAVE_DIR/venv\"; uv pip sync --python \"$WAVE_DIR/venv/bin/python\" --require-hashes blueprints/us-equities/research-evaluation/requirements.lock", "kind": "repo_recipe", "source_path": "blueprints/us-equities/research-evaluation/README.md"}, "acceptance": {"command": "\"$WAVE_DIR/venv/bin/python\" blueprints/us-equities/research-evaluation/evaluate.py --lean-source \"$LEAN_SOURCE\" --out \"$WAVE_DIR/run-1\"", "evidence_class": "local_integration_check", "source_path": "blueprints/us-equities/research-evaluation/receipt.json"}, "upstream_currency": {"latest_release": "v1.4.10 (2026-09-30)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/skfolio/skfolio/releases"} @@ -2102,7 +2102,7 @@ "component_id": "dagu", "repository": "https://github.com/dagucloud/dagu", "pin": "2.16.6", - "pin_source": "manifests/stack.json:1343", + "pin_source": "manifests/stack.json:1350", "install": {"command": "gh release download v2.16.6 --repo dagucloud/dagu (the linux_amd64 archive and checksums.txt); check the checksum, extract and place the binary", "kind": "repo_recipe", "source_path": "blueprints/us-equities/hosting/README.md"}, "acceptance": {"command": "dagu start --context local --dagu-home \"$RESEARCH_HOME\" --run-id evidence-20260919-ready \"$WORKFLOW\": the three-step equity-research-evidence workflow through the upstream CLI (DuckDB summarized six LEAN simulated events into three orders, then both evidence validators passed; exit 0), and the native history kept its succeeded, failed and cancelled runs after a service restart (Dagu 2.16.6, 2026-09-19)", "evidence_class": "upstream_example_or_native_operation", "source_path": "blueprints/us-equities/hosting/receipt.json"}, "upstream_currency": {"latest_release": "v2.18.1 (2026-09-29)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/dagucloud/dagu/releases"} @@ -2111,7 +2111,7 @@ "component_id": "systemd", "repository": "https://github.com/systemd/systemd", "pin": "255.4-1ubuntu8.17", - "pin_source": "manifests/stack.json:1456", + "pin_source": "manifests/stack.json:1464", "install": {"command": "", "kind": "none_recorded", "source_path": "blueprints/us-equities/worker-supervision/README.md"}, "acceptance": {"command": "systemd 255 user units on the historical host: the timer started paper-ext-20260929.service at 16:00:05 ET on 2026-09-29, and journalctl --user -o json USER_UNIT=.service and systemctl --user show recorded its exit (status 3, Result=exit-code) and the run of its OnFailure alert unit", "evidence_class": "upstream_example_or_native_operation", "source_path": "blueprints/us-equities/adaptive-paper/trials/ext-20260929/README.md"}, "upstream_currency": {"latest_release": "255.4-1ubuntu8.17 is the published Ubuntu 24.04 (noble) updates and security version", "checked_at": "2026-10-01T07:43Z", "pin_is_latest": "yes", "url": "https://launchpad.net/ubuntu/noble/+source/systemd"} @@ -2120,7 +2120,7 @@ "component_id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", "pin": "0.162.0", - "pin_source": "manifests/stack.json:1095", + "pin_source": "manifests/stack.json:1100", "install": {"command": "bash evidence/artifacts/new-wsl-install-plan-20261002/install.sh --only otel-collector-contrib", "kind": "repo_recipe", "source_path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md"}, "acceptance": {"command": "bash evidence/artifacts/new-wsl-install-plan-20261002/accept.sh --only otel-collector-contrib --stage post_install; bash evidence/artifacts/new-wsl-install-plan-20261002/accept.sh --only otel-collector-contrib --stage service_health (revised G4 commands UNRUN on a distribution)", "evidence_class": "upstream_example_or_native_operation", "source_path": "docs/decisions/2026-10-04-2604-e2e-fix-wave-g4-observability.md"}, "upstream_currency": {"latest_release": "v0.162.0 (2026-09-29)", "checked_at": "2026-10-04T21:22:09Z", "pin_is_latest": "yes", "url": "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases"} @@ -2129,7 +2129,7 @@ "component_id": "prometheus", "repository": "https://github.com/prometheus/prometheus", "pin": "3.15.0", - "pin_source": "manifests/stack.json:1126", + "pin_source": "manifests/stack.json:1133", "install": {"command": "python3 observability/backends/install.py --tools-root \"$STACK_TOOLS_ROOT\" --evidence-dir \"$STACK_EVIDENCE_ROOT\"", "kind": "repo_recipe", "source_path": "observability/backends/README.md"}, "acceptance": {"command": "promtool check config and check rules (14 rules) on the live files, systemd-analyze --user verify of the rendered unit, then daemon-reload and restart of ecosystem-prometheus.service: /-/ready answered 0.86 s after the restart, buildinfo read 3.15.0, the seven targets were up and the 14 rules evaluated with health ok (2026-09-26)", "evidence_class": "upstream_example_or_native_operation", "source_path": "evidence/receipts/prometheus-3150-qualification-20260926.json"}, "upstream_currency": {"latest_release": "v3.15.0 (2026-09-25)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/prometheus/prometheus/releases"} @@ -2138,7 +2138,7 @@ "component_id": "loki", "repository": "https://github.com/grafana/loki", "pin": "3.7.8", - "pin_source": "manifests/stack.json:1164", + "pin_source": "manifests/stack.json:1171", "install": {"command": "python3 observability/backends/install.py --tools-root \"$STACK_TOOLS_ROOT\" --evidence-dir \"$STACK_EVIDENCE_ROOT\"", "kind": "repo_recipe", "source_path": "observability/backends/README.md"}, "acceptance": {"command": "loki -config.file=\"$LOKI_CONFIG\" -verify-config=true (exit 0: the final native Loki OTLP structured-metadata configuration accepted)", "evidence_class": "structural_validation", "source_path": "observability/receipt.json"}, "upstream_currency": {"latest_release": "v3.7.8 (2026-09-17)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/grafana/loki/releases"} @@ -2147,7 +2147,7 @@ "component_id": "grafana", "repository": "https://github.com/grafana/grafana", "pin": "13.2.3", - "pin_source": "manifests/stack.json:1201", + "pin_source": "manifests/stack.json:1208", "install": {"command": "bash evidence/artifacts/new-wsl-install-plan-20261002/install.sh --only grafana", "kind": "repo_recipe", "source_path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md"}, "acceptance": {"command": "bash evidence/artifacts/new-wsl-install-plan-20261002/accept.sh --only grafana --stage post_install; bash evidence/artifacts/new-wsl-install-plan-20261002/accept.sh --only grafana --stage service_health (revised G4 commands UNRUN on a distribution)", "evidence_class": "upstream_example_or_native_operation", "source_path": "docs/decisions/2026-10-04-2604-e2e-fix-wave-g4-observability.md"}, "upstream_currency": {"latest_release": "v13.2.3 (2026-09-29)", "checked_at": "2026-10-04T21:22:09Z", "pin_is_latest": "yes", "url": "https://github.com/grafana/grafana/releases"} @@ -2156,7 +2156,7 @@ "component_id": "restic", "repository": "https://github.com/restic/restic", "pin": "0.19.1", - "pin_source": "manifests/stack.json:1315", + "pin_source": "manifests/stack.json:1322", "install": {"command": "the official restic_0.19.1_linux_amd64.bz2 release asset, its detached signature verified against the upstream primary fingerprint", "kind": "upstream_documented", "source_path": "blueprints/us-equities/hosting/backup/README.md"}, "acceptance": {"command": "restic check and restore of two synthetic snapshots on a GitHub-hosted runner, after seven unchanged upstream restic tests passed there", "evidence_class": "upstream_example_or_native_operation", "source_path": "evidence/receipts/native-offhost-restic-20260920.json"}, "upstream_currency": {"latest_release": "v0.19.1 (2026-07-05)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/restic/restic/releases"} @@ -2251,7 +2251,7 @@ "component_id": "socraticode", "repository": "https://github.com/giancarloerra/SocratiCode", "pin": "1.15.0", - "pin_source": "manifests/stack.json:970", + "pin_source": "manifests/stack.json:974", "install": {"command": "bash adoption/bootstrap-linux.sh --profile token-efficiency", "kind": "repo_recipe", "source_path": "adoption/bootstrap.md"}, "acceptance": {"command": "mcporter --config \"$MCPORTER_CONFIG\" call socraticode.codebase_health --args '{}' --output text --no-oauth", "evidence_class": "upstream_example_or_native_operation", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v1.16.0 (2026-09-28)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "no", "url": "https://github.com/giancarloerra/SocratiCode/releases"} @@ -2260,7 +2260,7 @@ "component_id": "qmd", "repository": "https://github.com/tobi/qmd", "pin": "2.8.3", - "pin_source": "manifests/stack.json:765", + "pin_source": "manifests/stack.json:769", "install": {"command": "bash adoption/bootstrap-linux.sh --profile token-efficiency", "kind": "repo_recipe", "source_path": "adoption/bootstrap.md"}, "acceptance": {"command": "qmd --index \"$QMD_INDEX\" search 'local code' -c \"$QMD_COLLECTION\" -n 2 --json", "evidence_class": "upstream_example_or_native_operation", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v2.8.3 (2026-08-16)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "yes", "url": "https://github.com/tobi/qmd/releases"} @@ -2269,7 +2269,7 @@ "component_id": "serena", "repository": "https://github.com/oraios/serena", "pin": "2.0.0.dev0 @ c6fbd1c5932df2494ffa0020af5a9fbe80b82143", - "pin_source": "manifests/stack.json:888", + "pin_source": "manifests/stack.json:892", "install": {"command": "bash adoption/bootstrap-linux.sh --profile token-efficiency", "kind": "repo_recipe", "source_path": "adoption/bootstrap.md"}, "acceptance": {"command": "uvx --from git+https://github.com/oraios/serena@c6fbd1c5932df2494ffa0020af5a9fbe80b82143 serena start-mcp-server --context codex --project-from-cwd (then find_symbol and find_referencing_symbols through the client)", "evidence_class": "upstream_example_or_native_operation", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v1.7.0 (2026-08-09); the pin is a 2.0.0.dev0 development commit 123 commits ahead of that release, so release currency does not apply", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "unknown", "url": "https://github.com/oraios/serena/releases"} @@ -2278,7 +2278,7 @@ "component_id": "qdrant", "repository": "https://github.com/qdrant/qdrant", "pin": "1.19.1", - "pin_source": "manifests/stack.json:734", + "pin_source": "manifests/stack.json:738", "install": {"command": "official v1.19.1 archive qdrant-x86_64-unknown-linux-musl.tar.gz, verified against SHA-256 70a40529e2ebe0a2787d574d3a2e28437cfe94f26f24fa419f6ac57b4ae817c9", "kind": "repo_recipe", "source_path": "recipes/README.md"}, "acceptance": {"command": "GET / on the running Qdrant server: it answered with version 1.19.1 at commit 6ab21ca, the catalog pin (host receipt, stage use, result pass)", "evidence_class": "upstream_example_or_native_operation", "source_path": "evidence/hosts/nativestack-5975wx-20260925/nativestack-5975wx-20260925--qdrant--use--20260925.json"}, "upstream_currency": {"latest_release": "v1.19.1 (2026-09-04)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "yes", "url": "https://github.com/qdrant/qdrant/releases"} @@ -2296,7 +2296,7 @@ "component_id": "rtk", "repository": "https://github.com/rtk-ai/rtk", "pin": "0.50.0", - "pin_source": "manifests/stack.json:829", + "pin_source": "manifests/stack.json:833", "install": {"command": "bash adoption/bootstrap-linux.sh --profile token-efficiency", "kind": "repo_recipe", "source_path": "adoption/bootstrap.md"}, "acceptance": {"command": "rtk git log -6; rtk proxy git log -6", "evidence_class": "upstream_example_or_native_operation", "source_path": "recipes/README.md"}, "upstream_currency": {"latest_release": "v0.50.0 (2026-09-24)", "checked_at": "2026-10-01T07:41Z", "pin_is_latest": "yes", "url": "https://github.com/rtk-ai/rtk/releases"} @@ -2363,7 +2363,7 @@ "component_id": "dagu", "repository": "https://github.com/dagucloud/dagu", "pin": "2.16.6", - "pin_source": "manifests/stack.json:1343", + "pin_source": "manifests/stack.json:1350", "install": {"command": "gh release download v2.16.6 --repo dagucloud/dagu (the linux_amd64 archive and checksums.txt); check the checksum, extract and place the binary", "kind": "repo_recipe", "source_path": "blueprints/us-equities/hosting/README.md"}, "acceptance": {"command": "dagu start --context local --dagu-home \"$RESEARCH_HOME\" --run-id evidence-20260919-ready \"$WORKFLOW\": the three-step equity-research-evidence workflow through the upstream CLI (DuckDB summarized six LEAN simulated events into three orders, then both evidence validators passed; exit 0), and the native history kept its succeeded, failed and cancelled runs after a service restart (Dagu 2.16.6, 2026-09-19)", "evidence_class": "upstream_example_or_native_operation", "source_path": "blueprints/us-equities/hosting/receipt.json"}, "upstream_currency": {"latest_release": "v2.18.1 (2026-09-29)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "no", "url": "https://github.com/dagucloud/dagu/releases"} @@ -2372,7 +2372,7 @@ "component_id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", "pin": "0.162.0", - "pin_source": "manifests/stack.json:1095", + "pin_source": "manifests/stack.json:1100", "install": {"command": "bash evidence/artifacts/new-wsl-install-plan-20261002/install.sh --only otel-collector-contrib", "kind": "repo_recipe", "source_path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md"}, "acceptance": {"command": "bash evidence/artifacts/new-wsl-install-plan-20261002/accept.sh --only otel-collector-contrib --stage post_install; bash evidence/artifacts/new-wsl-install-plan-20261002/accept.sh --only otel-collector-contrib --stage service_health (revised G4 commands UNRUN on a distribution)", "evidence_class": "upstream_example_or_native_operation", "source_path": "docs/decisions/2026-10-04-2604-e2e-fix-wave-g4-observability.md"}, "upstream_currency": {"latest_release": "v0.162.0 (2026-09-29)", "checked_at": "2026-10-04T21:22:09Z", "pin_is_latest": "yes", "url": "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases"} @@ -2381,7 +2381,7 @@ "component_id": "prometheus", "repository": "https://github.com/prometheus/prometheus", "pin": "3.15.0", - "pin_source": "manifests/stack.json:1126", + "pin_source": "manifests/stack.json:1133", "install": {"command": "python3 observability/backends/install.py --tools-root \"$STACK_TOOLS_ROOT\" --evidence-dir \"$STACK_EVIDENCE_ROOT\"", "kind": "repo_recipe", "source_path": "observability/backends/README.md"}, "acceptance": {"command": "promtool check config and check rules (14 rules) on the live files, systemd-analyze --user verify of the rendered unit, then daemon-reload and restart of ecosystem-prometheus.service: /-/ready answered 0.86 s after the restart, buildinfo read 3.15.0, the seven targets were up and the 14 rules evaluated with health ok (2026-09-26)", "evidence_class": "upstream_example_or_native_operation", "source_path": "evidence/receipts/prometheus-3150-qualification-20260926.json"}, "upstream_currency": {"latest_release": "v3.15.0 (2026-09-25)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/prometheus/prometheus/releases"} @@ -2390,7 +2390,7 @@ "component_id": "loki", "repository": "https://github.com/grafana/loki", "pin": "3.7.8", - "pin_source": "manifests/stack.json:1164", + "pin_source": "manifests/stack.json:1171", "install": {"command": "python3 observability/backends/install.py --tools-root \"$STACK_TOOLS_ROOT\" --evidence-dir \"$STACK_EVIDENCE_ROOT\"", "kind": "repo_recipe", "source_path": "observability/backends/README.md"}, "acceptance": {"command": "loki -config.file=\"$LOKI_CONFIG\" -verify-config=true (exit 0: the final native Loki OTLP structured-metadata configuration accepted)", "evidence_class": "structural_validation", "source_path": "observability/receipt.json"}, "upstream_currency": {"latest_release": "v3.7.8 (2026-09-17)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/grafana/loki/releases"} @@ -2399,7 +2399,7 @@ "component_id": "grafana", "repository": "https://github.com/grafana/grafana", "pin": "13.2.3", - "pin_source": "manifests/stack.json:1201", + "pin_source": "manifests/stack.json:1208", "install": {"command": "bash evidence/artifacts/new-wsl-install-plan-20261002/install.sh --only grafana", "kind": "repo_recipe", "source_path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md"}, "acceptance": {"command": "bash evidence/artifacts/new-wsl-install-plan-20261002/accept.sh --only grafana --stage post_install; bash evidence/artifacts/new-wsl-install-plan-20261002/accept.sh --only grafana --stage service_health (revised G4 commands UNRUN on a distribution)", "evidence_class": "upstream_example_or_native_operation", "source_path": "docs/decisions/2026-10-04-2604-e2e-fix-wave-g4-observability.md"}, "upstream_currency": {"latest_release": "v13.2.3 (2026-09-29)", "checked_at": "2026-10-04T21:22:09Z", "pin_is_latest": "yes", "url": "https://github.com/grafana/grafana/releases"} @@ -2408,7 +2408,7 @@ "component_id": "restic", "repository": "https://github.com/restic/restic", "pin": "0.19.1", - "pin_source": "manifests/stack.json:1315", + "pin_source": "manifests/stack.json:1322", "install": {"command": "the official restic_0.19.1_linux_amd64.bz2 release asset, its detached signature verified against the upstream primary fingerprint", "kind": "upstream_documented", "source_path": "blueprints/us-equities/hosting/backup/README.md"}, "acceptance": {"command": "restic check and restore of two synthetic snapshots on a GitHub-hosted runner, after seven unchanged upstream restic tests passed there", "evidence_class": "upstream_example_or_native_operation", "source_path": "evidence/receipts/native-offhost-restic-20260920.json"}, "upstream_currency": {"latest_release": "v0.19.1 (2026-07-05)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/restic/restic/releases"} @@ -2451,7 +2451,7 @@ "component_id": "syft", "repository": "https://github.com/anchore/syft", "pin": "1.52.0", - "pin_source": "manifests/stack.json:1404", + "pin_source": "manifests/stack.json:1411", "install": {"command": "gh release download v1.52.0 --repo anchore/syft (the linux_amd64 archive and its checksums); verify, then tar --no-same-owner -xzf into a versioned prefix", "kind": "repo_recipe", "source_path": "blueprints/us-equities/supply-chain/README.md"}, "acceptance": {"command": "syft scan of the NautilusTrader 2.0.0rc5 virtual environment with the binary catalogers selected by exact name (venv-syft exit 0; 21 packages), then grype over that SBOM (exit 0)", "evidence_class": "upstream_example_or_native_operation", "source_path": "evidence/artifacts/gap-wave2-20260923/us-equities__security-supply-chain/3-syft-binary-os-coverage.json"}, "upstream_currency": {"latest_release": "v1.52.0 (2026-09-17)", "checked_at": "2026-10-01T07:42Z", "pin_is_latest": "yes", "url": "https://github.com/anchore/syft/releases"} @@ -2629,7 +2629,7 @@ "component_id": "omniroute", "repository": "https://github.com/diegosouzapw/OmniRoute", "pin": "3.8.52-canary (23a11484 + PR13788 + PR15167)", - "pin_source": "manifests/stack.json:1887", + "pin_source": "manifests/stack.json:1896", "install": { "command": "bash evidence/artifacts/new-wsl-install-plan-20261002/install.sh --only gpt-gateway", "kind": "repo_recipe", diff --git a/docs/decisions/2026-10-03-currency-wave-w1.md b/docs/decisions/2026-10-03-currency-wave-w1.md index 10fd30d9c..e919fc252 100644 --- a/docs/decisions/2026-10-03-currency-wave-w1.md +++ b/docs/decisions/2026-10-03-currency-wave-w1.md @@ -581,13 +581,14 @@ This PR now edits these configuration-owner files, superseding the earlier scope statement retained above as dated history: - `adoption/new-wsl-profile.json`: the jcodemunch-mcp entry and the Collector/Grafana qualification limits recorded in fix round 2 below. +- `catalogs/foundation/new-wsl-architecture-20261001.json`: fix round 3 rebinds its stack pin sources to the current component version lines and the embedding model revision line; recorded pins and verdicts are unchanged. - `evidence/artifacts/new-wsl-layer-consensus-20261002/consensus.json`: the wave3 code-index owner row; main's wave4 Promptfoo owner is preserved. - `evidence/artifacts/new-wsl-definitive-defaults-20261001/definitive-manifest.json`: regenerated from the merged consensus. - `docs/decisions/2026-10-01-new-wsl-definitive-defaults.md`: the tables rendered from that manifest. - `docs/new-wsl-handbook.json` and `docs/new-wsl-handbook.md`: regenerated from the merged profile and definitive manifest. -- `evidence/artifacts/new-wsl-handbook-20261001/receipt.json`: refreshed generator/profile/output hashes and retained validation[6]-[8]; fix round 2 records its new regeneration and check separately. -- `evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json`, `owners.json`, `install.sh` and `accept.sh`: the code-index owner, install/list/version commands and source citations. -- `evidence/artifacts/new-wsl-install-plan-20261002/README.md` and `SOURCES.md`: the current code-index pin, wave-3 refresh and verified source locations. +- `evidence/artifacts/new-wsl-handbook-20261001/receipt.json`: refreshed generator/profile/output hashes and retained validation[6]-[8]; fix round 2 records its generated hashes and the check in validation[9]. Fix round 3 records its regeneration and check as separate entries. +- `evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json`, `owners.json`, `install.sh` and `accept.sh`: the code-index owner, install/list/version commands and source citations. Fix round 2 also adds Collector/Grafana qualification limits and release-hold notes in `install-plan.json`. +- `evidence/artifacts/new-wsl-install-plan-20261002/README.md` and `SOURCES.md`: the current code-index pin, wave-3 refresh and verified source locations, plus fix round 2's dated "Currency qualification limits (2026-10-05)" README section and "Currency qualification source scope (2026-10-05)" SOURCES section for Collector/Grafana. Main's 25 fix-wave slot repairs and wave4 Promptfoo 0.123.1 owner survive. The current configuration-owner handoff is only playwright-cli **0.1.21** in @@ -663,3 +664,34 @@ and token evidence notes, foundation and observability guides, and install-plan notes carry these qualification scopes. Historical receipts and raw dated qualification/review outputs retain their original bytes. Selection and metadata enums remain unchanged; the scope is recorded in their supported prose fields. + +## Fix round 3: pin citations and historical attribution (2026-10-05) + +The architecture catalog's 53 distinct `manifests/stack.json:N` locators now +cite the owning component's current `version` line, or the embedding model's +`revision` line. W1's stack layout had shifted 37 distinct locators, repeated +at 74 winner entries. The rebinding uses the current file rather than the +merge-base layout: Collector points to **1100**, Grafana to **1208**, and the +Nemotron embedding revision to **2095**. Recorded architecture pins, verdicts +and stack pins are unchanged, including the Grafana 13.2.3 architecture versus +13.2.2 stack comparison. The configuration-owner file list above includes this +catalog edit and fix round 2's Collector/Grafana install-plan notes and dated +README/SOURCES sections. + +Both Collector token-row fields now start with a historical **0.161.0** +qualification: the September 20 health observation and the lifecycle statuses +belong to that deployed version. The explorer still displays the selected +0.162.0 pin, whose scratch/synthetic scope, release hold and pending host +acceptance remain explicit. + +Two regressions exercise the repository through the explorer's native render +command. The architecture-link test failed against the old catalog with 37 +misbound locators and passed after rebinding; the historical Collector test +failed for both old fields and passed after their version attribution. These +are repository integration checks, not upstream or destination acceptance. + +The handbook is regenerated from the rebound catalog with its own generator. +Its receipt retains prior validation entries and records this round's actual +`--write` and `--check` commands, returned statuses, exit codes and UTC dates +separately. The earlier fix-round-2 entry remains a check record; no historical +write exit code is inferred or backfilled. diff --git a/docs/new-wsl-handbook.json b/docs/new-wsl-handbook.json index 8f70ce05a..1daeb90db 100644 --- a/docs/new-wsl-handbook.json +++ b/docs/new-wsl-handbook.json @@ -7542,7 +7542,7 @@ }, { "path": "catalogs/foundation/new-wsl-architecture-20261001.json", - "sha256": "0cd26fdab18ab685ea2fb0f5d996416befbade4e3bcefb0fcb0c5b2f904cc2bc" + "sha256": "b8ce6bc5d6c11390be3e2e174be820ee063d5d4b43a2f8eb07fdd0be2253f0e9" }, { "path": "catalogs/landscape/research-state.json", diff --git a/docs/new-wsl-handbook.md b/docs/new-wsl-handbook.md index 6cf52dc45..f60dd098f 100644 --- a/docs/new-wsl-handbook.md +++ b/docs/new-wsl-handbook.md @@ -2125,7 +2125,7 @@ Reference edition: [catalogs/foundation/new-wsl-architecture-20261001.json](../c | [adoption/manifest.json](../adoption/manifest.json) | `4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714` | | [adoption/new-wsl-profile.json](../adoption/new-wsl-profile.json) | `9abbb77704c9208d049518368f97786d1ef09060d420c5aebf183ee4575e7632` | | [adoption/platforms/linux-wsl2-new-distro.md](../adoption/platforms/linux-wsl2-new-distro.md) | `c496b08e4b26cd1f29b2057109028b341dc72ab17229e15f6502f57e3aa1ec53` | -| [catalogs/foundation/new-wsl-architecture-20261001.json](../catalogs/foundation/new-wsl-architecture-20261001.json) | `0cd26fdab18ab685ea2fb0f5d996416befbade4e3bcefb0fcb0c5b2f904cc2bc` | +| [catalogs/foundation/new-wsl-architecture-20261001.json](../catalogs/foundation/new-wsl-architecture-20261001.json) | `b8ce6bc5d6c11390be3e2e174be820ee063d5d4b43a2f8eb07fdd0be2253f0e9` | | [catalogs/landscape/research-state.json](../catalogs/landscape/research-state.json) | `fe142c1b8b8ec8b92d69ec5971d68028225899c101ffc43cea618883b119332a` | | [catalogs/landscape/us-equities.json](../catalogs/landscape/us-equities.json) | `cf441d393b1a1ee49c57d62592e2c7477de2003ca40aa9e1933a6c9b28d4a618` | | [evidence/artifacts/new-wsl-clean-install-selection-20261001/ownership.json](../evidence/artifacts/new-wsl-clean-install-selection-20261001/ownership.json) | `ad86d1d4c2cddeeebc2bc327fddc897b161cec092706db24c779603321246bc7` | diff --git a/docs/token-efficiency-stack.json b/docs/token-efficiency-stack.json index ab3ee5a66..e47cea864 100644 --- a/docs/token-efficiency-stack.json +++ b/docs/token-efficiency-stack.json @@ -6790,7 +6790,7 @@ "statistics": [], "command_kind": "Read-only upstream validation, health and query commands from the retained exact-session evidence. No installer or service mutation is run by this row." }, - "returned_result_summary": "2026-09-20 14:17 UTC: Collector health returned HTTP 200 and status 'Server available'; the native user service was active in the follow-up. Existing configuration routes native client telemetry to local backends. Health and configured routing alone do not prove exact task attribution. Later foundation evidence: native Codex returned 219,725 total tokens, matched by 9 Loki responses and Prometheus. The original seven-tool Claude returned 254,111, matched by 6 Loki responses, while Prometheus lacks 77,317; strict final JSON failed although required content passed. A separate Claude run waited for writer readiness and returned 35,537, with all four usage categories matched in Loki/Prometheus, zero tools and zero agents. These are separate native processes, not this Desktop task or measured savings. Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117).", + "returned_result_summary": "Historical 0.161.0 observation: 2026-09-20 14:17 UTC: Collector health returned HTTP 200 and status 'Server available'; the native user service was active in the follow-up. Existing configuration routes native client telemetry to local backends. Health and configured routing alone do not prove exact task attribution. Later foundation evidence: native Codex returned 219,725 total tokens, matched by 9 Loki responses and Prometheus. The original seven-tool Claude returned 254,111, matched by 6 Loki responses, while Prometheus lacks 77,317; strict final JSON failed although required content passed. A separate Claude run waited for writer readiness and returned 35,537, with all four usage categories matched in Loki/Prometheus, zero tools and zero agents. These are separate native processes, not this Desktop task or measured savings. Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117).", "session_statistics": { "availability": "none", "value": null, @@ -6809,7 +6809,7 @@ "codex": "Foundation native run 15:46:10\u201315:46:43 UTC: seven requested MCP calls and exact source passed; returned 219,725 usage matches9 Loki responses and Prometheus. Separate from retained Desktop evidence; no resume or causal savings claim.", "claude": "Foundation seven-tool run 15:49:15\u201315:49:29 UTC: required source/content passed but strict final JSON failed; 254,111 returned tokens match6 Loki responses while Prometheus misses 77,317. Separate readiness run 16:01:38 UTC: 35,537 matches native/Loki/Prometheus in all four categories, with 0 tools / 0 agents. Original gap remains; no live Desktop acceptance." }, - "lifecycle_summary": "install: observed_installed; use: accepted_within_scope; persistence: not_established; restart: not_established; cleanup: not_established; recovery: not_established. Existing services were observed, not reinstalled or restarted by the current read-only probes. Preserve retained data and approved native configuration. Foundation observation reused the configured route without reinstall, restart or collector configuration change; the separate readiness run explicitly waited for its new writer before sending a user request. Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117).", + "lifecycle_summary": "Historical 0.161.0 lifecycle: install: observed_installed; use: accepted_within_scope; persistence: not_established; restart: not_established; cleanup: not_established; recovery: not_established. Existing services were observed, not reinstalled or restarted by the current read-only probes. Preserve retained data and approved native configuration. Foundation observation reused the configured route without reinstall, restart or collector configuration change; the separate readiness run explicitly waited for its new writer before sending a user request. Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117).", "source_paths": [ "evidence/receipts/current-session-observation-20260920.json", "docs/current-session-observation.md", diff --git a/evidence/artifacts/new-wsl-handbook-20261001/receipt.json b/evidence/artifacts/new-wsl-handbook-20261001/receipt.json index cd9d46b4d..7edd8a56d 100644 --- a/evidence/artifacts/new-wsl-handbook-20261001/receipt.json +++ b/evidence/artifacts/new-wsl-handbook-20261001/receipt.json @@ -6,8 +6,8 @@ "generator_sha256": "8a66e5eebe1429924d62545e2eee389f1fdd58e6c2f679d8280cec3e99027cf8", "profile_sha256": "9abbb77704c9208d049518368f97786d1ef09060d420c5aebf183ee4575e7632", "outputs": { - "docs/new-wsl-handbook.md": "a1ff3d1711b9877896757c12fdbf93690539df42de1e8126ccca670eb05c3d41", - "docs/new-wsl-handbook.json": "e3ee015895db12c686808dede9de52de5c8b77e21d1387d0120c6af0688cb91f" + "docs/new-wsl-handbook.md": "328d76d670dee6620e3c4f0e036e9af5a97a26a98c5571793493bd67321fb67a", + "docs/new-wsl-handbook.json": "bfa36dd4aaa5a49ddd723cde6d9d21d45de3695be26835509abce692101c95fa" }, "inventory": { "layers": 37, @@ -90,6 +90,30 @@ "docs/new-wsl-handbook.json": "e3ee015895db12c686808dede9de52de5c8b77e21d1387d0120c6af0688cb91f", "docs/new-wsl-handbook.md": "a1ff3d1711b9877896757c12fdbf93690539df42de1e8126ccca670eb05c3d41" } + }, + { + "date_utc": "2026-10-05", + "recorded_at_utc": "2026-10-05T06:43:41Z", + "scope": "PR #642 fix round 3: architecture pin-source rebinding; local regeneration only, with no host or upstream acceptance claimed.", + "command": "python3 scripts/build_new_wsl_handbook.py --write", + "native_exit_code": 0, + "returned_status": "written", + "returned_outputs": { + "docs/new-wsl-handbook.json": "bfa36dd4aaa5a49ddd723cde6d9d21d45de3695be26835509abce692101c95fa", + "docs/new-wsl-handbook.md": "328d76d670dee6620e3c4f0e036e9af5a97a26a98c5571793493bd67321fb67a" + } + }, + { + "date_utc": "2026-10-05", + "recorded_at_utc": "2026-10-05T06:43:42Z", + "scope": "PR #642 fix round 3: architecture pin-source rebinding; local generated-byte verification only, with no host or upstream acceptance claimed.", + "command": "python3 scripts/build_new_wsl_handbook.py --check", + "native_exit_code": 0, + "returned_status": "passed", + "returned_outputs": { + "docs/new-wsl-handbook.json": "bfa36dd4aaa5a49ddd723cde6d9d21d45de3695be26835509abce692101c95fa", + "docs/new-wsl-handbook.md": "328d76d670dee6620e3c4f0e036e9af5a97a26a98c5571793493bd67321fb67a" + } } ], "failed_conditions_retained": [ @@ -170,5 +194,5 @@ "docs/decisions/2026-10-03-currency-wave-w1.md", "docs/decisions/2026-10-04-2604-e2e-fix-wave.md" ], - "repair_round": "this PR: bounded job 058, 2026-10-04; hashes regenerated in place, destination acceptance remains owed; PR #642 fix round 2, 2026-10-05: regenerated qualification limits and release holds, hashes refreshed, destination acceptance pending" + "repair_round": "this PR: bounded job 058, 2026-10-04; hashes regenerated in place, destination acceptance remains owed; PR #642 fix round 2, 2026-10-05: regenerated qualification limits and release holds, hashes refreshed, destination acceptance pending; PR #642 fix round 3: rebound architecture pin citations, refreshed output hashes, separately recorded native write/check results" } diff --git a/manifests/evidence.json b/manifests/evidence.json index 818ed2531..ff7eebc35 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -15727,7 +15727,7 @@ }, { "path": "catalogs/foundation/new-wsl-architecture-20261001.json", - "sha256": "0cd26fdab18ab685ea2fb0f5d996416befbade4e3bcefb0fcb0c5b2f904cc2bc", + "sha256": "b8ce6bc5d6c11390be3e2e174be820ee063d5d4b43a2f8eb07fdd0be2253f0e9", "bytes": 308538 }, { @@ -16607,8 +16607,8 @@ }, { "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "4eda8debcce45b4c85cc1965307b479fcc67b99b0f24d9c4944480097b74a742", - "bytes": 48076 + "sha256": "c05f4b990e731342483a51883be8e5563a2d7fa07d936b18fff6cdf5d9e1bce5", + "bytes": 50522 }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", @@ -17032,12 +17032,12 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "e3ee015895db12c686808dede9de52de5c8b77e21d1387d0120c6af0688cb91f", + "sha256": "bfa36dd4aaa5a49ddd723cde6d9d21d45de3695be26835509abce692101c95fa", "bytes": 654194 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "a1ff3d1711b9877896757c12fdbf93690539df42de1e8126ccca670eb05c3d41", + "sha256": "328d76d670dee6620e3c4f0e036e9af5a97a26a98c5571793493bd67321fb67a", "bytes": 355757 }, { @@ -17132,8 +17132,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "bddb9cd4d160bd83517d0445206ce22b3cc88a2324dea6084880213c29a457ea", - "bytes": 593077 + "sha256": "0de081f557449d7d1c8d36c1daf9a66bb7d8f735a16b7d8b9ba739b7cdda0d81", + "bytes": 593139 }, { "path": "docs/token-efficiency-stack.md", @@ -39092,8 +39092,8 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "03d550eda47783274e808d445b3ff9cd3c4abbbe2e248a970213c0ac4a89d79e", - "bytes": 7250 + "sha256": "6bd050686f2d4a1850196d4eeccdbe6241db58285fbebcd51bd216922f063722", + "bytes": 8630 }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/slot-state-and-core-recipes.json", @@ -53632,8 +53632,8 @@ }, { "path": "tests/test_ecosystem_manifest.py", - "sha256": "d1990f63256a86d69eaa154217aba92548905ff0bafc61e574465425e9ba62bb", - "bytes": 137485 + "sha256": "48186b4f263f510f02ef489e72f40eb9023a981285f5f702f4c4e657a175eab4", + "bytes": 141162 }, { "path": "tests/test_effort_default_guard.py", diff --git a/tests/test_ecosystem_manifest.py b/tests/test_ecosystem_manifest.py index 98bbc9629..d703df568 100644 --- a/tests/test_ecosystem_manifest.py +++ b/tests/test_ecosystem_manifest.py @@ -2122,6 +2122,66 @@ def read(path): self.assertGreater(len(hashed), 3) self.assertEqual(sorted(hashed - tracked), []) + def repository_page_data(self): + """Observe the real repository through the explorer's native render command.""" + target = self.root / "repository-explorer.html" + result = subprocess.run( + [sys.executable, str(GENERATOR), "--root", str(ROOT), "--render-to", str(target)], + capture_output=True, text=True, timeout=60) + self.assertEqual(result.returncode, 0, result.stdout + result.stderr) + return json.loads(Page(target.read_text(encoding="utf-8")).data) + + def test_repository_architecture_links_cite_the_owners_current_pin_fields(self): + """A drifted edition still links the owner's current version, or the model revision.""" + data = self.repository_page_data() + stack = json.loads((ROOT / "manifests/stack.json").read_text(encoding="utf-8")) + components = {row["id"]: row for row in stack["components"]} + models = {row["id"]: row for row in stack["models"]} + lines = (ROOT / "manifests/stack.json").read_text(encoding="utf-8").splitlines() + checked = set() + errors = [] + for row in data["architecture"]["rows"]: + for winner in row["winners"]: + source = winner["pin_source"] + match = re.fullmatch(r"manifests/stack.json:([1-9][0-9]*)", source["locator"]) + if match is None: + continue + checked.add(source["locator"]) + index = int(match[1]) - 1 + identifier = winner["component_id"] + if identifier is None: + identifier = winner["repository"].removeprefix("https://huggingface.co/") + field, expected = "revision", models[identifier]["revision"] + else: + field, expected = "version", components[identifier]["version"] + owner_line = next(line for line in reversed(lines[:index]) + if re.match(r'\s{6}"id":', line)) + owner = json.loads("{" + owner_line.strip().rstrip(",") + "}")["id"] + expected_line = f'"{field}": {json.dumps(expected)},' + if owner != identifier or lines[index].strip() != expected_line: + errors.append(f"{identifier}: {source['locator']} cites {lines[index].strip()}") + self.assertTrue(source["url"].endswith(f"/manifests/stack.json#L{index + 1}")) + self.assertTrue(checked) + self.assertEqual(sorted(set(errors)), []) + + def test_repository_collector_statuses_name_their_historical_pin(self): + """The current-pin card attributes September observations to deployed 0.161.0.""" + data = self.repository_page_data() + row = next(item for item in data["efficiency"]["topic"]["rows"] + if item["component_id"] == "opentelemetry-collector-contrib") + stack = json.loads((ROOT / "manifests/stack.json").read_text(encoding="utf-8")) + selected = next(item["version"] for item in stack["components"] + if item["id"] == row["component_id"]) + self.assertEqual(row["version"], selected) + for field, historical_fact in (("returned_result_summary", "2026-09-20"), + ("lifecycle_summary", "install: observed_installed")): + with self.subTest(field=field): + text = row[field] + self.assertIn("0.161.0", text) + self.assertLess(text.index("0.161.0"), text.index(historical_fact)) + self.assertIn("historical", text[:text.index(historical_fact)].lower()) + self.assertIn("host acceptance pending", text) + def test_the_repository_architecture_record_keeps_the_acceptance_invariant(self): """The record states the rule every winner's acceptance class follows and the dated review that corrected the edition. The build cannot read prose, so this test keeps a later edit from dropping either silently.""" From f7354e0ffd23ef556470c878d541a9c4a22eba2e Mon Sep 17 00:00:00 2001 From: Scout Date: Mon, 5 Oct 2026 02:51:52 -0400 Subject: [PATCH 33/50] Hot-file protocol: reset manifests/evidence.json manifests/stack.json to the merge base before the final hot-file commit Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 6016 +++++++++++++++++++-------------------- manifests/stack.json | 81 +- 2 files changed, 2922 insertions(+), 3175 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index ff7eebc35..3952640a2 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -2,791 +2,518 @@ "schema_version": 1, "receipts": [ { - "id": "adaptive-paper-practice-20260921", + "id": "memory-lifecycle-probe-20260921", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "claude-code", - "codex" + "ai-memory" ], - "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", + "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", "limitations": [ - "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", - "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", - "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", - "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." + "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", + "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", + "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", + "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", + "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", + "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." ], - "path": "evidence/receipts/adaptive-paper-practice-20260921.json" + "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" }, { - "id": "adoption-macos-hosted-smoke-20260922", - "kind": "native_cli_e2e", + "id": "catalog-runtime-review-20260921", + "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "dagu" ], - "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", + "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", "limitations": [ - "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", - "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", - "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", - "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", - "socraticode is the profile's documented unpinned skip and was not installed." + "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", + "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", + "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" + "path": "evidence/receipts/catalog-runtime-review-20260921.json" }, { - "id": "adoption-macos-hosted-smoke-20260923", + "id": "catalog-clean-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "codex" ], - "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", + "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", "limitations": [ - "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", - "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", - "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", - "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." + "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", + "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", + "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" + "path": "evidence/receipts/catalog-clean-install-20260921.json" }, { - "id": "agent-browser-lna-20260930", - "kind": "artifact_measurement", + "id": "dashboard-gap-resolution-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "playwright-test" + "ai-memory", + "codex", + "claude-code", + "agentsview", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo", + "vllm" ], - "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", + "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", "limitations": [ - "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", - "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", - "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", - "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." + "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", + "Fresh PreCompact event and active Desktop session end remain unforced.", + "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", + "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", + "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", + "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." ], - "path": "evidence/receipts/agent-browser-lna-20260930.json" + "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" }, { - "id": "ai-memory-240-qualification-20260925", + "id": "dashboard-render-e2e-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "ai-memory", + "qdrant", + "socraticode", + "serena", + "agentsview", + "dagu", + "omniroute", + "agent-browser", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", + "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", - "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", - "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", - "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", - "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", - "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", - "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." + "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", + "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", + "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", + "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", + "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", + "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", + "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." ], - "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" + "path": "evidence/receipts/dashboard-render-e2e-20260921.json" }, { - "id": "ai-memory-241-qualification-20260925", + "id": "hf-memory-models-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "ai-memory", + "socraticode", + "vllm", + "grafana" ], - "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", + "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", - "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", - "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", - "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", - "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", - "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", - "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." + "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", + "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", + "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", + "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", + "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", + "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." ], - "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" + "path": "evidence/receipts/hf-memory-models-20260921.json" }, { - "path": "blueprints/us-equities/state-recovery/memory/receipt.json", - "id": "ai-memory-native-state-recovery-20260919", + "id": "native-memory-rag-alignment-20260921", "kind": "native_cli_e2e", "component_ids": [ "ai-memory", - "restic" + "socraticode", + "qdrant", + "qmd", + "vllm", + "grafana", + "loki" ], - "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", + "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", "limitations": [ - "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", - "38 pages table rows include historical versions, not 38 current pages.", - "Native backup excludes raw/, model caches, logs and external native session transcripts.", - "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", - "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", - "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." - ] + "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", + "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", + "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", + "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", + "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", + "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", + "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." + ], + "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" }, { - "path": "blueprints/us-equities/order-contract/receipt.json", - "id": "alpaca-offline-order-contract-20260919", + "id": "native-returned-results-20260921", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py" + "codex", + "claude-code", + "rtk", + "context-mode", + "qmd", + "serena", + "ai-memory", + "socraticode", + "qdrant", + "agentsview", + "grafana", + "loki", + "prometheus", + "dagu", + "ntfy", + "omniroute", + "agent-browser", + "promptfoo", + "headroom", + "jcodemunch-mcp" ], - "claim": "Installed alpaca-py request models silently dropped synthetic advanced fields; this explicit broker-disconnected basic-intent boundary rejected those inputs and eight additional negative cases while preserving canonical decimal strings.", + "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", "limitations": [ - "Local contract is not wired into unrelated SDK calls or existing workers; explicit future adapter adoption is required.", - "No broker account, key, asset lookup, risk approval, live/paper order or provider wire behavior was exercised.", - "Whole-share basic create-intent subset only; advanced, replacement, cancellation, retries, order journals and reconciliation remain gated.", - "Input representation cap and symbol/client-ID syntax are local conservative policies, not provider or risk authorization.", - "Python SDK float conversion is observed; the canonical exact decimal envelope is deliberately not serialized through those float fields.", - "JavaScript advanced support is pinned-source evidence only; no alternative SDK was installed or executed.", - "Python audit events and the Linux namespace substantiate this scoped probe, not a universal sandbox or macOS acceptance.", - "Canonical content hashes do not establish client-ID uniqueness, deduplication or safe retry semantics.", - "No token-saving claim or model inference belongs to this deterministic task." - ] + "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", + "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", + "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", + "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", + "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", + "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", + "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", + "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", + "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." + ], + "path": "evidence/receipts/native-returned-results-20260921.json" }, { - "id": "alpaca-paper-e2e-20260921", + "id": "native-workflow-writing-comparison-20260921", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", "claude-code" ], - "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", + "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", "limitations": [ - "One operational smoke trial, not profitable strategy or continuous trading acceptance.", - "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", - "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." + "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", + "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", + "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." ], - "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" + "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" }, { - "id": "artifact-reductions", - "path": "evidence/receipts/artifact-reductions.json", - "kind": "artifact_measurement", + "id": "native-workflow-graceful-recovery-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "socraticode", - "openresearch", - "context-mode" + "claude-code" ], - "claim": "Recorded exact selected-text reductions, distinct from model usage.", + "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", "limitations": [ - "Lossy selections compare retained text to full-file/paper counterfactuals.", - "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." - ] + "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", + "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", + "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", + "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." + ], + "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" }, { - "id": "broad-universe-research-20260921", + "id": "portable-userspace-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "duckdb", - "claude-code", - "codex" + "rtk", + "qmd", + "repomix", + "toon", + "codex", + "claude-code" ], - "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", + "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", "limitations": [ - "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", - "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", - "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", - "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", - "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." + "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", + "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", + "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", + "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", + "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", + "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", + "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", + "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", + "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." ], - "path": "evidence/receipts/broad-universe-research-20260921.json" + "path": "evidence/receipts/portable-userspace-install-20260921.json" }, { - "id": "canary-proof-verification-20261001", - "kind": "artifact_measurement", + "id": "claude-selective-context-pilot-20260921", + "kind": "native_model_e2e", "component_ids": [ "claude-code", - "codex", - "systemd" + "context-mode" ], - "claim": "The canary proof tool (tools/credentials/canary_proof.py, 1,834 lines, with the contained scan worker tools/credentials/canary_scan_worker.py, 2,114 lines) passed its synthetic acceptance on the workstation on 2026-10-01 on main with the K4 guard: its unit suite ran 143 tests, OK, with none skipped (including 12 cases that start transient systemd user scopes); its mutation runner killed 138 of 138 mutants by failures of their named permanent tests after 90 passing unmutated runs; and the credential, guard, Codex worker-lane and pre-commit suites ran 531 tests with one failure by design (the installed host copy of the guard). The tool plants a unique synthetic canary, lets named consumers use it through the key runner, and searches the named sinks with ripgrep in a worker that runs in a finite systemd user scope; its classifier refuses unless every required check has a fresh, complete result bound to the run. Reviews: a read-only GPT-6 verification found seven paths to a false clean verdict and four high findings, and an Opus build review found one blocking gap in the contract's acceptance cases; one repair round by a GPT-6 runtime worker fixed them, each with a permanent test and a mutant; an Opus re-check confirmed 37 of 42 dispositions and found one more false-clean path (a Git object store with no HEAD, refs or .git name, reached directly) and a record-validation defect, which one bounded fix round closed with tests and mutants. No end-to-end proof has run: it is the new distribution's acceptance after its guard install.", + "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", "limitations": [ - "Synthetic acceptance only: every sink, canary, Git store, SQLite database and journal in these runs is a fixture the tests build under a temporary directory; no real consumer, transcript, log, journal or credential was used, and no proof claim is made before the end-to-end run.", - "Containment evidence is workstation scope enforcement: the real-scope classes start transient systemd user scopes on this host (12 cases, all passing); hosted CI runners skip them where no user scope exists.", - "Scanner: ripgrep 14.1.0 is the executed version; the runtime also accepts 15.2.0 on a source-reviewed output grammar that no run has executed.", - "Size: the implementation (3,948 coordinator and worker lines) and the permanent test file (3,632 lines) exceed the contract's ceilings (1,800 and 2,800); the coordinator accepted the deviation for the required coverage and containment logic, and the reviews' dead-code findings were removed.", - "Residuals from the Opus re-check, recorded in the decision record: a completed but too-early or stale final is labelled requested_incomplete; the WAL/SHM-without-valid-main guard, Walk.covered's exclusion, time, special-file and symlinked-parent branches, and several O12 changes have no test of their own; three mutants are missing (END count/aux, --text, a count-based Git reconcile); bind_scope's refusal paths and the real scope_populated parser are untested; the scan's exit code still comes from events it does not validate.", - "Evidence classes differ: the unit, mutation and suite runs were made by the coordinator on the final head outside any sandbox; the reviews are read-only cross-family reads, not proofs." + "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", + "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", + "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", + "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", + "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", + "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", + "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", + "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." ], - "path": "evidence/receipts/canary-proof-verification-20261001.json" + "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" }, { - "id": "catalog-clean-install-20260921", + "id": "native-dashboard-data-20260921", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "ai-memory", + "socraticode", + "qmd", + "qdrant", + "agentsview", + "grafana", + "loki", + "rtk", + "context-mode", + "headroom", + "jcodemunch-mcp", + "promptfoo", + "serena", + "systemd" ], - "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", + "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", "limitations": [ - "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", - "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", - "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." + "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", + "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", + "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", + "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", + "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", + "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", + "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", + "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", + "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." ], - "path": "evidence/receipts/catalog-clean-install-20260921.json" + "path": "evidence/receipts/native-dashboard-data-20260921.json" }, { - "id": "catalog-freshness-20260923", - "kind": "upstream_provenance", + "id": "foundation-closure-20260921", + "kind": "native_cli_e2e", "component_ids": [ "claude-code", "codex", - "llama-cpp", - "mcp-inspector", - "openresearch", - "skfolio" + "affaan-m/ECC", + "context-mode" ], - "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", + "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", "limitations": [ - "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", - "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", - "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", - "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." + "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", + "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", + "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", + "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", + "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", + "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", + "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", + "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." ], - "path": "evidence/receipts/catalog-freshness-20260923.json" + "path": "evidence/receipts/foundation-closure-20260921.json" }, { - "id": "catalog-runtime-review-20260921", - "kind": "native_model_e2e", + "id": "native-quality-defaults-20260920", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "dagu" + "claude-code" ], - "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", + "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", "limitations": [ - "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", - "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", - "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." + "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", + "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", + "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", + "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", + "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." ], - "path": "evidence/receipts/catalog-runtime-review-20260921.json" + "path": "evidence/receipts/native-quality-defaults-20260920.json" }, { - "id": "ccusage-20026-qualification-20260927", + "id": "native-terminal-profiles-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ccusage" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", - "limitations": [ - "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", - "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", - "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", - "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", - "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", - "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", - "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", - "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", - "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", - "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", - "New hosts receive this pin only after the next release tag." - ], - "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" - }, - { - "id": "claude-advisor-usage-scan-20260928", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code" + "codex", + "claude-code", + "qdrant", + "vllm" ], - "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", + "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", - "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", - "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", - "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", - "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", - "Whether ccusage or ecosystem-token-report count these entries was not checked." + "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", + "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", + "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", + "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", + "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." ], - "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" + "path": "evidence/receipts/native-terminal-profiles-20260920.json" }, { - "id": "claude-foundation-finalization-20260921", - "kind": "native_model_e2e", + "id": "native-claude-profile-20260920", + "kind": "native_cli_e2e", "component_ids": [ "claude-code", "codex", - "agent-browser", - "repomix" + "affaan-m/ECC", + "context-mode", + "rtk" ], - "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", + "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", "limitations": [ - "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", - "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", - "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", - "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." + "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", + "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", + "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", + "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", + "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", + "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", + "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", + "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", + "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." ], - "path": "evidence/receipts/claude-foundation-finalization-20260921.json" + "path": "evidence/receipts/native-claude-profile-20260920.json" }, { - "id": "claude-host-practice-readback-20260928", + "id": "native-offhost-restic-20260920", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "claude-hud", - "headroom", - "mcporter", - "jcodemunch-mcp", - "agent-browser", - "qmd" + "restic" ], - "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", + "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", "limitations": [ - "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", - "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", - "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", - "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", - "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", - "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", - "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." + "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", + "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", + "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", + "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", + "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", + "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." ], - "path": "evidence/receipts/claude-host-practice-readback-20260928.json" + "path": "evidence/receipts/native-offhost-restic-20260920.json" }, { - "id": "claude-hud-0100-qualification-20261003", + "id": "native-dagu-retry-tests-20260920", "kind": "native_cli_e2e", "component_ids": [ - "claude-hud" + "dagu" ], - "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", "limitations": [ - "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", - "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", - "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", + "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", + "No broker/provider operations or token savings were measured.", + "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" }, { - "id": "claude-hud-0100-qualification-20261004", - "kind": "native_cli_e2e", + "id": "native-token-stack-final-20260920", + "kind": "native_model_e2e", "component_ids": [ - "claude-hud" - ], - "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed claude-hud 0.10.0 from tag v0.10.0 through native Claude plugin commands after an initial marketplace-source mismatch failed. Native marketplace remove/add and plugin install succeeded; plugin list showed version 0.10.0 enabled at user scope. Direct and configured statusline commands rendered a sample payload with exit 0. This is historical plugin and sample-render evidence, not a new interactive terminal session or model run.", - "limitations": [ - "No macOS execution and no upstream test suite run. There are no release assets for this tag; the supported installation remains a native Claude Code plugin, not a tarball bootstrap kind.", - "First marketplace add failed with exit 1 due to the old source entry; native remove/add/install recovered it. Sample statusline rendering does not establish a fresh interactive Claude session or provider usage.", - "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." - ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" - }, - { - "id": "claude-max-default-effort-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", - "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", - "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", - "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", - "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", - "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", - "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", - "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." - ], - "path": "evidence/receipts/claude-max-default-effort-20260929.json" - }, - { - "id": "claude-model-effort-probes-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", - "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", - "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", - "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", - "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." - ], - "path": "evidence/receipts/claude-model-effort-probes-20260929.json" - }, - { - "id": "claude-project-effort-flag-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", - "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", - "The Ultracode reminder is an indicator, not proof of workflow orchestration.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." - ], - "path": "evidence/receipts/claude-project-effort-flag-20260929.json" - }, - { - "id": "claude-repository-evidence-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "alpaca-py", - "ast-grep", - "beads", - "ccusage", "claude-code", - "claude-hud", "codex", - "codex-for-claude", - "context-hub", "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "duckdb", - "edgartools", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nautilus-trader", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "pandas", - "playwright-cli", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "restic", + "headroom", "rtk", - "sandbox-runtime", - "serena", - "shellcheck", - "skfolio", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "opentelemetry-collector-contrib", + "loki", + "prometheus" ], - "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", + "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", "limitations": [ - "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", - "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", - "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", - "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", - "Superseded observations, including the author's own probe and invocation errors, remain recorded." + "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", + "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", + "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", + "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", + "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", + "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", + "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", + "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." ], - "path": "evidence/receipts/claude-repository-evidence-20260921.json" + "path": "evidence/receipts/native-token-stack-final-20260920.json" }, { - "id": "claude-selective-context-pilot-20260921", + "id": "native-rag", + "path": "evidence/receipts/native-rag.json", "kind": "native_model_e2e", "component_ids": [ - "claude-code", - "context-mode" - ], - "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", - "limitations": [ - "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", - "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", - "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", - "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", - "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", - "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", - "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", - "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." - ], - "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" - }, - { - "id": "claude-spend-attribution-20260929", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code", - "ccusage" - ], - "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", - "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", - "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", - "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", - "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", - "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", - "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", - "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", - "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", - "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", - "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." - ], - "path": "evidence/receipts/claude-spend-attribution-20260929.json" - }, - { - "id": "claude-spend-window-20261004", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code", - "ccusage", - "context-mode" - ], - "claim": "Retained Claude-only ccusage daily costs rise from $2,823.79 and $2,427.25 on October 1/2 to $5,940.56 on October 3. The supplied executor window comparison reproduces exactly from count-only scanner outputs: IET per 24 h rises 2.121 times, counted call rows 2.419 times, and subagents started 2.824 times, while mean context per call falls from 271,790 to 216,230 tokens. The unfiltered retained session-view export is $12,404.88 and its workflow share is 61.402%; removing 17 rows with pre-10-03 last activity leaves $11,151.92, with coordinator-tree shares 63.296% and 33.787%. These are session-selection views, not spend since 10-03. Net pre-first-call attachment growth excluding UI is about 2.9 KB (0.8K rough tokens), rather than the positive-only 4.3 KB (1.2K) estimate. These are scoped observations, not subscription charges or a quality comparison. Adding the retained advisor-cohort estimate gives 830.270M and 1,777.960M IET per 24 h (2.141 times); all 689 A and 1,209 B advisor iterations in those cohorts used Fable. Fable is $2,092.87, or 35.230% of priced Claude dollars on 10-03. The user subsequently selected an Opus 5.5 advisor.", - "limitations": [ - "API-equivalent prices are not the subscription meter. ccusage leaves claude-sonnet-5-5 unpriced; its dollars therefore do not price every counted Claude model.", - "ccusage days are local time and Prometheus days are UTC. These scopes and the scanner windows must not be summed or equated.", - "Prometheus keeps one week; this retained export starts with the UTC day 2026-09-27 and ends with 2026-10-03.", - "The attr byte shares use unfitted weights, so they show direction only; receipt context shares exclude UI records before normalization.", - "The hook_success records are UI-only and are not counted as context. Pre-first-call attachment sizes are serialized metadata bytes, not exact model input or tokenization.", - "NativeStack only, because NativeStack2604's telemetry has no listener. This scope is the coordinator's stated observation boundary, not a new listener check.", - "10-04 is a partial day. The scanner ends at 14:00Z; no full-day projection is a measured total.", - "This is a re-derivation of retained native outputs and scanner aggregates, not a new provider/model run, an upstream acceptance test, or a quality/savings A/B.", - "window_compare.py includes synthetic zero-usage rows in its call counts and uses per-field maximum deduplication. Its subagent calls-per-file statistic spans each selected file, whereas its call and IET windows filter call timestamps.", - "Window hook text is not retained in the aggregate inputs. Historical hook-text estimates are reported as estimates; current installed carrier and upstream static hook sizes are distinct observations and do not establish historical hook outputs.", - "The unfiltered session export includes pre-10-03 activity: 17 rows worth $1,252.96 have lastActivity before 2026-10-03T04:00Z. The raw and activity-selected shares have different denominators. Filtering lastActivity does not restrict the dates of every token in a session total; neither view is established as spend since 10-03.", - "The reproduction artifact extends the supplied analysis with advisor-cohort rows. Original executor output is unchanged. Its private raw output includes source identifiers; only sanitized aggregates are retained here.", - "Advisor iterations are absent from calls.tsv and retained only as per-file tot values in files.jsonl. Grouping them by file first_ts reproduces the reviewed cohorts, but files can cross window boundaries. Executor-plus-advisor-cohort IET is an estimate with mixed timestamp scopes, not an exact call-window total; advisor iterations have no recorded effort here.", - "IET applies the same coefficients to every model: input 1, cache read 0.1, five-minute and unclassified cache writes 1.25, one-hour cache writes 2, and output 5, with thinking already in output. There is no model-specific base-price multiplier. Advisor aggregates lack cache-write duration splits and weight all cache writes at 1.25. Thus IET model shares and window ratios are relative-index measures, not dollar shares or actual spend ratios; Fable dollars from ccusage remain separate. Historical Fable usage precedes the new Opus advisor decision." - ], - "path": "evidence/receipts/claude-spend-window-20261004.json" - }, - { - "id": "claude-upstream-checks-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "ast-grep", - "beads", - "ccusage", - "claude-code", "codex", - "codex-for-claude", - "context-mode", - "dagu", - "difftastic", - "gitleaks", - "grafana", - "headroom", - "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcporter", - "nautilus-trader", - "openresearch", - "opentelemetry-collector-contrib", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "rtk", - "serena", + "claude-code", "socraticode", - "tavily-cli", - "toon", + "qdrant", "vllm", - "worktrunk", - "zizmor" - ], - "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", - "limitations": [ - "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", - "Complete originals remain private; public excerpts are bounded and sanitized.", - "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." - ], - "path": "evidence/receipts/claude-upstream-checks-20260921.json" - }, - { - "id": "codex-01571-qualification-20260926", - "kind": "native_cli_e2e", - "component_ids": [ - "codex" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", - "limitations": [ - "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", - "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", - "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", - "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", - "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", - "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", - "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", - "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", - "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", - "Linux x86_64 only, one host; nothing here is macOS evidence." - ], - "path": "evidence/receipts/codex-01571-qualification-20260926.json" - }, - { - "id": "codex-01592-qualification-20260930", - "kind": "native_cli_e2e", - "component_ids": [ - "codex" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", - "limitations": [ - "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", - "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", - "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", - "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", - "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", - "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", - "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", - "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", - "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", - "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", - "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", - "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", - "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", - "Linux x86_64 only, one host; nothing here is macOS evidence." - ], - "path": "evidence/receipts/codex-01592-qualification-20260930.json" - }, - { - "id": "codex-01593-hindsight-native-memory-20261001", - "kind": "native_cli_e2e", - "component_ids": [ - "codex" + "huggingface-hub-native" ], - "claim": "Fresh native Codex automatic capture and independent recollection from the selected Hindsight bank passed in both headless exec and daemon-backed interactive resume/queue paths.", + "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", "limitations": [ - "Two invented canaries and their record budgets are explicitly synthetic, not project policy, market data or trading acceptance.", - "This is supported native command/API execution with synthetic inputs and independent observation, not an executed upstream Docker or Cargo test suite.", - "Headless exec and daemon-backed TUI are distinct paths; each has its own fresh provider-backed observations below.", - "Knowledge-page search completed but did not contain either canary. Native Hindsight reflect supplied the correct values; page population or cron refresh is not qualified here.", - "Backend seed/survey completion was not established. Native status reported synced=false with active operations; the coordinator separately owns seed-job recovery.", - "Native model token usage excludes Hindsight backend extraction/reflection usage. Backend usage and monetary cost are unknown.", - "No production-quality or token-efficiency comparison is claimed, and no unrelated session or authentication store was read." - ], - "path": "evidence/receipts/codex-01593-hindsight-native-memory-20261001.json" + "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", + "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." + ] }, { - "id": "codex-01593-native-queue-20261001", - "kind": "native_cli_e2e", + "id": "native-memory", + "path": "evidence/receipts/native-memory.json", + "kind": "native_model_e2e", "component_ids": [ - "codex" + "ai-memory", + "codex", + "claude-code" ], - "claim": "Fresh provider-backed native queue delivery succeeded while the owned daemon-backed thread was idle, while a preceding turn was busy, and after its TUI disconnected and resumed. Three official Hindsight hook definitions were individually trusted through the native UI.", + "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", "limitations": [ - "Synthetic messaging inputs qualify these native operations, not production task quality or the whole ecosystem.", - "No upstream Cargo test suite was run; upstream test sources were reviewed and native commands were exercised.", - "No daemon restart was attempted during live qualification, and no unrelated session was inspected or interrupted.", - "Queue delivery to a concurrently running embedded receiver, cross-family bridge delivery, cross-account isolation, remote hosts, and Hindsight retrieval/retention are outside this receipt.", - "Hindsight capture remained disabled during hook trust. Hook trust is not memory acceptance.", - "Provider monetary cost is unknown. Native usage counters do not establish improvement against another configuration." - ], - "path": "evidence/receipts/codex-01593-native-queue-20261001.json" + "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", + "No historical archive backfill or LLM/embedding consolidation pipeline enabled." + ] }, { - "id": "codex-desktop-live-20260920", - "kind": "native_cli_e2e", + "id": "native-context-memory", + "path": "evidence/receipts/native-context-memory.json", + "kind": "native_model_e2e", "component_ids": [ "codex", + "claude-code", "context-mode", - "jcodemunch-mcp", "serena", - "ai-memory", - "socraticode", - "rtk", - "headroom", - "qmd", - "loki", - "prometheus" + "rtk" ], - "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", + "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", "limitations": [ - "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", - "Tools without native savings ledgers remain unavailable, not zero.", - "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", - "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", - "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", - "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", - "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", - "No fresh Prometheus turn sample in the selected window; no three-way observation join." - ], - "path": "evidence/receipts/codex-desktop-live-20260920.json" + "Earlier Serena/RTK run uses its original CLI version.", + "PreCompact was not induced; current Desktop catalog is distinct from child native clients." + ] }, { - "id": "codex-session-environment-20260920", + "id": "runtime-tools", + "path": "evidence/receipts/runtime-tools.json", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "context-mode", - "jcodemunch-mcp", - "serena", - "ai-memory", - "socraticode" + "gitleaks", + "sandbox-runtime" ], - "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", + "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", "limitations": [ - "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", - "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", - "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", - "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", - "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", - "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", - "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." - ], - "path": "evidence/receipts/codex-session-environment-20260920.json" + "No claim of full security certification.", + "Sandbox network denial configured but not separately exercised." + ] }, { - "id": "codex-shell-snapshot-cleanup-20260930", + "id": "artifact-reductions", + "path": "evidence/receipts/artifact-reductions.json", "kind": "artifact_measurement", "component_ids": [ - "codex" + "rtk", + "socraticode", + "openresearch", + "context-mode" ], - "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", + "claim": "Recorded exact selected-text reductions, distinct from model usage.", "limitations": [ - "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", - "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", - "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", - "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." - ], - "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" + "Lossy selections compare retained text to full-file/paper counterfactuals.", + "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." + ] }, { "id": "component-history", @@ -837,116 +564,61 @@ ] }, { - "id": "cross-family-review-terminal-lane-20260930", + "id": "native-cli-gaps", + "path": "evidence/receipts/native-cli-gaps.json", "kind": "native_model_e2e", "component_ids": [ - "codex", - "omniroute", - "claude-code" + "qmd", + "codebase-memory-mcp", + "agent-browser" ], - "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", + "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", - "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", - "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", - "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", - "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", - "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", - "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." - ], - "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" + "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", + "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." + ] }, { - "id": "current-session-observation-20260920", + "id": "worktrunk-list", + "path": "evidence/receipts/worktrunk-list.json", "kind": "native_cli_e2e", "component_ids": [ - "agentsview", - "ai-memory", - "alertmanager", - "ccusage", - "claude-hud", - "context-mode", - "grafana", - "headroom", - "jcodemunch-mcp", - "loki", - "mcporter", - "ntfy", - "opentelemetry-collector-contrib", - "otel-tui", - "prometheus", - "rtk", - "serena", - "socraticode" + "worktrunk" ], - "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", + "claim": "Native wt list enumerated the actual publication worktree set.", "limitations": [ - "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", - "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", - "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", - "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", - "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", - "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", - "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", - "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." - ], - "path": "evidence/receipts/current-session-observation-20260920.json" + "Model-free repository inventory, not multi-agent correctness." + ] }, { - "id": "dashboard-gap-resolution-20260921", - "kind": "native_cli_e2e", + "id": "desktop-direct-rag", + "kind": "native_model_e2e", "component_ids": [ - "ai-memory", - "codex", - "claude-code", - "agentsview", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo", - "vllm" + "socraticode", + "qdrant", + "vllm", + "ai-memory" ], - "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", + "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", "limitations": [ - "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", - "Fresh PreCompact event and active Desktop session end remain unforced.", - "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", - "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", - "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", - "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." + "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", + "No whole-task provider usage/savings attribution is claimed." ], - "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" + "path": "evidence/receipts/desktop-direct-rag.json" }, { - "id": "dashboard-render-e2e-20260921", - "kind": "native_cli_e2e", + "id": "vllm-compatibility", + "kind": "compatibility_attempt", "component_ids": [ - "ai-memory", - "qdrant", - "socraticode", - "serena", - "agentsview", - "dagu", - "omniroute", - "agent-browser", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo" + "vllm", + "socraticode" ], - "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", + "claim": "Latest vLLM0.29.0 native install succeeded but GPU startup failed on WSL; publisher-validated0.25.0 restored and direct retrieval passed.", "limitations": [ - "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", - "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", - "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", - "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", - "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", - "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", - "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." + "This is a host-specific failure, not a claim0.29is universally unusable.", + "The resolver success does not establish GPU/runtime compatibility." ], - "path": "evidence/receipts/dashboard-render-e2e-20260921.json" + "path": "evidence/receipts/vllm-compatibility.json" }, { "id": "desktop-cli-workflows", @@ -965,20 +637,72 @@ "path": "evidence/receipts/desktop-cli-workflows.json" }, { - "id": "desktop-direct-rag", + "id": "portable-cli-artifacts", + "kind": "native_cli_e2e", + "component_ids": [ + "shellcheck", + "difftastic", + "markitdown", + "ast-grep", + "toon", + "repomix" + ], + "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", + "limitations": [ + "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", + "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." + ], + "path": "evidence/receipts/portable-cli-artifacts.json" + }, + { + "id": "native-observability", + "kind": "native_cli_e2e", + "component_ids": [ + "codex", + "claude-code", + "agent-browser", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "grafana", + "alertmanager", + "ntfy" + ], + "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", + "limitations": [ + "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", + "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", + "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", + "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", + "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", + "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." + ], + "path": "observability/receipt.json" + }, + { + "id": "native-observability-followup", "kind": "native_model_e2e", "component_ids": [ + "codex", + "context-mode", + "ai-memory", "socraticode", - "qdrant", - "vllm", - "ai-memory" + "agent-browser", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "grafana" ], - "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", + "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", "limitations": [ - "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", - "No whole-task provider usage/savings attribution is claimed." + "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", + "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", + "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", + "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", + "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", + "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." ], - "path": "evidence/receipts/desktop-direct-rag.json" + "path": "observability/followup-receipt.json" }, { "id": "desktop-restart-acceptance", @@ -1006,648 +730,549 @@ "path": "observability/restart-receipt.json" }, { - "id": "env-freshness-wsl-ubuntu-main-20260924", - "kind": "artifact_measurement", + "id": "sec-financial-data-20260919", + "kind": "compatibility_attempt", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "duckdb", - "pandas", - "edgartools", - "exchange-calendars", - "vllm" + "duckdb" ], - "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", + "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", "limitations": [ - "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", - "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", - "One host; each PC publishes its own report under the same schema.", - "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." + "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", + "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", + "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", + "Current API snapshots do not reconstruct historical point-in-time knowledge.", + "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", + "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." ], - "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" + "path": "blueprints/us-equities/financial-data/receipt.json" }, { - "id": "exchange-calendars-native-check-20260922", + "id": "restic-local-public-reference-20260919", "kind": "native_cli_e2e", "component_ids": [ - "exchange-calendars" + "restic" ], - "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", + "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", "limitations": [ - "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", - "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", - "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", - "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", - "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." + "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", + "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", + "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", + "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", + "Credential loss recovery requires separately approved secure key escrow." ], - "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" + "path": "blueprints/us-equities/hosting/backup/receipt.json" }, { - "id": "foundation-catalog-ui-20260920", - "kind": "artifact_measurement", + "id": "native-research-runtime-20260919", + "kind": "native_model_e2e", "component_ids": [ - "agent-browser" + "claude-code", + "dagu", + "lean", + "duckdb", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", + "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", "limitations": [ - "Source pin/publication URLs pending parent final source commit and regeneration.", - "No provider/broker execution or broad regression rerun performed.", - "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." + "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", + "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", + "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", + "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", + "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", + "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", + "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", + "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." ], - "path": "evidence/receipts/foundation-catalog-ui-20260920.json" + "path": "blueprints/us-equities/research-runtime/receipt.json" }, { - "id": "foundation-closure-20260921", + "path": "blueprints/us-equities/state-recovery/memory/receipt.json", + "id": "ai-memory-native-state-recovery-20260919", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "affaan-m/ECC", - "context-mode" + "ai-memory", + "restic" ], - "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", + "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", "limitations": [ - "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", - "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", - "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", - "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", - "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", - "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", - "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", - "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." - ], - "path": "evidence/receipts/foundation-closure-20260921.json" + "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", + "38 pages table rows include historical versions, not 38 current pages.", + "Native backup excludes raw/, model caches, logs and external native session transcripts.", + "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", + "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", + "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." + ] }, { - "id": "foundation-convergence-20260921", - "kind": "native_model_e2e", + "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", + "id": "qdrant-native-state-recovery-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "rtk", - "headroom", - "toon" + "qdrant", + "restic" ], - "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", + "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", "limitations": [ - "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", - "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", - "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", - "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", - "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." - ], - "path": "evidence/receipts/foundation-convergence-20260921.json" + "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", + "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", + "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", + "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", + "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." + ] }, { - "id": "foundation-native-20260920", + "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", + "id": "qmd-bm25-retrieval-20260919", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qmd", - "qdrant", - "vllm", - "socraticode", - "serena", - "context-mode", - "jcodemunch-mcp", - "rtk", - "headroom", - "repomix", - "toon", - "codex", - "claude-code", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "omniroute" + "qmd" ], - "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", + "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", "limitations": [ - "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", - "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", - "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", - "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", - "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", - "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", - "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", - "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", - "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." - ], - "path": "evidence/receipts/foundation-native-20260920.json" + "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", + "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", + "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", + "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", + "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", + "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", + "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", + "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", + "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", + "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", + "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." + ] }, { - "id": "foundation-rd-20260921", + "path": "blueprints/us-equities/convergence-review/receipt.json", + "id": "native-claude-convergence-review-20260919", "kind": "native_model_e2e", "component_ids": [ "claude-code", - "codex", - "codex-for-claude", - "qmd" + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", + "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", "limitations": [ - "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", - "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", - "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", - "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", - "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." - ], - "path": "evidence/receipts/foundation-rd-20260921.json" + "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", + "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", + "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", + "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", + "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", + "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." + ] }, { - "id": "full-stack-convergence-20260921", + "path": "blueprints/us-equities/supply-chain/receipt.json", + "id": "syft-sdk-inventory-20260919", "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "ccusage", - "claude-code", - "codex", - "context-mode", - "dagu", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "loki", - "omniroute", - "openresearch", - "prometheus", - "qdrant", - "qmd", - "repomix", - "rtk", - "serena", - "socraticode", - "toon", - "vllm", - "worktrunk" + "syft" ], - "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", + "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", "limitations": [ - "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", - "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", - "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", - "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", - "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", - "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", - "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", - "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." - ], - "path": "evidence/receipts/full-stack-convergence-20260921.json" + "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", + "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", + "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", + "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", + "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", + "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", + "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", + "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", + "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", + "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." + ] }, { - "id": "github-automation-newpc-20260922", + "path": "adoption/receipt.json", + "id": "portable-sdk-adoption-20260919", "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code" + "duckdb" ], - "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", + "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", "limitations": [ - "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", - "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", - "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", - "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", - "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", - "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." - ], - "path": "evidence/receipts/github-automation-newpc-20260922.json" + "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", + "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", + "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", + "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", + "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", + "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", + "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." + ] }, { - "id": "gitleaks-macos-memory-bound-20260924", - "kind": "native_cli_e2e", + "path": "adoption/paired/receipt.json", + "id": "native-paired-adoption-20260919", + "kind": "native_model_e2e", "component_ids": [ - "gitleaks" + "codex", + "claude-code", + "duckdb", + "dagu", + "lean", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", + "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", "limitations": [ - "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", - "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", - "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", - "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", - "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", - "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", - "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." - ], - "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" + "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", + "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", + "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", + "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", + "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", + "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", + "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", + "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." + ] }, { - "id": "guard-k3-verification-20260930", - "kind": "artifact_measurement", + "path": "blueprints/us-equities/architecture/receipt.json", + "id": "native-architecture-review-20260919", + "kind": "native_model_e2e", "component_ids": [ - "claude-code" + "codex", + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", + "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", "limitations": [ - "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", - "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", - "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", - "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", + "claim": "Installed alpaca-py request models silently dropped synthetic advanced fields; this explicit broker-disconnected basic-intent boundary rejected those inputs and eight additional negative cases while preserving canonical decimal strings.", "limitations": [ - "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", - "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", - "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", - "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", - "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", - "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", - "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", - "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." - ], - "path": "evidence/receipts/headroom-039-qualification-20260925.json" - }, - { - "id": "hf-memory-models-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "ai-memory", - "socraticode", - "vllm", - "grafana" - ], - "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", - "limitations": [ - "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", - "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", - "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", - "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", - "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", - "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." - ], - "path": "evidence/receipts/hf-memory-models-20260921.json" - }, - { - "id": "jcodemunch-1108327-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "jcodemunch-mcp" - ], - "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", - "limitations": [ - "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", - "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" - }, - { - "id": "local-inference-c2-serving-switch-20260926", - "kind": "native_model_e2e", - "component_ids": [ - "llama-cpp" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", - "limitations": [ - "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", - "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", - "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", - "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", - "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", - "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", - "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." - ], - "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" - }, - { - "id": "login-shell-contract-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code", - "codex" - ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", - "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", - "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", - "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", - "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", - "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", - "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", - "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", - "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", - "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." - ], - "path": "evidence/receipts/login-shell-contract-20260929.json" + "Local contract is not wired into unrelated SDK calls or existing workers; explicit future adapter adoption is required.", + "No broker account, key, asset lookup, risk approval, live/paper order or provider wire behavior was exercised.", + "Whole-share basic create-intent subset only; advanced, replacement, cancellation, retries, order journals and reconciliation remain gated.", + "Input representation cap and symbol/client-ID syntax are local conservative policies, not provider or risk authorization.", + "Python SDK float conversion is observed; the canonical exact decimal envelope is deliberately not serialized through those float fields.", + "JavaScript advanced support is pinned-source evidence only; no alternative SDK was installed or executed.", + "Python audit events and the Linux namespace substantiate this scoped probe, not a universal sandbox or macOS acceptance.", + "Canonical content hashes do not establish client-ID uniqueness, deduplication or safe retry semantics.", + "No token-saving claim or model inference belongs to this deterministic task." + ] }, { - "id": "mac-memory-patch-20260920", - "path": "evidence/receipts/mac-memory-patch-20260920.json", + "id": "native-memory-lifecycle-20260919", + "path": "blueprints/us-equities/memory-lifecycle/receipt.json", "kind": "native_cli_e2e", "component_ids": [ "ai-memory" ], - "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", + "claim": "A disposable, network-isolated native ai-memory fixture passed 23 lifecycle/routing checks across 31 MCP calls; exact-path TTL behavior and explicit sweep limits retained.", "limitations": [ - "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", - "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", - "No provider or whole-task token savings measurement." + "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", + "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", + "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", + "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", + "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", + "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", + "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", + "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", + "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", + "Isolated fixture, not the live memory store or all client hooks.", + "TTL is default-search visibility until sweep, not immediate access revocation.", + "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." ] }, { - "id": "mac-native-application-migration-20260920", + "id": "native-exact-nanosecond-replay-20260919", + "path": "blueprints/us-equities/nanosecond-replay/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "fastapi", - "postgresql" + "duckdb", + "pandas" ], - "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", + "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", "limitations": [ - "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", - "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", - "No model calls; whole-task provider usage unknown." - ], - "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" + "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", + "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", + "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", + "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", + "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", + "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", + "No broker, trading strategy, actual feed or net token-saving acceptance." + ] }, { - "id": "mac-native-container-storage-20260920", + "id": "native-worker-supervision-20260919", + "path": "blueprints/us-equities/worker-supervision/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "apple-container", - "postgresql" + "systemd" ], - "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", + "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", "limitations": [ - "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", - "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", - "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", - "Images remain cached; only owned empty failed container, test database container and test volume were removed.", - "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." - ], - "path": "blueprints/convergence-practice/container-storage/receipt.json" + "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", + "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", + "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", + "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", + "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", + "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", + "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", + "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", + "Hashes bind retained evidence bytes; they do not independently attest the execution.", + "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", + "Configured resource limits were inspected, not saturation-tested." + ] }, { - "id": "mac-native-document-ingestion-20260920", + "id": "native-grand-dashboard-20260919", + "path": "observability/grand-dashboard/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "poppler" + "grafana", + "loki", + "prometheus", + "dagu" ], - "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", + "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", "limitations": [ - "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", - "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", - "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", - "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", - "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." - ], - "path": "blueprints/convergence-practice/document-ingestion/receipt.json" + "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", + "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", + "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", + "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", + "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", + "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", + "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", + "Recorded worker/decision state is not a live process registry.", + "No broker execution, exact-once accounting, universal coverage or net token savings.", + "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." + ] }, { - "id": "markitdown-018-qualification-20260925", - "kind": "native_cli_e2e", + "id": "native-convergence-review-20260919", + "path": "blueprints/us-equities/convergence-program/review-receipt.json", + "kind": "native_model_e2e", "component_ids": [ - "markitdown" + "codex", + "claude-code", + "dagu" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", + "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", "limitations": [ - "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", - "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", - "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", - "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", - "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", - "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", - "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", - "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." - ], - "path": "evidence/receipts/markitdown-018-qualification-20260925.json" + "Models checked packet/report consistency, not original sources or underlying native artifacts.", + "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", + "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", + "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", + "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", + "Usage belongs to this pair only; not whole-goal consumption or causal savings." + ] }, { - "id": "mcp-inspector-280-qualification-20260926", + "id": "native-historical-leverage-stress-20260919", + "path": "blueprints/us-equities/historical-simulation/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "mcp-inspector" + "lean" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", + "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", "limitations": [ - "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", - "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", - "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", - "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", - "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." - ], - "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" + "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", + "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", + "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", + "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", + "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", + "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", + "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", + "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", + "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", + "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", + "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", + "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", + "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", + "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", + "No paper/live orders or automatic promotion." + ] }, { - "id": "mcp-inspector-290-qualification-20261003", + "id": "native-chronological-controls-20260919", "kind": "native_cli_e2e", "component_ids": [ - "mcp-inspector" + "skfolio", + "pandas", + "lean" ], - "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", "limitations": [ - "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", - "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", - "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", + "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", + "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", + "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", + "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", + "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", + "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", + "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." ], - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + "path": "blueprints/us-equities/research-evaluation/receipt.json" }, { - "id": "mcporter-0141-qualification-20260925", + "id": "native-edgartools-catalyst-20260919", "kind": "native_cli_e2e", "component_ids": [ - "mcporter" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", - "limitations": [ - "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", - "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", - "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", - "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", - "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", - "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." - ], - "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" - }, - { - "id": "mcporter-0142-qualification-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "mcporter" + "edgartools" ], - "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", + "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", - "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", - "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", + "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", + "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", + "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", + "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", + "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", + "Native text/byte counts are not provider token savings.", + "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." ], - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + "path": "blueprints/us-equities/catalyst-provenance/receipt.json" }, { - "id": "mcporter-0142-qualification-20261004", + "id": "native-simulation-research-dashboard-20260919", "kind": "native_cli_e2e", "component_ids": [ - "mcporter" + "grafana", + "loki" ], - "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed mcporter 0.14.2 and returned version 0.14.2 with exit 0. Registry provenance matched openclaw/mcporter release.yml at v0.14.2, and a scratch npm audit verified 43 registry signatures and 15 attestations. Ad-hoc stdio jcodemunch session statistics and context-mode ctx_stats calls returned exit 0. Configured-daemon calls failed on a stale rendezvous and were not recovered. This receipt republishes sanitized historical host observations, not a new host execution.", + "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", "limitations": [ - "No macOS execution and no upstream test suite run. The npm tarball hash is artifact evidence and does not pin the transitive dependency tree or rolldown platform binding.", - "Configured-server list/call failures are retained. The stale daemon was not recovered and keep-alive transport acceptance is not claimed; dist/daemon/client.js was recorded byte-identical across 0.14.1 and 0.14.2.", - "npm audit signatures --global failed with EAUDITGLOBAL (exit 1); only the later scratch-project audit succeeded. The ad-hoc MCP statistics are self-reports, not provider counts or savings.", - "The Mac keeps its separately qualified MCPorter 0.13.13 pin until a Mac qualifies 0.14.2. The platform-independent tarball artifact check is not Mac execution or Mac qualification." + "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", + "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", + "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", + "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", + "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", + "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", + "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." ], - "path": "evidence/receipts/mcporter-0142-qualification-20261004.json" + "path": "blueprints/us-equities/simulation-research/receipt.json" }, { - "id": "memory-landscape-20260921", + "id": "native-sec-access-resolution-20260919", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "codex", - "claude-code" + "edgartools" ], - "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", + "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", "limitations": [ - "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", - "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", - "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", - "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", - "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", - "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", - "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", - "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", - "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." + "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", + "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", + "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", + "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", + "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", + "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", + "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", + "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." ], - "path": "evidence/receipts/memory-landscape-20260921.json" + "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" }, { - "id": "memory-landscape-lifecycle-20260921", + "id": "native-sec-new-host-20260924", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qdrant", - "vllm", - "serena", - "qmd", - "codex", - "claude-code" + "edgartools" ], - "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", + "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", "limitations": [ - "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", - "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", - "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", - "Exact memory session/lifetime savings are not returned and remain null.", - "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." + "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", + "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", + "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", + "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", + "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", + "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", + "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." ], - "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" + "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", + "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" }, { - "id": "memory-lifecycle-probe-20260921", + "id": "sec-catalyst-dataset-native-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "edgartools", + "duckdb" ], - "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", + "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", "limitations": [ - "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", - "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", - "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", - "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", - "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", - "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." + "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", + "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", + "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", + "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", + "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", + "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", + "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", + "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", + "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." ], - "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" + "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" }, { - "id": "native-ai-memory-maintenance-20260920", - "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", + "id": "native-corporate-actions-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "lean" ], - "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", + "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", - "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", - "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", - "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", - "Forward-only migrations may require restoring the retained private backup to downgrade." + "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", + "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", + "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", + "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", + "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", + "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" }, { "id": "native-alpaca-historical-20260920", @@ -1668,392 +1293,381 @@ "path": "blueprints/us-equities/authenticated-data/native-receipt.json" }, { - "id": "native-application-delivery-20260920", + "id": "native-security-identity-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nextjs", - "react", - "fastapi", - "postgresql" + "alpaca-py", + "duckdb" ], - "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", + "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", "limitations": [ - "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", - "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", - "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", - "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", - "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", - "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", - "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", - "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." + "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", + "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", + "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", + "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", + "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", + "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", + "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", + "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." ], - "path": "blueprints/convergence-practice/application-delivery/receipt.json" + "path": "blueprints/us-equities/identity-readiness/native-receipt.json" }, { - "path": "blueprints/us-equities/architecture/receipt.json", - "id": "native-architecture-review-20260919", - "kind": "native_model_e2e", + "id": "token-practice-artifacts-20260920", + "kind": "artifact_measurement", "component_ids": [ - "codex", - "claude-code", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "agent-browser", + "ast-grep", + "edgartools", + "markitdown", + "qmd", + "repomix", + "rtk", + "socraticode", + "syft", + "toon" ], - "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", + "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", "limitations": [ - "The models reviewed supplied evidence and did not independently inspect primary sources. Their critiques are advisory and were adjudicated; agreement does not establish correctness or trading performance.", - "This is a native architecture-review task, not another LEAN/Dagu backtest run, full MCP/RAG acceptance, broker integration, hosted deployment or universal SOTA census.", - "The44,214 combined native reported tokens exclude coordinator and source-research workers. They are usage, not causal tokens saved or a billing measurement across identical tokenizers.", - "Astra cached input is included in input and reasoning output in output. Claude thinking is included in output; duplicate per-model/iteration/stream views are not added again.", - "Native model selection and terminal usage are not independent provider attestation. Full account/session/process identifiers and raw event streams remain private.", - "The offline Alpaca observation detects synthetic field loss only; no client/network/order, valid advanced-order fixture, entitlement or execution adapter was tested.", - "New machines must reproduce their own selected native profile and sign-in; these local WSL receipts do not establish macOS or unattended-host acceptance." - ] + "Counts describe retained original host artifacts. This public aggregate omits the private originals; CI validates aggregate integrity, not an independent recount of those private bytes.", + "Most pairs select or transform information lossily. Shorter output does not establish equivalent answer quality or lower complete task usage.", + "Pairs overlap, including shared HTML sources and retrieval services. Do not sum them or attribute the same difference independently to dependencies.", + "Exact provider savings remain null. Tokenizer counts are not provider billing, subscription savings or causal per-repository effects.", + "The Syft table preserves checked package name/version/type columns while omitting other SBOM metadata; this is a view selection, not equivalent full SBOM content." + ], + "path": "evidence/receipts/token-practice-artifacts-20260920.json" }, { - "id": "native-catalog-retrieval-20260920", - "kind": "native_cli_e2e", + "id": "token-practice-native-pairs-20260920", + "kind": "native_model_e2e", "component_ids": [ - "qmd" + "codex", + "claude-code", + "context-mode" ], - "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", + "claim": "Four native coding trials passed shared visible, hidden and file-scope acceptance gates; one fixed-order Context Mode non-use/explicit-use pair per client produced mixed observed task-usage differences.", "limitations": [ - "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", - "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", - "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", - "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." + "One baseline-first pair per client is not randomized, repeated or cache-matched. Native cache warmth and plugin tool availability were not fully controlled.", + "Observed differences are not causal per-repository savings, a whole-stack saving rate or evidence that either model is generally better.", + "Codex cached input and reasoning output are subsets. Claude ordinary input, cache creation, cache reads and output are separate categories; thinking is included in output.", + "Final cumulative session counters are used once. Coordinator, reviewers, audit tooling and report production are outside these four task totals.", + "Billed cost is unknown. Token counts and cached reads do not establish subscription charges or money saved.", + "Private transcripts, session identifiers and commands are not published. Hashes bind retained evidence, not independent attestation of provider execution." ], - "path": "evidence/receipts/native-catalog-retrieval-20260920.json" + "path": "evidence/receipts/token-practice-native-pairs-20260920.json" }, { - "id": "native-chronological-controls-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "skfolio", - "pandas", - "lean" - ], - "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", - "limitations": [ - "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", - "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", - "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", - "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", - "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", - "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", - "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", - "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." - ], - "path": "blueprints/us-equities/research-evaluation/receipt.json" - }, - { - "id": "native-ci-security-20260920", - "kind": "native_cli_e2e", - "component_ids": [ - "zizmor" - ], - "claim": "Native zizmor1.30.1 on macOS accepts the published workflow under offline regular analysis and rejects an inert unsafe fixture with three findings; two executable regression checks pass.", - "limitations": [ - "Offline regular analysis is scoped static evidence, not absence of every vulnerability or signature verification.", - "Mac binary and the checksum-locked Linux CI wheel are distinct artifacts; new runner execution is established by its own CI result.", - "The unsafe fixture was analyzed but never executed. No model calls, broker actions or savings measurement." - ], - "path": "blueprints/convergence-practice/ci-security/receipt.json" - }, - { - "id": "native-claude-child-patch-20260920", - "kind": "native_model_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Native Claude Code2.1.278 on Ubuntu24.04 WSL2 used Opus5 through Max for one foreground isolated child repair. Only planner.py changed; all12 frozen visible tests pass independently after8 seed failures.", - "limitations": [ - "One synthetic visible-oracle fixture, not a held-out benchmark, real application or GPU acceptance.", - "Ultracode was requested; observed native delegation does not establish dynamic-workflow selection or an OS sandbox.", - "Three native usage views retain different scopes; native retries and whole Desktop usage are unknown. No matched model baseline or savings claim.", - "Local supervision completed without timeout; provider cancellation, crash recovery and full-host backup were not tested." - ], - "path": "blueprints/convergence-practice/native-worker/receipt.json" - }, - { - "path": "blueprints/us-equities/convergence-review/receipt.json", - "id": "native-claude-convergence-review-20260919", - "kind": "native_model_e2e", + "id": "token-practice-coverage-20260920", + "kind": "historical_inventory", "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "ast-grep", + "ccusage", "claude-code", + "claude-hud", + "codebase-memory-mcp", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "davila7/claude-code-templates", + "difftastic", + "gitleaks", + "headroom", + "huggingface-hub-native", + "markitdown", + "mcp-inspector", + "mcporter", + "openresearch", + "playwright-cli", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "rtk", + "sandbox-runtime", + "serena", + "shanraisshan/claude-code-best-practice", + "shellcheck", + "socraticode", + "toon", + "vllm", + "worktrunk", "opentelemetry-collector-contrib", "prometheus", - "loki" + "loki", + "grafana", + "alertmanager", + "ntfy", + "duckdb", + "restic", + "dagu", + "lean", + "syft", + "alpaca-py", + "systemd", + "pandas", + "skfolio", + "edgartools" ], - "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", + "claim": "A dated 52-component audit distinguishes native artifact/task pairs, bounded functionality, current queries, configuration validation, historical-only evidence, host failures and non-executable guidance.", "limitations": [ - "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", - "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", - "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", - "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", - "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", - "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." - ] + "This historical coverage inventory records the dated audit only; it is not 52 fresh end-to-end passes or new-host acceptance.", + "Seventy captured operations include four retained failed attempts; successful corrections do not erase the initial OTel environment and Dagu environment-filter failures.", + "Two Linux Playwright invocations failed with ENOENT; the Windows installation does not establish Linux availability.", + "Guidance repositories are not executable tools. Current state, backup and cache queries or configuration validation do not prove complete lifecycle behavior.", + "Native RTK, TOON, Context Mode and Headroom counters have different scopes and estimators. They cannot be summed with artifact differences or provider usage.", + "Exact causal per-component provider saving values remain unknown rather than zero." + ], + "path": "evidence/receipts/token-practice-coverage-20260920.json" }, { - "id": "native-claude-hud-interactive-20260920", - "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", - "kind": "compatibility_attempt", + "id": "token-practice-catalog-toon-20260920", + "kind": "artifact_measurement", "component_ids": [ - "claude-hud" + "toon" ], - "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", + "claim": "A reversible full-catalog TOON conversion had a smaller native heuristic estimate but a larger exact token count than compact JSON; the guard retained compact JSON.", "limitations": [ - "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", - "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", - "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." - ] + "This is one later artifact comparison, separate from the ten original token-practice pairs. Do not sum it with cumulative native counters or provider usage.", + "Native tokenx estimates and exact o200k_base counts use different estimators and JSON representations; they are not interchangeable savings metrics.", + "The public aggregate omits the private captured output files. Published hashes establish identity, not independent CI recount of the private bytes.", + "Exact provider savings remain unknown. The successful strict round trip establishes data equivalence for this conversion only.", + "Command templates replace host-specific source and output locations with portable placeholders." + ], + "path": "evidence/receipts/token-practice-catalog-toon-20260920.json" }, { - "id": "native-claude-profile-20260920", - "kind": "native_cli_e2e", + "id": "token-practice-native-counters-20260920", + "kind": "historical_inventory", "component_ids": [ - "claude-code", - "codex", - "affaan-m/ECC", "context-mode", - "rtk" + "headroom", + "rtk", + "toon" ], - "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", + "claim": "Dated native counter snapshots retain RTK output, the capped Headroom ledger result, per-conversion TOON estimates and three separate Context Mode runtime scopes without treating them as exact provider savings.", "limitations": [ - "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", - "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", - "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", - "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", - "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", - "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", - "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", - "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", - "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." + "This historical snapshot is a dated report only, not a live dashboard or new-host execution acceptance.", + "RTK counters estimate retained command history and default to 90-day retention; selected-project values are a subset of the global result. Do not add snapshots or assume a forever ledger.", + "Headroom 0.37.0 caps the report at 30 days despite naming a field lifetime; zero ledger calls do not establish zero offline guard use or provider usage.", + "Context Mode uses byte/event heuristics and separate runtime state. Illustrative cost estimates are not bills, and persisted files must not be added to a direct MCP connection snapshot.", + "TOON statistics are tokenx heuristics for one conversion, not a native cumulative ledger. The compact-JSON exact counterexample is represented by the separate catalog receipt and must not be counted twice.", + "Raw private files, host paths, full command outputs and session identifiers are omitted. Sanitized fields and aggregate hashes do not independently attest provider activity." ], - "path": "evidence/receipts/native-claude-profile-20260920.json" + "path": "evidence/receipts/token-practice-native-counters-20260920.json" }, { - "id": "native-claude-session-recovery-20260920", - "kind": "native_model_e2e", + "id": "token-practice-gap-followup-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "playwright-cli", + "agentsview", + "ccusage", + "claude-hud", + "openresearch", + "codex-for-claude", + "codex" ], - "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", + "claim": "Six separately scoped follow-ups exercised a pinned Linux browser fixture, a single-session archive query, offline usage parsing, a synthetic HUD renderer, public-paper retrieval and one read-only native bridge backend task.", "limitations": [ - "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", - "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", - "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", - "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." + "These later bounded results do not turn the earlier dated 52-component audit into 52 full end-to-end passes. Individual scopes below remain authoritative.", + "Three failed attempts remain: file-protocol navigation rejection, implicit archive auto-start message failure and archive restart-lock failure. Successful recovery does not erase them.", + "Playwright used an existing Chrome installation and a fixture-only loopback HTTP endpoint. Its Playwright dependencies are alpha builds; no default browser download or arbitrary-site acceptance was tested.", + "The archive was restricted to one explicit project session. Full private transcripts, authentication material and session identifiers are omitted; automatic archive discovery did not pass.", + "HUD acceptance is a synthetic renderer fixture, not a live interactive account display. OpenResearch acceptance is public-paper retrieval, not an agent research workflow or research-quality assessment.", + "The ccusage reports overlap and must not be added. Upstream parser categories and totals are not bills or a matched provider savings comparison. The first date-only query returned an empty window.", + "The bridge trial is additional observed provider usage, not savings. It used one backend task without an outer Claude interaction or matched baseline; cached input is a subset of native input.", + "Tracked source remained unchanged; native MCP startup created untracked metadata. All owned temporary services were stopped. Public aggregate hashes bind retained evidence but do not independently reproduce private logs." ], - "path": "evidence/receipts/native-claude-session-recovery-20260920.json" + "path": "evidence/receipts/token-practice-gap-followup-20260920.json" }, { - "id": "native-cli-gaps", - "path": "evidence/receipts/native-cli-gaps.json", - "kind": "native_model_e2e", + "id": "native-lifecycle-sample-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "qmd", - "codebase-memory-mcp", - "agent-browser" + "edgartools", + "duckdb" ], - "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", + "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", "limitations": [ - "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", - "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." - ] + "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", + "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", + "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", + "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", + "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", + "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." + ], + "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" }, { - "id": "native-codex-session-recovery-20260920", - "kind": "native_model_e2e", + "id": "synthetic-catalyst-contract-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "codex" + "duckdb" ], - "claim": "Native Codex on Mac interrupted an owned pending dynamic tool, reconnected through a new app-server and resumed the same native thread/session to finalize an unchanged single checkpoint.", + "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", "limitations": [ - "One synthetic two-turn fixture on the installed Mac bundled alpha; no general distributed exactly-once guarantee.", - "No arbitrary shell/MCP descendant, provider cancellation, power loss or independent-host restore test.", - "Native cumulative token categories counted once; retries, billing and enclosing coordinator usage unknown; no savings claim." + "Protocol thresholds are exploratory choices, not fitted or proven optimal.", + "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", + "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", + "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", + "No provider calls, broker orders, new model turn or net token-savings measurement." ], - "path": "evidence/receipts/native-codex-session-recovery-20260920.json" + "path": "blueprints/us-equities/catalyst-experiment/receipt.json" }, { - "id": "native-context-memory", - "path": "evidence/receipts/native-context-memory.json", + "id": "native-research-efficiency-20260920", "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", - "context-mode", - "serena", - "rtk" + "qmd" ], - "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", + "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", "limitations": [ - "Earlier Serena/RTK run uses its original CLI version.", - "PreCompact was not induced; current Desktop catalog is distinct from child native clients." - ] - }, - { - "id": "native-convergence-review-20260919", - "path": "blueprints/us-equities/convergence-program/review-receipt.json", - "kind": "native_model_e2e", - "component_ids": [ - "codex", - "claude-code", - "dagu" + "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", + "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", + "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", + "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", + "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", + "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", + "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", + "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", + "Local supervision does not prove provider-side cancellation; no run timed out.", + "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." ], - "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", - "limitations": [ - "Models checked packet/report consistency, not original sources or underlying native artifacts.", - "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", - "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", - "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", - "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", - "Usage belongs to this pair only; not whole-goal consumption or causal savings." - ] + "path": "blueprints/us-equities/research-efficiency/native-receipt.json" }, { - "id": "native-corporate-actions-20260920", + "id": "native-ci-security-20260920", "kind": "native_cli_e2e", "component_ids": [ - "lean" + "zizmor" ], - "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", + "claim": "Native zizmor1.30.1 on macOS accepts the published workflow under offline regular analysis and rejects an inert unsafe fixture with three findings; two executable regression checks pass.", "limitations": [ - "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", - "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", - "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", - "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", - "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", - "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." + "Offline regular analysis is scoped static evidence, not absence of every vulnerability or signature verification.", + "Mac binary and the checksum-locked Linux CI wheel are distinct artifacts; new runner execution is established by its own CI result.", + "The unsafe fixture was analyzed but never executed. No model calls, broker actions or savings measurement." ], - "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" + "path": "blueprints/convergence-practice/ci-security/receipt.json" }, { - "id": "native-dagu-job-recovery-20260920", - "kind": "native_cli_e2e", + "id": "native-claude-child-patch-20260920", + "kind": "native_model_e2e", "component_ids": [ - "dagu" + "claude-code" ], - "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", + "claim": "Native Claude Code2.1.278 on Ubuntu24.04 WSL2 used Opus5 through Max for one foreground isolated child repair. Only planner.py changed; all12 frozen visible tests pass independently after8 seed failures.", "limitations": [ - "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", - "Initial native schema failure and earlier Mac success are retained; no savings comparison." + "One synthetic visible-oracle fixture, not a held-out benchmark, real application or GPU acceptance.", + "Ultracode was requested; observed native delegation does not establish dynamic-workflow selection or an OS sandbox.", + "Three native usage views retain different scopes; native retries and whole Desktop usage are unknown. No matched model baseline or savings claim.", + "Local supervision completed without timeout; provider cancellation, crash recovery and full-host backup were not tested." ], - "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" + "path": "blueprints/convergence-practice/native-worker/receipt.json" }, { - "id": "native-dagu-retry-tests-20260920", + "id": "upstream-native-tools-20260920", + "path": "evidence/receipts/upstream-native-tools-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "dagu" + "beads", + "skills-ref", + "otel-tui" ], - "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", + "claim": "Three supplemental upstream tools installed on the source Linux/WSL host: Beads persisted task claims and dependency transitions, skills-ref validated and rendered a selected skill, and otel-tui ingested and displayed one synthetic loopback trace.", "limitations": [ - "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", - "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", - "No broker/provider operations or token savings were measured.", - "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "Bounded native CLI/TUI acceptance on Linux/WSL; no new native Codex or Claude provider task was run for these additions.", + "Beads used one owned Git fixture with embedded Dolt, explicit task scope, skipped agent-instruction generation and skipped hooks. It does not replace ai-memory.", + "skills-ref is upstream's reference/demo implementation; successful portable-format validation does not certify production client extensions or tool semantics.", + "otel-tui received one synthetic local trace; no production or native-provider telemetry session was evaluated and no persistent exporter was installed.", + "None of these three tools exposes a verified cumulative token-savings counter. Exact causal lifetime provider savings remain null.", + "Public command forms substitute portable variables for private host paths; private raw operation logs are not published." ], - "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-dashboard-access-20260921", + "id": "native-ai-memory-maintenance-20260920", + "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "dagu", - "qdrant", - "agentsview", - "grafana", - "prometheus", - "ntfy", - "agent-browser", - "omniroute" + "ai-memory" ], - "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", + "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", "limitations": [ - "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", - "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", - "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", - "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", - "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", - "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", - "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", + "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", + "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", + "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", + "Forward-only migrations may require restoring the retained private backup to downgrade." ], - "path": "evidence/receipts/native-dashboard-access-20260921.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-dashboard-data-20260921", + "id": "native-linux-zizmor-20260920", + "path": "evidence/receipts/native-linux-zizmor-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qmd", - "qdrant", - "agentsview", - "grafana", - "loki", - "rtk", - "context-mode", - "headroom", - "jcodemunch-mcp", - "promptfoo", - "serena", - "systemd" + "zizmor" ], - "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", + "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", "limitations": [ - "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", - "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", - "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", - "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", - "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", - "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", - "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", - "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", - "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", + "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", + "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", + "No provider task was run and zizmor supplies no verified lifetime token-savings counter." ], - "path": "evidence/receipts/native-dashboard-data-20260921.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-edgartools-catalyst-20260919", + "id": "native-dagu-job-recovery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "dagu" ], - "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", + "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", "limitations": [ - "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", - "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", - "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", - "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", - "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", - "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", - "Native text/byte counts are not provider token savings.", - "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." + "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", + "Initial native schema failure and earlier Mac success are retained; no savings comparison." ], - "path": "blueprints/us-equities/catalyst-provenance/receipt.json" + "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" }, { - "id": "native-exact-nanosecond-replay-20260919", - "path": "blueprints/us-equities/nanosecond-replay/receipt.json", - "kind": "native_cli_e2e", + "id": "native-codex-session-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "duckdb", - "pandas" + "codex" ], - "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", + "claim": "Native Codex on Mac interrupted an owned pending dynamic tool, reconnected through a new app-server and resumed the same native thread/session to finalize an unchanged single checkpoint.", "limitations": [ - "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", - "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", - "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", - "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", - "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", - "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", - "No broker, trading strategy, actual feed or net token-saving acceptance." - ] + "One synthetic two-turn fixture on the installed Mac bundled alpha; no general distributed exactly-once guarantee.", + "No arbitrary shell/MCP descendant, provider cancellation, power loss or independent-host restore test.", + "Native cumulative token categories counted once; retries, billing and enclosing coordinator usage unknown; no savings claim." + ], + "path": "evidence/receipts/native-codex-session-recovery-20260920.json" }, { "id": "native-gpu-patch-20260920", @@ -2072,52 +1686,67 @@ "path": "evidence/receipts/native-gpu-patch-20260920.json" }, { - "id": "native-grand-dashboard-20260919", - "path": "observability/grand-dashboard/receipt.json", - "kind": "native_cli_e2e", + "id": "native-claude-session-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "grafana", - "loki", - "prometheus", - "dagu" + "claude-code" ], - "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", + "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", "limitations": [ - "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", - "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", - "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", - "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", - "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", - "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", - "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", - "Recorded worker/decision state is not a live process registry.", - "No broker execution, exact-once accounting, universal coverage or net token savings.", - "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." - ] + "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", + "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", + "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", + "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." + ], + "path": "evidence/receipts/native-claude-session-recovery-20260920.json" }, { - "id": "native-harness-defaults-20260920", - "kind": "artifact_measurement", + "id": "token-native-retained-functional-20260920", + "path": "evidence/receipts/token-native-retained-functional-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code" + "context-hub", + "headroom", + "mcp-inspector", + "promptfoo", + "worktrunk" ], - "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", + "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", "limitations": [ - "Saved instruction bytes are not proof that every future model decision will follow them.", - "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", - "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." - ], - "path": "evidence/receipts/native-harness-defaults-20260920.json" + "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", + "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", + "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", + "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", + "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", + "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." + ] }, { - "id": "native-headroom-mcp-20260920", - "path": "evidence/receipts/native-headroom-mcp-20260920.json", + "id": "native-jcodemunch-20260920", + "path": "evidence/receipts/native-jcodemunch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "headroom" + "jcodemunch-mcp" ], - "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", + "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", + "limitations": [ + "Single bounded code-reading task, not a native provider A/B trial.", + "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", + "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", + "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", + "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", + "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", + "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." + ] + }, + { + "id": "native-headroom-mcp-20260920", + "path": "evidence/receipts/native-headroom-mcp-20260920.json", + "kind": "native_cli_e2e", + "component_ids": [ + "headroom" + ], + "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", "limitations": [ "Owned synthetic acceptance artifacts demonstrate artifact reduction, not lifetime production or provider-token savings", "MCP summary is not a lossless replacement of the original; its exact full retrieval consumes the original token count", @@ -2128,676 +1757,589 @@ ] }, { - "id": "native-historical-leverage-stress-20260919", - "path": "blueprints/us-equities/historical-simulation/receipt.json", - "kind": "native_cli_e2e", + "id": "native-token-focus-clients-20260920", + "path": "evidence/receipts/native-token-focus-clients-20260920.json", + "kind": "native_model_e2e", "component_ids": [ - "lean" + "codex", + "claude-code", + "context-mode", + "jcodemunch-mcp" ], - "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", + "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", "limitations": [ - "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", - "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", - "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", - "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", - "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", - "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", - "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", - "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", - "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", - "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", - "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", - "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", - "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", - "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", - "No paper/live orders or automatic promotion." + "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", + "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", + "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", + "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", + "Raw private prompts, client streams, account identifiers and host paths are not published." ] }, { - "id": "native-jcodemunch-20260920", - "path": "evidence/receipts/native-jcodemunch-20260920.json", + "id": "native-sandbox-network-20260920", + "path": "evidence/receipts/native-sandbox-network-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "jcodemunch-mcp" + "sandbox-runtime" ], - "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", + "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", "limitations": [ - "Single bounded code-reading task, not a native provider A/B trial.", - "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", - "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", - "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", - "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", - "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", - "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." + "HTTP proxy path tested on this Linux/WSL host", + "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", + "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", + "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." ] }, { - "path": "blueprints/us-equities/execution-realism/receipt.json", - "id": "native-lean-execution-sensitivity-20260919", - "kind": "native_cli_e2e", + "id": "native-claude-hud-interactive-20260920", + "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", + "kind": "compatibility_attempt", "component_ids": [ - "lean" + "claude-hud" ], - "claim": "Native LEAN completed three fixed-order historical simulations with distinct upstream fee/slippage assumptions; serialized fill cash reconciles to native rounded summaries and all mounted engine/data input hashes remained unchanged.", + "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", "limitations": [ - "Exact arithmetic over serialized native event values; exported five-decimal fill prices and cent-rounded summaries do not expose all internal precision.", - "Illustrative fees and slippage are assumptions, not calibrated market or Alpaca execution observations.", - "Full-quantity market fills remain assumed; participation, partial fills, impact, latency, queueing, cancellation and broker reconciliation remain unaccepted.", - "Bundled five-day data do not establish PIT/corporate-action/universe quality or investment returns.", - "The normal dotnet build/restore route timed out twice; only the installed native C# compiler route is accepted.", - "Mounted input hashes do not prove every file was read; successful request logs list 13 paths plus possible separately read metadata.", - "No broker connection, account entitlement, deployment, strategy promotion, provider usage or token saving is established." + "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", + "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", + "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." ] }, { - "id": "native-lifecycle-sample-20260920", + "id": "native-application-delivery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "nextjs", + "react", + "fastapi", + "postgresql" ], - "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", + "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", "limitations": [ - "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", - "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", - "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", - "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", - "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", - "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." + "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", + "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", + "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", + "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", + "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", + "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", + "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", + "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." ], - "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" + "path": "blueprints/convergence-practice/application-delivery/receipt.json" }, { - "id": "native-linux-zizmor-20260920", - "path": "evidence/receipts/native-linux-zizmor-20260920.json", + "id": "mac-native-document-ingestion-20260920", "kind": "native_cli_e2e", "component_ids": [ - "zizmor" + "poppler" ], - "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", + "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", - "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", - "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", - "No provider task was run and zizmor supplies no verified lifetime token-savings counter." + "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", + "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", + "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", + "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", + "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "blueprints/convergence-practice/document-ingestion/receipt.json" }, { - "id": "native-memory", - "path": "evidence/receipts/native-memory.json", - "kind": "native_model_e2e", + "id": "native-wsl-restic-synthetic-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "codex", - "claude-code" + "restic" ], - "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", + "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", "limitations": [ - "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", - "No historical archive backfill or LLM/embedding consolidation pipeline enabled." - ] + "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", + "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", + "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", + "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", + "No token, storage-efficiency or backup performance claim.", + "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", + "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", + "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", + "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", + "Ten offline oracle/guard tests are distinct from the actual native restic commands." + ], + "path": "blueprints/convergence-practice/wsl-restore/receipt.json" }, { - "id": "native-memory-lifecycle-20260919", - "path": "blueprints/us-equities/memory-lifecycle/receipt.json", + "id": "mac-native-container-storage-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "apple-container", + "postgresql" ], - "claim": "A disposable, network-isolated native ai-memory fixture passed 23 lifecycle/routing checks across 31 MCP calls; exact-path TTL behavior and explicit sweep limits retained.", + "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", "limitations": [ - "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", - "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", - "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", - "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", - "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", - "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", - "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", - "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", - "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", - "Isolated fixture, not the live memory store or all client hooks.", - "TTL is default-search visibility until sweep, not immediate access revocation.", - "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." - ] + "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", + "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", + "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", + "Images remain cached; only owned empty failed container, test database container and test volume were removed.", + "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." + ], + "path": "blueprints/convergence-practice/container-storage/receipt.json" }, { - "id": "native-memory-rag-alignment-20260921", + "id": "mac-native-application-migration-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qdrant", - "qmd", - "vllm", - "grafana", - "loki" + "fastapi", + "postgresql" ], - "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", + "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", "limitations": [ - "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", - "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", - "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", - "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", - "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", - "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", - "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." + "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", + "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", + "No model calls; whole-task provider usage unknown." ], - "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" + "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" }, { - "id": "native-nautilus-ci-20260920", + "id": "velanext-native-quality-tools-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "gitleaks", + "worktrunk" ], - "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", + "claim": "On VelaNext, exact gitleaks8.30.1 detected one inert test credential and accepted the clean control with redacted reports. Worktrunk0.78.0 created/listed/removed owned worktrees while refusing dirty removal without loss.", "limitations": [ - "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", - "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", - "Network namespace and available-interface observations are not measured counts of attempted external transports." + "Isolated synthetic Linux/WSL fixtures; no arbitrary repository safety/security certification or Mac acceptance inferred.", + "Original executed runner and attempt retained. Second attempt follows exact-pin/archive/binary/version binding and timeout-evidence hardening;20 offline guards passed on Mac and WSL.", + "GitHub attestation endpoints returned404. Publisher checksum, GitHub archive digest and exact pinned license checks passed; no attestation claim.", + "No accounts, shared services, project hooks or model calls changed by qualification. Global promotion, when performed, is separate host deployment evidence.", + "Whole coordinator/worker provider usage is unknown; no token or monetary savings claim." ], - "path": "evidence/receipts/native-nautilus-ci-20260920.json" + "path": "blueprints/convergence-practice/wsl-native-tools/receipt.json" }, { - "id": "native-nautilus-v2-20260920", + "id": "mac-memory-patch-20260920", + "path": "evidence/receipts/mac-memory-patch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "ai-memory" ], - "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", + "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", "limitations": [ - "Release candidate, not production/live-capital acceptance.", - "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", - "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", - "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", - "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", - "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", - "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." - ], - "path": "evidence/receipts/native-nautilus-v2-20260920.json" + "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", + "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", + "No provider or whole-task token savings measurement." + ] }, { - "id": "native-observability", + "path": "evidence/receipts/wsl-application-20260920.json", + "id": "wsl-application-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana", - "alertmanager", - "ntfy" + "nextjs", + "react", + "fastapi", + "postgresql", + "playwright-test" ], - "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", + "claim": "Clean isolated WSL runtime restored the same locked application, passed12 API checks, migration reversal, schema/types, production build and real browser flow; exact row/history persisted after PostgreSQL/API/Next restart.", "limitations": [ - "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", - "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", - "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", - "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", - "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", - "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." - ], - "path": "observability/receipt.json" + "Synthetic loopback application; no production deployment, user authentication or another-host acceptance.", + "Official exact Ubuntu packages were extracted task-only with signed metadata/SHA verification; no package scripts or system database changes.", + "Historical application inputs remain frozen; Makelevel/TIME_WAIT recipe fixes were qualified separately with five real make/socket tests on Mac and WSL.", + "No model calls by application commands; whole-task usage remains unknown." + ] }, { - "id": "native-observability-followup", - "kind": "native_model_e2e", + "id": "wsl-transport-recovery-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "context-mode", - "ai-memory", - "socraticode", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana" + "dagu" ], - "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", + "claim": "An owned nonmultiplexed SSH client was terminated; fresh reconnect observed the same native Dagu job running with one unchanged checkpoint, then native completion without stop or retry.", "limitations": [ - "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", - "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", - "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", - "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", - "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", - "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." + "Controlled client termination and a deliberately detached deterministic job; not a real network outage, host restart, model-session recovery or distributed exactly-once guarantee.", + "First harness attempt misclassified native SSH exit255 and stopped the job; its narrower same-run finalizer retry is retained separately from corrected survival acceptance.", + "Original12-test oracle passed before and after; observed owned processes/listener retired; whole-task provider usage remains unknown." ], - "path": "observability/followup-receipt.json" + "path": "evidence/receipts/wsl-transport-recovery-20260920.json" }, { - "id": "native-offhost-app-state-20260920", + "id": "wsl-document-ingestion-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qdrant", - "restic" + "poppler" ], - "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", + "claim": "Native Poppler26.09.0 built in a clean WSL prefix and passed the frozen3-page,24-cell,8-positive/4-absent document protocol; four extraction/retrieval artifacts exactly match Mac output.", "limitations": [ - "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", - "Sequential native application snapshots do not establish an atomic cross-application transaction.", - "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", - "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", - "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", - "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", - "No model/provider/broker calls or causal token/cost savings measurement." + "Designed born-digital Latin fixture with explicit table geometry; no OCR, inferred layout, general semantic retrieval or broad upstream corpus qualification.", + "Exact source signature, signed package extraction and native dependency checks preceded execution; failed first public-key lookup remains recorded.", + "No global package/service/client change or model/GPU invocation; whole-task provider usage unknown." ], - "path": "evidence/receipts/native-offhost-app-state-20260920.json" + "path": "evidence/receipts/wsl-document-ingestion-20260920.json" }, { - "id": "native-offhost-restic-20260920", + "id": "wsl-memory-maintenance-20260920", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "ai-memory" ], - "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", + "claim": "Official Linux ai-memory2.3.2 passed65 synthetic native checks across exact scope, Unicode/reserved paths, restart, upstream HTTP backup and native restore; four owned processes exited0.", "limitations": [ - "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", - "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", - "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", - "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", - "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", - "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." + "Isolated fresh synthetic store and39 MCP tool calls; not production activation, native-client integration or prior-version migration.", + "Automatic capture, embeddings, generation, watcher and autowire disabled; no OS-confinement claim.", + "Native backup/restore both exit0; complete private logs retained, fixture model calls0 and whole-task provider usage unknown." ], - "path": "evidence/receipts/native-offhost-restic-20260920.json" + "path": "evidence/receipts/wsl-memory-maintenance-20260920.json" }, { - "path": "adoption/paired/receipt.json", - "id": "native-paired-adoption-20260919", - "kind": "native_model_e2e", + "id": "token-practice-confirmation-20260920", + "kind": "historical_inventory", "component_ids": [ - "codex", - "claude-code", - "duckdb", - "dagu", - "lean", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "rtk", + "context-mode", + "headroom", + "jcodemunch-mcp" ], - "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", + "claim": "Dated direct upstream counter outputs, current release metadata, independent artifact rechecks and reconciled recorded monitoring support explicit baseline selection without claiming causal lifetime provider savings.", "limitations": [ - "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", - "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", - "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", - "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", - "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", - "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", - "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", - "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." - ] + "Historical source-host observations only; not live acceptance on the reader's PC.", + "Upstream retained-history estimates, exact artifact counts and provider consumption are different quantities and must not be summed.", + "Artifact and client rechecks inspected existing retained inputs and streams; no new model task or reinstall was performed in this confirmation.", + "Public native fields are allowlisted unchanged from private outputs; host paths, process identifiers and account details are omitted.", + "Latest monitoring queries returned no matching observations in their six-hour window; this does not mean zero usage or newly confirmed savings.", + "Latest-release equality was checked only for the four selected token tools; accepted specialist compatibility pins are separate." + ], + "path": "evidence/receipts/token-practice-confirmation-20260920.json" }, { - "path": "blueprints/us-equities/point-in-time/receipt.json", - "id": "native-point-in-time-contract-20260919", + "id": "native-token-clean-prefix-20260920", "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "headroom", + "jcodemunch-mcp" ], - "claim": "DuckDB 1.5.5 materialized and selected a synthetic temporal snapshot; late revisions, universe state, feed/adjustment scope and pinned snapshot integrity were exercised through native Python SDK/SQL commands.", + "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", "limitations": [ - "Synthetic observations only; no entitled or accepted market dataset, SEC download, vendor API, model or broker call occurred.", - "Availability timestamps and evidence references are declarations, not independently authenticated vendor publication evidence.", - "Local snapshot ingestion time is separate from source publication and original capture time.", - "Scope is realized observations and effective universe state; it does not model every corporate action, event forecast, symbol mapping or delisting history.", - "Hash checks require the caller to retain a trusted manifest digest independently; local file permissions are not immutable storage or off-host recovery." - ] + "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", + "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", + "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", + "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", + "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", + "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", + "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", + "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." + ], + "path": "evidence/receipts/native-token-clean-prefix-20260920.json" }, { - "id": "native-progress-capacity-20260921", + "id": "current-session-observation-20260920", "kind": "native_cli_e2e", "component_ids": [ + "agentsview", + "ai-memory", + "alertmanager", + "ccusage", + "claude-hud", + "context-mode", + "grafana", + "headroom", + "jcodemunch-mcp", "loki", - "dagu" + "mcporter", + "ntfy", + "opentelemetry-collector-contrib", + "otel-tui", + "prometheus", + "rtk", + "serena", + "socraticode" ], - "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", + "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", "limitations": [ - "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", - "No client restart, service restart or physical reboot was performed or verified.", - "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", - "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", - "No live provider inference, account change, new dependency or upstream version change for this repair." + "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", + "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", + "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", + "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", + "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", + "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", + "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", + "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." ], - "path": "observability/grand-dashboard/capacity-recovery-20260921.json" + "path": "evidence/receipts/current-session-observation-20260920.json" }, { - "id": "native-quality-defaults-20260920", + "id": "foundation-native-20260920", "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "qmd", + "qdrant", + "vllm", + "socraticode", + "serena", + "context-mode", + "jcodemunch-mcp", + "rtk", + "headroom", + "repomix", + "toon", "codex", - "claude-code" + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "omniroute" ], - "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", + "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", "limitations": [ - "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", - "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", - "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", - "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", - "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." + "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", + "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", + "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", + "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", + "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", + "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", + "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", + "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", + "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." ], - "path": "evidence/receipts/native-quality-defaults-20260920.json" + "path": "evidence/receipts/foundation-native-20260920.json" }, { - "id": "native-rag", - "path": "evidence/receipts/native-rag.json", - "kind": "native_model_e2e", + "id": "codex-session-environment-20260920", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "socraticode", - "qdrant", - "vllm", - "huggingface-hub-native" + "context-mode", + "jcodemunch-mcp", + "serena", + "ai-memory", + "socraticode" ], - "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", + "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", "limitations": [ - "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", - "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." - ] - }, - { - "id": "native-research-efficiency-20260920", - "kind": "native_model_e2e", - "component_ids": [ - "codex", - "claude-code", - "qmd" - ], - "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", - "limitations": [ - "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", - "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", - "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", - "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", - "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", - "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", - "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", - "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", - "Local supervision does not prove provider-side cancellation; no run timed out.", - "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." - ], - "path": "blueprints/us-equities/research-efficiency/native-receipt.json" - }, - { - "id": "native-research-runtime-20260919", - "kind": "native_model_e2e", - "component_ids": [ - "claude-code", - "dagu", - "lean", - "duckdb", - "opentelemetry-collector-contrib", - "prometheus", - "loki" - ], - "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", - "limitations": [ - "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", - "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", - "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", - "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", - "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", - "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", - "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", - "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." + "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", + "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", + "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", + "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", + "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", + "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", + "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." ], - "path": "blueprints/us-equities/research-runtime/receipt.json" + "path": "evidence/receipts/codex-session-environment-20260920.json" }, { - "id": "native-returned-results-20260921", + "id": "codex-desktop-live-20260920", "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "rtk", "context-mode", - "qmd", + "jcodemunch-mcp", "serena", "ai-memory", "socraticode", - "qdrant", - "agentsview", - "grafana", - "loki", - "prometheus", - "dagu", - "ntfy", - "omniroute", - "agent-browser", - "promptfoo", + "rtk", "headroom", - "jcodemunch-mcp" + "qmd", + "loki", + "prometheus" ], - "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", + "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", "limitations": [ - "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", - "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", - "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", - "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", - "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", - "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", - "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", - "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", - "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." + "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", + "Tools without native savings ledgers remain unavailable, not zero.", + "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", + "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", + "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", + "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", + "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", + "No fresh Prometheus turn sample in the selected window; no three-way observation join." ], - "path": "evidence/receipts/native-returned-results-20260921.json" + "path": "evidence/receipts/codex-desktop-live-20260920.json" }, { - "id": "native-runtime-role-resolution-20260930", - "kind": "native_model_e2e", + "id": "native-session-defaults-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "omniroute", - "claude-code" + "codex", + "claude-code", + "ai-memory", + "context-mode", + "rtk", + "qmd" ], - "claim": "One host installed separately versioned OpenHands CLI1.16.0/SDK1.50.1 and DeepAgents0.7.21 candidates through native supported interfaces. CLI108 and final SDK184 unchanged upstream tests passed; DeepAgents361 passed with1 expected failure in its separate upstream-lock environment. Actual OmniRoute Sol-Max requests passed one OpenHands native LLM exact-output round-trip and bounded DeepAgents selected-skill/single-specialist research, saved-context repair and fresh-process SQLite continuation. All results are scoped, not a universal framework winner or global default promotion.", + "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", "limitations": [ - "CLI SDK1.21 Jinja cache hard-codes real user home; strict cache isolation remains held.", - "Final SDK native configuration/tests exercise skills/plugins/MCP/condenser interfaces; production MCP, full Conversation/condenser/provider execution and optional extensions are not qualified by them.", - "Original DeepAgents24-step attempt failed; one changed32-step saved-context repair passed. No arbitrary interrupted-tool replay, OS confinement or comparative winner is qualified.", - "Complete provider billing/backend identity and whole-task token savings remain unknown; cached/reasoning counters are subsets.", - "Native Claude Opus/Max peer timed out180s exit124 without a verdict; later peer turns reached account usage limits. Completed earlier reviews are preserved; no new acknowledgement/approval is claimed.", - "Original full output stays private with exact hashes; public excerpts replace private paths and omit raw conversations, marker values, credentials and flow identifiers.", - "Exact executed sources are archived. Initial whitespace/comment cleanup had identical ASTs; the current worker subsequently adopts native secret-aware serialization after CodeQL, verified by native fixture and fresh saved-state checks. No new provider run is claimed." + "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", + "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", + "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", + "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", + "Claude startup events join four starts to four completions but do not identify individual configured commands.", + "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", + "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." ], - "path": "evidence/receipts/native-runtime-role-resolution-20260930.json" + "path": "evidence/receipts/native-session-defaults-20260920.json" }, { - "id": "native-sandbox-network-20260920", - "path": "evidence/receipts/native-sandbox-network-20260920.json", + "id": "native-token-ci-local-20260920", "kind": "native_cli_e2e", "component_ids": [ - "sandbox-runtime" + "rtk", + "qmd", + "repomix", + "toon" ], - "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", + "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", "limitations": [ - "HTTP proxy path tested on this Linux/WSL host", - "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", - "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", - "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." - ] + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" + ], + "path": "evidence/receipts/native-token-ci-local-20260920.json" }, { - "id": "native-sdk-acceptance-20261002", + "id": "native-token-ci-github-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code" + "rtk", + "qmd", + "repomix", + "toon" ], - "claim": "Actual Claude SDK task failed its independent oracle despite successful protocol completion; a separate informed Codex SDK repair passed all four unchanged cases. Unchanged Claude and OpenHands default source suites passed within recorded skip, warning and environment limits.", + "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", "limitations": [ - "Two different model tasks and source-test suites have different evidence scopes; this is not a model-quality or token-efficiency comparison, global SOTA winner claim or full foundation closure.", - "Claude original useful-task acceptance remains FAILED. Codex passes only the four-case informed repair; its requested model/effort are bound, but resolved model/provider identity and billing cost were not returned.", - "Coordinator observed invocation, native exits and process samples. Independent reviewers checked retained source/artifact/outcome bindings without rerunning; hash equality alone is not execution provenance.", - "Public attachments are declared projections, exact resulting candidates and selected native output. Complete permitted streams remain private; raw conversations, auth/session metadata and personal paths are not published.", - "Claude default source suite has six skips, with five collection identities inferred from source/dependencies. OpenHands retains seven optional ToolShield skips, 12 xfails, 83 warnings, default stress/ACP-live exclusions and a preserved failed environment attempt; exact fetched model-map bytes were not retained.", - "OpenHands is supplemental source-test evidence, not a new adopted stack component. Its FACTS provider task remains unrun in this lane; Codex default source-suite execution remains with its separate owner.", - "Researcher/reviewer roles, resume/recovery, selected MCP, generation permission-negative tests, complete target lifecycle and target token routing remain open. Exact before/after process-name samples do not prove complete descendant cleanup.", - "Historical Claude task binding is CLI2.1.287. Current release2.1.288 reconciliation remains with the configuration owner and cannot retroactively change these captures." + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" ], - "path": "evidence/receipts/native-sdk-acceptance-20261002.json" + "path": "evidence/receipts/native-token-ci-github-20260920.json" }, { - "id": "native-sdk-role-mcp-followup-20261002", + "id": "native-tavily-cli-20260920", "kind": "native_cli_e2e", "component_ids": [ + "tavily-cli", + "codex", "claude-code" ], - "claim": "Retained Claude SDK evidence supports minimal inline MCP callback/terminal assertions with synthetic controls and one native deny-rule pair with a disarmed-rule control; the reviewer case completed without a discriminating control, and the researcher case is controlled for missing findings only. Prior researcher failures remain FAIL and complete role qualification remains incomplete.", + "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", "limitations": [ - "Retained independent case ACCEPT verdicts are observations, not qualified role acceptance. Reviewer negative grading has no discriminating control; the original researcher FAIL controls missing findings only, not wrong facts/citations or attribution.", - "Synthetic MCP0/1/1 controls discriminate callback presence and terminal success only. The separate native armed0/disarmed1 pair supports one actual deny-rule observation; definition visibility unknown, no can_use_tool callback configured.", - "Earlier query timestamps unknown; deny-pair UTC intervals captured. Counters retain separate scopes; interrupted whole-query usage/cost unknown. No billed-cost or efficiency claim.", - "Selected QMD/Serena, recovery, containment, complete lifecycle and whole-host qualification remain open; process samples are bounded and staging is not managed-upgrade acceptance.", - "Sanitized projections only; private original hashes, failed cases and corrections retained. The projection step ran no new provider/test/control execution and made no shared edits; registration in manifests/evidence.json is separate from that step." + "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", + "Claude global skill listing is not a Claude model-turn execution of every skill.", + "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", + "Search/Extract results do not independently establish their source claims or a complete research deliverable.", + "No native lifetime or exact provider-token savings counter is established.", + "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." ], - "path": "evidence/receipts/native-sdk-role-mcp-followup-20261002.json" + "path": "evidence/receipts/native-tavily-cli-20260920.json" }, { - "id": "native-sec-access-resolution-20260919", + "id": "native-nautilus-v2-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "nautilus-trader" ], - "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", + "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", "limitations": [ - "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", - "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", - "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", - "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", - "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", - "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", - "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", - "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." + "Release candidate, not production/live-capital acceptance.", + "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", + "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", + "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", + "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", + "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", + "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." ], - "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" + "path": "evidence/receipts/native-nautilus-v2-20260920.json" }, { - "id": "native-sec-new-host-20260924", - "kind": "native_cli_e2e", + "id": "native-harness-defaults-20260920", + "kind": "artifact_measurement", "component_ids": [ - "edgartools" + "codex", + "claude-code" ], - "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", + "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", "limitations": [ - "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", - "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", - "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", - "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", - "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", - "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", - "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." + "Saved instruction bytes are not proof that every future model decision will follow them.", + "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", + "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." ], - "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", - "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" + "path": "evidence/receipts/native-harness-defaults-20260920.json" }, { - "id": "native-security-identity-20260920", - "kind": "native_cli_e2e", + "id": "native-worker-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "alpaca-py", - "duckdb" + "claude-code" ], - "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", + "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", "limitations": [ - "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", - "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", - "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", - "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", - "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", - "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", - "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", - "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." + "One synthetic local fixture and one physical WSL host, not arbitrary application state.", + "Actual native child identities and paths remain private; hashes bind retained streams.", + "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", + "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", + "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", + "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", + "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." ], - "path": "blueprints/us-equities/identity-readiness/native-receipt.json" + "path": "evidence/receipts/native-worker-recovery-20260920.json" }, { - "id": "native-service-reboot-20260920", - "kind": "native_cli_e2e", + "id": "foundation-catalog-ui-20260920", + "kind": "artifact_measurement", "component_ids": [ - "dagu", - "systemd" + "agent-browser" ], - "claim": "A signed disposable Ubuntu guest automatically resumed the same native Dagu run after an orderly kernel reboot, preserved its checkpoint and produced one local effect. A dedicated read-only serial observer and independent journal review confirmed completion before postboot SSH; owned cleanup passed.", + "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", "limitations": [ - "One orderly disposable guest reboot with a synthetic workload; not a physical PC, power loss, production disaster recovery, provider recovery or broker acceptance.", - "The unchanged official Dagu retry tests are a selected upstream subset. The project planner, its original 12-test oracle and the guest experiment are local synthetic integration coverage.", - "Source, disk and process continuity cover this owned guest only; no distributed exactly-once or arbitrary external side-effect guarantee.", - "Public text projections replace owned home prefixes and synthetic UUIDs and normalize CRLF. Original artifact/stream hashes and explicit projection rules are retained; projected bytes are not labelled raw-byte-identical.", - "The full auth-free guest archive contains three hidden bookkeeping files omitted by loose-file artifact upload. Independent inspection used the intact archive.", - "Both prior failed attempts remain failures; retrospective successful workload records did not override their missing acceptance evidence.", - "No model was called and no provider or lifetime token-saving measurement was made." + "Source pin/publication URLs pending parent final source commit and regeneration.", + "No provider/broker execution or broad regression rerun performed.", + "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." ], - "path": "evidence/receipts/native-service-reboot-20260920.json" + "path": "evidence/receipts/foundation-catalog-ui-20260920.json" }, { - "id": "native-session-defaults-20260920", + "id": "native-worker-containment-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "ai-memory", - "context-mode", - "rtk", - "qmd" + "systemd", + "claude-code" ], - "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", + "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", "limitations": [ - "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", - "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", - "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", - "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", - "Claude startup events join four starts to four completions but do not identify individual configured commands.", - "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", - "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." + "Deterministic cgroup proof is not successful native child crash/resume acceptance.", + "Earlier same-child continuation still required explicit direct descendant cleanup.", + "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." ], - "path": "evidence/receipts/native-session-defaults-20260920.json" + "path": "evidence/receipts/native-worker-containment-20260920.json" }, { - "id": "native-simulation-research-dashboard-20260919", + "id": "native-nautilus-ci-20260920", "kind": "native_cli_e2e", "component_ids": [ - "grafana", - "loki" + "nautilus-trader" ], - "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", + "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", "limitations": [ - "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", - "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", - "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", - "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", - "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", - "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", - "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." + "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", + "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", + "Network namespace and available-interface observations are not measured counts of attempted external transports." ], - "path": "blueprints/us-equities/simulation-research/receipt.json" + "path": "evidence/receipts/native-nautilus-ci-20260920.json" }, { - "id": "native-tavily-cli-20260920", + "id": "native-catalog-retrieval-20260920", "kind": "native_cli_e2e", "component_ids": [ - "tavily-cli", - "codex", - "claude-code" + "qmd" ], - "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", + "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", "limitations": [ - "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", - "Claude global skill listing is not a Claude model-turn execution of every skill.", - "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", - "Search/Extract results do not independently establish their source claims or a complete research deliverable.", - "No native lifetime or exact provider-token savings counter is established.", - "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." + "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", + "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", + "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", + "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." ], - "path": "evidence/receipts/native-tavily-cli-20260920.json" + "path": "evidence/receipts/native-catalog-retrieval-20260920.json" }, { "id": "native-tavily-session-20260920", @@ -2815,127 +2357,60 @@ "path": "evidence/receipts/native-tavily-session-20260920.json" }, { - "id": "native-terminal-profiles-20260920", - "kind": "native_cli_e2e", + "id": "native-worker-cgroup-20260920", + "kind": "native_model_e2e", "component_ids": [ - "codex", "claude-code", - "qdrant", - "vllm" - ], - "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", - "limitations": [ - "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", - "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", - "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", - "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", - "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." - ], - "path": "evidence/receipts/native-terminal-profiles-20260920.json" - }, - { - "id": "native-token-ci-github-20260920", - "kind": "native_cli_e2e", - "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "systemd" ], - "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", + "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", + "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", + "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", + "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", + "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." ], - "path": "evidence/receipts/native-token-ci-github-20260920.json" + "path": "evidence/receipts/native-worker-cgroup-20260920.json" }, { - "id": "native-token-ci-local-20260920", + "id": "native-service-reboot-20260920", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "dagu", + "systemd" ], - "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", + "claim": "A signed disposable Ubuntu guest automatically resumed the same native Dagu run after an orderly kernel reboot, preserved its checkpoint and produced one local effect. A dedicated read-only serial observer and independent journal review confirmed completion before postboot SSH; owned cleanup passed.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "One orderly disposable guest reboot with a synthetic workload; not a physical PC, power loss, production disaster recovery, provider recovery or broker acceptance.", + "The unchanged official Dagu retry tests are a selected upstream subset. The project planner, its original 12-test oracle and the guest experiment are local synthetic integration coverage.", + "Source, disk and process continuity cover this owned guest only; no distributed exactly-once or arbitrary external side-effect guarantee.", + "Public text projections replace owned home prefixes and synthetic UUIDs and normalize CRLF. Original artifact/stream hashes and explicit projection rules are retained; projected bytes are not labelled raw-byte-identical.", + "The full auth-free guest archive contains three hidden bookkeeping files omitted by loose-file artifact upload. Independent inspection used the intact archive.", + "Both prior failed attempts remain failures; retrospective successful workload records did not override their missing acceptance evidence.", + "No model was called and no provider or lifetime token-saving measurement was made." ], - "path": "evidence/receipts/native-token-ci-local-20260920.json" + "path": "evidence/receipts/native-service-reboot-20260920.json" }, { - "id": "native-token-clean-prefix-20260920", + "id": "native-offhost-app-state-20260920", "kind": "native_cli_e2e", "component_ids": [ - "headroom", - "jcodemunch-mcp" - ], - "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", - "limitations": [ - "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", - "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", - "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", - "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", - "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", - "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", - "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", - "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." - ], - "path": "evidence/receipts/native-token-clean-prefix-20260920.json" - }, - { - "id": "native-token-focus-clients-20260920", - "path": "evidence/receipts/native-token-focus-clients-20260920.json", - "kind": "native_model_e2e", - "component_ids": [ - "codex", - "claude-code", - "context-mode", - "jcodemunch-mcp" - ], - "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", - "limitations": [ - "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", - "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", - "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", - "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", - "Raw private prompts, client streams, account identifiers and host paths are not published." - ] - }, - { - "id": "native-token-stack-final-20260920", - "kind": "native_model_e2e", - "component_ids": [ - "claude-code", - "codex", - "context-mode", - "jcodemunch-mcp", - "headroom", - "rtk", - "opentelemetry-collector-contrib", - "loki", - "prometheus" + "ai-memory", + "qdrant", + "restic" ], - "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", + "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", "limitations": [ - "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", - "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", - "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", - "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", - "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", - "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", - "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", - "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." + "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", + "Sequential native application snapshots do not establish an atomic cross-application transaction.", + "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", + "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", + "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", + "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", + "No model/provider/broker calls or causal token/cost savings measurement." ], - "path": "evidence/receipts/native-token-stack-final-20260920.json" + "path": "evidence/receipts/native-offhost-app-state-20260920.json" }, { "id": "native-ultracode-20260921", @@ -2957,480 +2432,849 @@ "path": "evidence/receipts/native-ultracode-20260921.json" }, { - "id": "native-worker-cgroup-20260920", - "kind": "native_model_e2e", + "id": "native-dashboard-access-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "systemd" + "dagu", + "qdrant", + "agentsview", + "grafana", + "prometheus", + "ntfy", + "agent-browser", + "omniroute" ], - "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", + "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", "limitations": [ - "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", - "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", - "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", - "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", - "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." + "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", + "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", + "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", + "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", + "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", + "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", + "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." ], - "path": "evidence/receipts/native-worker-cgroup-20260920.json" + "path": "evidence/receipts/native-dashboard-access-20260921.json" }, { - "id": "native-worker-containment-20260920", + "id": "full-stack-convergence-20260921", "kind": "native_cli_e2e", "component_ids": [ - "systemd", - "claude-code" + "agent-browser", + "agentsview", + "ai-memory", + "ccusage", + "claude-code", + "codex", + "context-mode", + "dagu", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "loki", + "omniroute", + "openresearch", + "prometheus", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "toon", + "vllm", + "worktrunk" ], - "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", + "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", "limitations": [ - "Deterministic cgroup proof is not successful native child crash/resume acceptance.", - "Earlier same-child continuation still required explicit direct descendant cleanup.", - "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." + "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", + "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", + "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", + "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", + "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", + "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", + "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", + "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." ], - "path": "evidence/receipts/native-worker-containment-20260920.json" + "path": "evidence/receipts/full-stack-convergence-20260921.json" }, { - "id": "native-worker-recovery-20260920", - "kind": "native_model_e2e", + "id": "memory-landscape-20260921", + "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "codex", "claude-code" ], - "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", + "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", "limitations": [ - "One synthetic local fixture and one physical WSL host, not arbitrary application state.", - "Actual native child identities and paths remain private; hashes bind retained streams.", - "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", - "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", - "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", - "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", - "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." + "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", + "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", + "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", + "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", + "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", + "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", + "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", + "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", + "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." ], - "path": "evidence/receipts/native-worker-recovery-20260920.json" + "path": "evidence/receipts/memory-landscape-20260921.json" }, { - "id": "native-worker-supervision-20260919", - "path": "blueprints/us-equities/worker-supervision/receipt.json", + "id": "memory-landscape-lifecycle-20260921", "kind": "native_cli_e2e", "component_ids": [ - "systemd" + "ai-memory", + "socraticode", + "qdrant", + "vllm", + "serena", + "qmd", + "codex", + "claude-code" ], - "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", + "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", "limitations": [ - "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", - "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", - "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", - "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", - "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", - "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", - "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", - "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", - "Hashes bind retained evidence bytes; they do not independently attest the execution.", - "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", - "Configured resource limits were inspected, not saturation-tested." - ] + "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", + "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", + "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", + "Exact memory session/lifetime savings are not returned and remain null.", + "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." + ], + "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" }, { - "id": "native-workflow-graceful-recovery-20260921", + "id": "alpaca-paper-e2e-20260921", "kind": "native_cli_e2e", "component_ids": [ + "alpaca-py", "claude-code" ], - "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", + "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", "limitations": [ - "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", - "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", - "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", - "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." + "One operational smoke trial, not profitable strategy or continuous trading acceptance.", + "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", + "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." ], - "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" + "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" }, { - "id": "native-workflow-writing-comparison-20260921", + "id": "nautilus-equity-replay-20260921", "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "nautilus-trader" ], - "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", + "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", "limitations": [ - "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", - "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", - "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." + "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", + "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", + "SPY/LEAN corporate-action parity and historical universe availability remain separate." ], - "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" + "path": "evidence/receipts/nautilus-equity-replay-20260921.json" }, { - "id": "native-wsl-restic-synthetic-20260920", + "id": "foundation-convergence-20260921", + "kind": "native_model_e2e", + "component_ids": [ + "codex", + "claude-code", + "context-mode", + "rtk", + "headroom", + "toon" + ], + "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", + "limitations": [ + "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", + "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", + "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", + "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", + "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." + ], + "path": "evidence/receipts/foundation-convergence-20260921.json" + }, + { + "id": "native-progress-capacity-20260921", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "loki", + "dagu" ], - "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", + "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", "limitations": [ - "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", - "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", - "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", - "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", - "No token, storage-efficiency or backup performance claim.", - "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", - "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", - "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", - "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", - "Ten offline oracle/guard tests are distinct from the actual native restic commands." + "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", + "No client restart, service restart or physical reboot was performed or verified.", + "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", + "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", + "No live provider inference, account change, new dependency or upstream version change for this repair." ], - "path": "blueprints/convergence-practice/wsl-restore/receipt.json" + "path": "observability/grand-dashboard/capacity-recovery-20260921.json" }, { - "id": "nautilus-equity-replay-20260921", + "id": "claude-upstream-checks-20260921", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "codex", + "codex-for-claude", + "context-mode", + "dagu", + "difftastic", + "gitleaks", + "grafana", + "headroom", + "jcodemunch-mcp", + "lean", + "loki", + "markitdown", + "mcporter", + "nautilus-trader", + "openresearch", + "opentelemetry-collector-contrib", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", + "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", "limitations": [ - "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", - "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", - "SPY/LEAN corporate-action parity and historical universe availability remain separate." + "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", + "Complete originals remain private; public excerpts are bounded and sanitized.", + "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." ], - "path": "evidence/receipts/nautilus-equity-replay-20260921.json" + "path": "evidence/receipts/claude-upstream-checks-20260921.json" }, { - "id": "new-wsl-embedding-model-20261002", + "id": "foundation-rd-20260921", "kind": "native_model_e2e", "component_ids": [ - "huggingface-hub-native" + "claude-code", + "codex", + "codex-for-claude", + "qmd" ], - "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02 and 2026-10-03, with the generation model swift-iq3s-s2o-64k resident, the preregistered comparison for the new WSL's embedding model gave the slot to E1: qwen3-embedding:0.6b (Q8_0, Ollama library manifest ac6da0dfba84a81fdbfbaf330198c33cd77c4cdfc53e8bc50eb581914a15621d) on Ollama 0.35.0 as qwen3-embedding-8k (num_ctx 8192). On MTEB 2.22.1's CQADupstackUnixRetrieval (test split: 47,382 documents, 1,072 queries) its nDCG@10 was 0.49827 against 0.41394 for EmbeddingGemma on the same server: E1 minus E2 0.084331, 95% paired bootstrap interval over queries 0.067738 to 0.100656 (10,000 resamples, seed 20260927). Nemotron-3-Embed-1B, which needs a second model server, scored 0.5014; E3 minus E1 was 0.003124 with an interval of -0.012194 to 0.018141 that includes zero, so by the second-server rule it does not take the slot. WeMM-Embedding-2B passed the fit gate but ran out of GPU memory in its full run and is out. The reranking condition was not run.", + "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", "limitations": [ - "One public retrieval task (CQADupstack Unix: English technical questions from a StackExchange forum), one workstation, one throwaway distribution, one run per arm: a local integration check, not an acceptance on the destination distribution.", - "Nemotron's tie holds for this task only; multilingual retrieval, longer documents and other domains were not measured.", - "The two Ollama arms are GGUF conversions served by the one model server; a difference from the reference weights is a difference of the systems, not of the models alone.", - "E1's and E2's prompts are MTEB's reference prompts as observed with a stub before the runs (amendment 4a): E1 sends the Qwen3 instruction before queries and nothing before documents; E2 sends EmbeddingGemma's query and document prompts.", - "Gate F reads the model server's listing: in window pb2 the card's memory in use fell between steps while the server kept listing the generation model entirely on the GPU, consistent with the Windows driver moving part of it off the card, so E3 passing gate F does not show co-residency. In window pb1 the readings matched the resident models, so E1's co-residency with the generation model is supported by both readings.", - "E4's first error text was lost: after its evaluation failed out of memory, the script's memory query raised the same sticky CUDA error and the outer handler replaced the text; the outcome is not in doubt, because only the evaluation's handler sets out_of_memory.", - "The reranking condition was not run: no installed retrieval owner can call an external reranker (QMD reranks in-process with its bundled model), and zerank-2 (7.49 GiB of weights) cannot be resident beside the generation model on this card.", - "Recorded, not deciding: evaluation time E1 1,166 s, E2 771 s, E3 460 s (E3 in-process, not comparable with the Ollama arms); resident sizes E1 2,857,191,341 bytes and E2 681,417,113 bytes.", - "manifests/stack.json has no Ollama or MTEB component; component_ids name huggingface-hub-native, the native route for the revision-pinned snapshots of E3 and E4, which the measurement downloaded through the huggingface_hub library at MTEB's registered revisions (its version is in the throwaway's freeze list, which was not retained).", - "The 31 MB prediction files and the run records stay private and are listed by sha256 in files.json; the published per-query nDCG@10 files reproduce the decision statistic.", - "With a server-wide context of 64,000 the embedder loaded at its full context and took 5.78 GB (Part A, A1b); the measured system sets the context per model (qwen3-embedding-8k, 8,192 tokens), never server-wide." + "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", + "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", + "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", + "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", + "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." ], - "path": "evidence/artifacts/new-wsl-local-models-20261002/part-b-receipt.json" + "path": "evidence/receipts/foundation-rd-20260921.json" }, { - "id": "new-wsl-local-generation-model-20261002", + "id": "claude-foundation-finalization-20260921", "kind": "native_model_e2e", "component_ids": [ + "claude-code", "codex", - "claude-code" + "agent-browser", + "repomix" ], - "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02, the preregistered comparison for the new WSL's local generation model gave the slot to S2o: Swift-1.5-Qwen3.8-27B IQ3_S (ukisai/Swift-1.5-Qwen3.8-27B-GSQ-RCO-GGUF at revision d74895bbe5db4bec1e0024e7cc87d59c02d7631a, file sha256 1333c6ea70ef348d4ac6d62732772e8ad6571ac5b3754c14ed54f1a0d904a786, 11,771,546,912 bytes) on Ollama 0.35.0 as swift-iq3s-s2o-64k (context 64,000). On the same 100 BFCL simple_python cases (inspect-evals 0.23.0 on Inspect AI 0.3.273) through the server's chat and responses surfaces, its first-pass valid tool calls were 200 of 200 against 175 of 200 for the control gpt-oss:20b: difference 0.125, 95% paired bootstrap interval over cases 0.065 to 0.19 (10,000 resamples, seed 20260927), not a tie. Both arms were entirely on the GPU with the embedder resident in the order of use, and both passed 10 of 10 client tasks (Codex 0.160.0 and Claude Code 2.1.287). Bonsai PTQ1_0, Bonsai PQ2_0 and Swift on PrismML's llama.cpp server failed the function gate (0 of 3 runs each: the server skips the Codex client's namespace tool type), and qwen3.8:27b was not entirely on the GPU at 64,000 tokens.", + "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", "limitations": [ - "One workstation, one throwaway distribution, one run per case and arm: a local integration check of the systems named, not an acceptance on the destination distribution.", - "First-pass tool-call validity on 100 simple public cases (BFCL simple_python) through two interfaces; nothing about coding quality, long tasks, throughput under concurrent requests or behaviour above 64,000 tokens.", - "The Anthropic-style messages surface was not evaluated through the package (Inspect AI 0.3.273 cannot read this thinking model's answer); it was exercised only by Claude Code in the client tasks, which both arms passed.", - "S2o was slower in these runs: 292 and 303 seconds for 100 cases on chat and responses against 100 and 139 for the control, and 43.1 against 108.9 output tokens per second on single long prompts that were not run as a speed comparison.", - "S2o leaves less GPU memory free: 21,579 of 24,564 MiB in use with the embedder resident while Windows applications held about 2,600 MiB; earlier the same day they held up to about 5,900 MiB, at which the same load would leave under one GB. Co-residency on a busier desktop and on the destination distribution is not measured.", - "The Ollama import is this measurement's system, not a route the publisher documents: the library qwen3.8:27b model's renderer, parser, parameters, template and licence lines with the Swift file as FROM. The publisher's own route (llama.cpp's server, here PrismML's fork) failed the function gate for a reason that lies in that server. The quantization's card says its quality tests used a 512-token context.", - "The arm that took the slot was added by the preregistration's extension (amendment 3) after the owner asked for the newest releases; the deciding measurement as the critic named it had two arms (qwen3.8:27b and gpt-oss:20b), the earlier result for gpt-oss:20b is kept as a historical result, and gpt-oss:20b ran A2 as the control under the same rules.", - "Three deviations are recorded (a void first window, the Codex client's model name with its tag, a reused label); none changed a case, a limit, the metric or the rule, and none was decided on an outcome.", - "Recorded, not deciding: the package's own score (S2o 97 and 95 of 100, the control 83 and 83) and the client tasks (10 of 10 for each arm).", - "manifests/stack.json has no Ollama, Inspect AI or PrismML llama.cpp component, so component_ids name the two clients that ran the client tasks (Codex also ran the function gate); they ran at Codex 0.160.0 and Claude Code 2.1.287, not at the stack's recorded 0.159.3 and 2.1.284.", - "Raw model outputs (the Inspect logs, the client run records, the server logs) stay private and are listed by sha256 in files.json; the published per-case validity files carry case ids, verdicts, reasons and timings, and the decision statistic reproduces from them.", - "The Swift file's licence is the publisher's own (Swift Open License v1.0, with the original Qwen parts under Apache-2.0); the Modelfile's LICENSE block is the library model's Apache-2.0 text. Recorded, not judged." + "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", + "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", + "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", + "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." ], - "path": "evidence/artifacts/new-wsl-local-models-20261002/part-a-receipt.json" + "path": "evidence/receipts/claude-foundation-finalization-20260921.json" }, { - "id": "nextjs-1638-qualification-20261001", + "id": "adaptive-paper-practice-20260921", "kind": "native_cli_e2e", "component_ids": [ - "nextjs" + "nautilus-trader", + "alpaca-py", + "claude-code", + "codex" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-10-01, the application-delivery recipe was qualified at Next.js 16.3.8 (tag v16.3.8, commit b0fad0d45eb4c4430fda5eeeb442e8a5af08a5f6, released 2026-09-30T16:13:46Z), whose release notes list seven security advisories, the most severe GHSA-cjq9-62q9-8jv4 (high: server-side request forgery in Image Optimization). The two-file patch (package.json and pnpm-lock.yaml, sha256 570ac44d237b6641a5087fe57b079aaf61dcb781b6496a721b0224dd17ea60d0) changes next, @next/env and the eight @next/swc-* lock entries, every other lock entry byte-identical. With Node v24.21.0 and pnpm 12.4.2 the frozen install, the peer check, the typecheck and the production build each exited 0 (recorded at 16:07:49Z), after a first frozen install at 12:13Z exited 1 with ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION for the ten packages published on 2026-09-30; no exclusion or policy change was made.", + "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", "limitations": [ - "Bounded recipe checks only: make verify with its PostgreSQL, API and browser stages was not run, so the 2026-09-20 receipts still qualify 16.3.5, not 16.3.6 or 16.3.8.", - "The pnpm store, node_modules and build cache were warm from the earlier attempt; no cold-store install is claimed.", - "This recipe's exposure to the seven advisories was not established; the move removes the vulnerable versions from its lock.", - "Labels 15 to 17 are the version prints of Node and pnpm and a git diff check; they are metadata, not acceptance.", - "No new-host install ran: that is unit U10 on the new distribution. Provider usage of the builder is unknown." + "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", + "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", + "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", + "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." ], - "path": "evidence/receipts/nextjs-1638-qualification-20261001.json" + "path": "evidence/receipts/adaptive-paper-practice-20260921.json" }, { - "id": "notification-types-20260929", + "id": "broad-universe-research-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "alpaca-py", + "duckdb", + "claude-code", + "codex" + ], + "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", + "limitations": [ + "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", + "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", + "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", + "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", + "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." + ], + "path": "evidence/receipts/broad-universe-research-20260921.json" + }, + { + "id": "ultracode-token-routing-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code", + "codex" + ], + "claim": "Claude Code 2.1.278 native Workflow stages re-routed to lean project agents cut the provider-returned first-request prompt from 42,396 tokens (default child) to 12,164 (named MCP grants behind ToolSearch) and 8,048 (source-scout) on one identical task; eight native review runs, two readiness audits, a builder run and probes plus one Codex cross-family review are retained as sanitized usage receipts; Haiku was not routed after an Opus-verified 9/14 versus 14/14 extraction trial; workflowSizeGuideline moved from small to unrestricted with a task sizing rule.", + "limitations": [ + "First-prompt figures come from one tiny task on one host and model; they bound a fixed spawn cost, not a savings rate.", + "The Haiku judgment rests on one packet and one Opus verifier.", + "The strict accepted envelope status was never returned in the deploying project; the commit gate was fix-and-commit after each review's findings were resolved.", + "Local suites are stubbed or synthetic; provider figures reach the receipts only as sanitized child-usage.mjs output, with raw transcripts outside Git.", + "Codex thread and turn identifiers were redacted from the cross-review record." + ], + "path": "evidence/receipts/ultracode-token-routing-20260921.json" + }, + { + "id": "portable-claude-native-qualification-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code", + "codex", + "prometheus" + ], + "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", + "limitations": [ + "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", + "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", + "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", + "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", + "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." + ], + "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" + }, + { + "id": "sota-convergence-20260922", + "kind": "historical_inventory", + "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "apple-container", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codebase-memory-mcp", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "fastapi", + "gitleaks", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "llama-cpp", + "loki", + "markitdown", + "mcp-inspector", + "mcporter", + "nextjs", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "playwright-cli", + "playwright-test", + "poppler", + "postgresql", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "react", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shanraisshan/claude-code-best-practice", + "shellcheck", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" + ], + "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", + "limitations": [ + "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", + "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", + "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", + "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." + ], + "path": "evidence/receipts/sota-convergence-20260922.json" + }, + { + "id": "claude-repository-evidence-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "alpaca-py", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "duckdb", + "edgartools", + "gitleaks", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "lean", + "loki", + "markitdown", + "mcp-inspector", + "mcporter", + "nautilus-trader", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "pandas", + "playwright-cli", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shellcheck", + "skfolio", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" + ], + "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", + "limitations": [ + "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", + "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", + "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", + "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", + "Superseded observations, including the author's own probe and invocation errors, remain recorded." + ], + "path": "evidence/receipts/claude-repository-evidence-20260921.json" + }, + { + "id": "github-automation-newpc-20260922", "kind": "native_cli_e2e", "component_ids": [ + "codex", "claude-code" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", + "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", "limitations": [ - "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", - "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", - "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", - "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", - "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", - "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", - "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", - "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", - "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", + "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", + "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", + "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", + "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", + "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." + ], + "path": "evidence/receipts/github-automation-newpc-20260922.json" + }, + { + "id": "exchange-calendars-native-check-20260922", + "kind": "native_cli_e2e", + "component_ids": [ + "exchange-calendars" + ], + "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", + "limitations": [ + "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", + "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", + "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", + "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", + "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." + ], + "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" + }, + { + "id": "adoption-macos-hosted-smoke-20260922", + "kind": "native_cli_e2e", + "component_ids": [ + "codex", + "claude-code", + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" + ], + "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", + "limitations": [ + "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", + "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", + "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", + "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", + "socraticode is the profile's documented unpinned skip and was not installed." + ], + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" + }, + { + "id": "catalog-freshness-20260923", + "kind": "upstream_provenance", + "component_ids": [ + "claude-code", + "codex", + "llama-cpp", + "mcp-inspector", + "openresearch", + "skfolio" + ], + "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", + "limitations": [ + "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", + "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", + "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", + "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." + ], + "path": "evidence/receipts/catalog-freshness-20260923.json" + }, + { + "id": "adoption-macos-hosted-smoke-20260923", + "kind": "native_cli_e2e", + "component_ids": [ + "codex", + "claude-code", + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" ], - "path": "evidence/receipts/notification-types-20260929.json" + "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", + "limitations": [ + "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", + "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", + "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", + "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." + ], + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" }, { - "id": "ns2604-e2e-20261004", - "kind": "native_model_e2e", + "id": "wsl-retrieval-20260920", + "kind": "historical_inventory", "component_ids": [ - "claude-code", - "codex", - "omniroute" + "ast-grep", + "qmd" ], - "claim": "The historical 2026-10-04 foundation E2E covered 15 units and 80 slots through native executor observations, independent model review and 22 adjudications. Final labels are READY 18, PARTIAL 31, FAIL 2, BY_DESIGN 12 and INTERIM 17, with zero unjudged slots. Readiness is (18 + 12) / 80 = 37.5%, rounded half up to 38%; all 22 executor/reviewer disagreements were adjudicated, with 14 keeping the reviewer's status and 8 taking the executor's. This publication independently checks and sanitizes the retained status chains; it does not repeat host or provider execution. The adjudication prompt as run, claude-opus-5-5 at max effort with evidence-reviewer run records and timestamps, and the separate 33-slot fix list are retained.", + "claim": "Incomplete historical WSL fixture reference: selected receipts report 22 source checks/six commands and 70 QMD lexical checks/17 commands. Offline byte and result consistency can be checked, but missing command argv/cwd, unrecovered raw logs and unsupported historical QMD installation prevent native E2E or adoption acceptance.", "limitations": [ - "Host state is as of 2026-10-04 19:10\u201320:10Z only; later adjudication and source merge timestamp 2026-10-04T20:26:16Z do not extend that observation window. Publication and repair perform artifact inspection and structural checks in the owned sandbox; they do not repeat native host probes.", - "Fixes are pending. The 33 PARTIAL/FAIL slots after adjudication are not accepted as ready: 25 repository-plan and 8 host fixes (evidence/artifacts/ns2604-e2e-20261004/fixes.json). Four INTERIM token slots (context-supply, command-output, output-compression, code-index) are held for PR #684, which has not merged. The two open token slots have separate fixes: ccusage (FAIL, plan) and statusline (PARTIAL, host).", - "This is not an upstream benchmark. Native executor observations, independent model judgments and adjudication are separate from upstream tests, structural checks, independent host replication and measured quality or token improvement.", - "The 17 INTERIM slots are held by design. They remain in the denominator and contribute zero to the readiness numerator; the 12 BY_DESIGN slots are intentional dispositions rather than proof that their tools executed.", - "Adjudication: claude-opus-5-5 at effort max (evidence-reviewer), prompt template as run in evidence/artifacts/ns2604-e2e-20261004/adjudication-prompt.md. Run wf_8bf450a9-d1e (17 agents) started 2026-10-04T20:06:45Z and completed 2026-10-04T20:20:30Z; run wf_cdbf70a0-02c (5 agents) started 2026-10-04T20:08:29Z and completed 2026-10-04T20:19:31Z.", - "Historical source command excerpts and raw conversations remain private. Public reasons are bounded to 60 words, fixes preserve the merge's 900-character bound before sanitization, and citations are limited to four per slot. Hashes establish byte identity, not success or adequacy of every native acceptance claim.", - "Reviewer records report the requested gateway model cx/gpt-6.1-sol-max and max effort; no resolved backend model identity is inferred. Independent model review is review of retained evidence, not independent execution on the host.", - "The coordinator registers all eight published files in manifests/evidence.json in the PR's final registry-only commit, and full repository validation passes at that head. Per-file scans and local receipt tests are structural evidence only." + "Historical reference only; not live verification, native E2E acceptance or adoption evidence. No new host/native/client acceptance follows from these artifacts.", + "Historical command facts omit argv and cwd. Exact raw-log locations are unavailable; no invocation was reconstructed or represented as observed.", + "The unchanged historical install receipt records npm --ignore-scripts --omit=optional. Future installation must use the current supported recipe with NODE_LLAMA_CPP_SKIP_DOWNLOAD=true and required dependency scripts enabled.", + "Both executed runner versions and the initial URI-checker failure are retained byte-for-byte. The future runner adds command provenance capture without changing past evidence.", + "Receipt-reported 22/70 checks and 6/17 commands describe selected local/synthetic fixtures. Five failed-attempt commands remain separate; no upstream-suite, semantic RAG, production, client or service acceptance.", + "Source currency remains September 20; offline completion and review do not refresh releases or native execution. Whole-task provider usage is unknown and no savings claim is made." ], - "path": "evidence/receipts/ns2604-e2e-20261004.json" + "path": "evidence/receipts/wsl-retrieval-20260920.json" }, { - "id": "omniroute-3851-npm-qualification-20260930", - "kind": "compatibility_attempt", + "id": "gitleaks-macos-memory-bound-20260924", + "kind": "native_cli_e2e", "component_ids": [ - "omniroute" + "gitleaks" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", + "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", "limitations": [ - "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", - "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", - "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", - "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", - "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", - "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", - "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", - "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", - "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." + "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", + "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", + "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", + "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", + "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", + "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", + "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." ], - "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" + "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" }, { - "id": "omniroute-claude-callsite-20260930", - "kind": "native_model_e2e", + "id": "env-freshness-wsl-ubuntu-main-20260924", + "kind": "artifact_measurement", "component_ids": [ - "claude-code", - "codex", - "omniroute" + "nautilus-trader", + "alpaca-py", + "duckdb", + "pandas", + "edgartools", + "exchange-calendars", + "vllm" ], - "claim": "A native Claude Opus5.5/Max coordinator discovered and read the project dispatcher, invoked the official Sol-Max Codex SDK worker through native Bash, and the retained original shows one unchanged fixture test with exit0.", + "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", "limitations": [ - "One bounded read-only callsite and existing arithmetic oracle; no universal quality or SDK winner claim.", - "Coordinator tool scope was Bash/Read/Skill for this acceptance; other coordinator tools and optional MCP services are not qualified.", - "Native Claude and external Codex SDK usage remain separate scopes; parent list-price cost is not complete provider billing.", - "The separate Claude SDK Devin bridge remains failed/unqualified; this native Claude-account coordinator run does not promote it.", - "Provider backend identity, overall task usage, failed/interrupted calls, remote cancellation and token savings remain unverified." + "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", + "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", + "One host; each PC publishes its own report under the same schema.", + "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." ], - "path": "evidence/receipts/omniroute-claude-callsite-20260930.json" + "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" }, { - "id": "omniroute-runtime-enhancements-20260930", + "id": "vllm-030-switch-20260925", "kind": "native_model_e2e", "component_ids": [ - "codex", - "omniroute", - "context-mode", - "serena", - "dagu" + "vllm", + "socraticode" ], - "claim": "A scoped native Codex SDK Sol-Max worker completed skill use, selected Context Mode/Serena MCP calls, one Astra-Max native judge and an unchanged oracle through OmniRoute in a successful bounded Dagu graph.", + "claim": "vLLM 0.30.0 now serves the production Nemotron-3-Embed-1B-BF16 embeddings on the NativeStack WSL2 RTX 4090 host. Qualified first on an owned instance against production 0.25.0 (identical model files, flags and route), then switched by a systemd drop-in that changes only the binary path; the live service returned identical embeddings and identical top-10 code-index results after the switch.", "limitations": [ - "One unchanged arithmetic fixture and bounded integration; no universal highest-quality model, framework or SDK ranking.", - "169 enabled skills were visible through native discovery. This run read using-superpowers and exercised three selected MCP calls; it does not qualify every installed skill, tool, language server, plugin or hook.", - "Native hook support and live web search are configured, but their execution is unmeasured here. No scheduler, schedule, hook or global account configuration was installed by this kit.", - "Native parent and child cumulative usage are separate scopes. Cached input and reasoning are subsets; observer response counters corroborate the same usage and must not be added. Failed/interrupted and complete provider usage, billing and token savings remain unknown.", - "Each observed completed stream also has an unclassified flow_error record. Native results completed; transport is not described as error-free, and requested model/provider labels are not backend identity attestation.", - "The separate Claude SDK Devin bridge retains its failed/unqualified status. Earlier native Claude-to-SDK acceptance is a historical separate callsite, not a rerun against this source.", - "The follow-up native Claude cooperation session was stopped after no confirmed SendMessage/final packet; no peer approval or new owner-contact count is claimed.", - "The isolated kit is a scoped private worker configuration. Live owners retain shared worker policy, host-wide catalogs/defaults and dashboard checkpoint ownership." + "One host (NativeStack, RTX 4090, WSL2 Windows driver 616.64) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", + "Retrieval equality covers 8 gate texts and 5 live code-index queries (top-10), not an aggregate retrieval-quality benchmark.", + "0.30.0 relies on its pinned-memory fallback for WSL (PR #56908); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", + "The 0.25.0 prefix is kept for rollback; the base unit still names it and only the drop-in points at 0.30.0." ], - "path": "evidence/receipts/omniroute-runtime-enhancements-20260930.json" + "path": "evidence/receipts/vllm-030-switch-20260925.json" }, { - "id": "omniroute-runtime-workers-20260930", - "kind": "native_model_e2e", + "id": "rtk-050-qualification-20260925", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "omniroute" + "rtk" ], - "claim": "The retained official Codex SDK Sol-Max worker passed one upstream coding fixture, native resume and fresh recovery through the selected OmniRoute Responses lane. Interrupted usage and Claude bridge qualification remain unknown/failed.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", "limitations": [ - "One arithmetic fixture and lifecycle acceptance; no universal SDK or model quality ranking.", - "Actual provider trials invoked the SDK from root, rather than through a Claude coordinator. Native project dispatch skill is supplied and structurally checked; its coordinator invocation remains unmeasured.", - "Native Codex SDK remains the incumbent. The separate frozen three-arm SDK gate remains unresolved.", - "Native gateway requested/returned model labels are not backend attestation.", - "All 136 skills are available in the owned project, with two bodies exercised; full role coverage and optional service acceptance remain incomplete.", - "Native Codex repeated in-process fixtures emit stdout/stderr ResourceWarnings; standalone per-invocation child exit is qualified separately.", - "Complete provider usage, spending, remote cancellation and token savings remain unknown.", - "Public record is sanitized selected actual return fields and independent observations; original private returned artifacts remain outside the checkout." + "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", + "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", + "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", + "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", + "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", + "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", + "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." ], - "path": "evidence/receipts/omniroute-runtime-workers-20260930.json" + "path": "evidence/receipts/rtk-050-qualification-20260925.json" }, { - "id": "omniroute-sdk-worker-0160-20261003", - "kind": "native_model_e2e", + "id": "markitdown-018-qualification-20260925", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "omniroute", - "context-mode" + "markitdown" ], - "claim": "The SDK 0.160.0 B3 review candidate addresses all five PR #628 bot findings and passed twelve of twelve twenty-five-test native loopback fixture invocations, 26 local Claude SDK tests, six observer tests and final Ruff checks. Each reported bug has a retained failing-before-repair command and a passing counterpart. B2 metadata preflight and the earlier builder/coordinator live observations remain historical; no B3 live model task ran. Writing dispatch, live keyed-shell/search qualification and backend effort remain unobserved.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", "limitations": [ - "Authored loopback SSE fixtures, local Claude SDK tests and observer tests are integration/synthetic checks, not unchanged upstream suites or provider-model trials.", - "The pre-B2 builder live task returned the correct data while two native shell attempts failed in its enclosing Codex sandbox and a Context Mode call failed with Transport closed. A separate coordinator, outside a nested Codex sandbox, observed read-only shell success at that candidate. The repaired bytes have no new live-model run; error-free MCP transport and writing (workspace-write) dispatch remain unqualified at 0.160.0.", - "Plugin disabling is the selected native feature gate. Tests observe direct app-server PID termination and absence of clone directories; descendant cleanup and global non-loopback egress are not observed.", - "Metadata preflight submits no inference. No skill was installed in the new private home and no --require-skill was used; inherited/project catalog discovery does not qualify every skill or tool.", - "Requested model/Max effort and live catalog entry are observed; gateway-forwarded effort, backend model identity, complete provider usage, cost, remote cancellation and token savings remain unknown.", - "September 30 receipts and original observations remain historical. This refresh does not rerun the historical coding oracle, Claude callsite, Astra judge, Dagu graph or unchanged upstream SDK suite.", - "Exactly pinned private SDK preflight/PID attributes require review on every pin move. Stable Python SDK and experimental, unsupported-for-production app-server are separate support boundaries.", - "Expected ResourceWarning messages and argparse rejection output remain in private fixture logs. Long-lived SDK pools, alternative approval modes, alternate binary, credential-variable path, workspace-write live execution and scheduled Dagu acceptance remain unqualified.", - "Initial Ruff failure exits are retained from native task returns, but exact full output/timing was not saved. Repository validators prove declared consistency, not the truth of provider or historical claims.", - "Earlier checkout and alternate-index validation failures are retained as before-B2 attempts. The coordinator force-added the project skill to the real index; B2 acceptance uses that actual checkout index. Historical source archive acceptance does not replace current checkout acceptance.", - "If the cleanup bound expires during retained startup or close, cleanup_status is unresolved and the CLI exits nonzero. Continued deferred cleanup is observed only while the embedding event loop remains running; no post-bound standalone cleanup or remote termination guarantee is made.", - "B3 repairs have local regression/configuration acceptance only: no live model tasks, keyed gateway shell trial, standalone search endpoint trial or native Claude connect fault injection. The native SDK retains its own shielded cleanup/transport bounds; wrapper grace does not override them." + "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", + "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", + "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", + "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", + "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", + "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", + "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", + "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." ], - "path": "evidence/receipts/omniroute-sdk-worker-0160-20261003.json" + "path": "evidence/receipts/markitdown-018-qualification-20260925.json" }, { - "id": "openresearch-0215-qualification-20261003", + "id": "ai-memory-240-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "openresearch" + "ai-memory" ], - "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", "limitations": [ - "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", - "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", + "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", + "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", + "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", + "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", + "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", + "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." ], - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" }, { - "id": "otelcol-contrib-0162-qualification-20261003", + "id": "mcporter-0141-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "opentelemetry-collector-contrib" + "mcporter" ], - "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", "limitations": [ - "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", - "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", + "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", + "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", + "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", + "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", + "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." ], - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" }, { - "id": "playwright-cli-0122-qualification-20261003", + "id": "ai-memory-241-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "playwright-cli" + "ai-memory" ], - "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", "limitations": [ - "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", - "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", - "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", + "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", + "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", + "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", + "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", + "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", + "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." ], - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" }, { - "id": "portable-claude-native-qualification-20260921", + "id": "headroom-039-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "prometheus" + "headroom" ], - "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, headroom-ai 0.39.0 was qualified against the pinned 0.37.0 and not switched; production stays on 0.37.0. Tag v0.39.0 is 66f426171bab32692cf93d2b656a8e4be9004186 and contains d971f7c3 (#3748; compare behind_by 0). Its manylinux_2_28_x86_64 wheel (14,199,952 bytes, sha256 8c7594012ce0dcd28202af471fb1bd08c6f226c8e10fc6a682b3fb233e809a74) matched PyPI JSON, the PyPI simple API and the GitHub release asset, and was installed with uv into the new prefix tools/headroom-ai-0.39.0; 555 of 555 headroom/ RECORD digests match the verified wheel and `headroom --version` printed 'headroom, version 0.39.0'. The unchanged upstream test file tests/test_transforms/test_content_detector_timestamp_search.py (blob 23b66a27) passed 6 of 6 on 0.39.0 and 4 of 6 on 0.37.0. Through `headroom mcp serve --proxy-url http://127.0.0.1:1` over stdio, 0.39.0 listed headroom_compress, headroom_retrieve and headroom_stats; compressed the 600-line ISO-timestamped fixture A 16820 -> 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", "limitations": [ - "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", - "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", - "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", - "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", - "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." + "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", + "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", + "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", + "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", + "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", + "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", + "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", + "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." ], - "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" + "path": "evidence/receipts/headroom-039-qualification-20260925.json" }, { - "id": "portable-cli-artifacts", - "kind": "native_cli_e2e", + "id": "vllm-030-switch-laptop-20260926", + "kind": "native_model_e2e", "component_ids": [ - "shellcheck", - "difftastic", - "markitdown", - "ast-grep", - "toon", - "repomix" + "vllm", + "socraticode", + "ai-memory" ], - "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", + "claim": "vLLM 0.30.0 was qualified on this laptop (WSL2, RTX 5090 Laptop GPU 24GB) as a drop-in candidate for the production Nemotron-3-Embed-1B-BF16 embedder (vLLM 0.25.0), then switched into production by a systemd --user drop-in that changes only the ExecStart binary path and PATH. Of the six qualification gates: (a) gate-text cosine, (c) batch invariance and (e) ai-memory vector reconstruction passed their pass bars; (b) mini-corpus retrieval and (d) live-code-index retrieval met top-10 SET identity on every query and trial (b: 40/40, d: 20/20 query-trials) but failed their strict top-10 ORDER bar in 3 of 4 trials each; (f) latency is report-only, with no pass bar. A prod-vs-prod control run (candidate never started) shows the same order-swap behavior already exists in production alone: gate b had 6 of 50 mismatched query-trials for the candidate (including an earlier, superseded run) against 10 of 80 for production compared with itself; gate d had 3 of 20 against 4 of 40; production against itself even had a worse single trial (6 of 10 identical) than any candidate trial. Gate (c)'s batch-invariance minimum cosine (0.9999562552851937) was bit-for-bit identical between production alone and the candidate, on the same minimizing text. The production switch itself re-checked only 30 gate texts (cosine 0.9999999999999998 before vs after) and confirmed dependents (ai-memory's vector stream, SocratiCode search); it did not re-run a post-switch top-10 retrieval check.", "limitations": [ - "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", - "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." + "One host (laptop, RTX 5090 Laptop GPU 24GB, WSL2) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", + "Retrieval equality covers 30 gate texts (a), a 50-paragraph mini-corpus over 10 queries (b), and 5 live code-index queries (d), not an aggregate retrieval-quality benchmark. Gates b and d met top-10 content-SET identity on every query and trial (b: 40/40 query-trials across the 4 recorded trials, plus full set overlap on one earlier superseded run; d: 20/20 query-trials) but did not meet strict top-10 ORDER identity on every trial (that earlier superseded run's own order count was 9 of 10). Counting every recorded run: gate b had 6 of 50 candidate query-trials with an order mismatch against 10 of 80 for a prod-vs-prod control (candidate never started, run twice -- an earlier, superseded control and the current one -- both included since only the second run's own prod_score diagnostic sub-field needed a fix, not its order counts); gate d had 3 of 20 against 4 of 40. Production compared with itself had a worse single trial (6 of 10 identical, i.e. 4 mismatched) than any candidate trial (worst: 7 of 10 identical, 3 mismatched), so this order-swap behavior is pre-existing production batching noise, not attributable to the 0.30.0 upgrade. The swap-gap range is 3.5e-05 to 8.2e-04 across all 23 recorded swaps (candidate run and both control runs combined), far smaller than the ~0.02-0.05 gaps between other adjacent ranks in the same rankings.", + "The reference receipt's own qualification-time number for this style of check (mini_corpus_top10_overlap, '10/10 on each of 10 queries') is a content-SET overlap claim, not a strict-order claim; it does not report whether its own order matched on every query, so gate (b)'s order tracking here is additional detail, not a comparison against a reported order result. The reference receipt's one reported ORDER number (production_switch.code_queries_identical_top10_order, '5/5') comes from its own post-switch production check with 5 live code queries, a different procedure from this run's own gate (d) qualification check (5 queries against the live SocratiCode index, run before any switch); the two are not directly comparable, and this run made no post-switch top-10 check of its own (see production_switch below: only 30 gate texts and a cosine value were re-checked after the switch) -- unlike the reference, which also re-checked 5 code queries' top-10 order after its own switch (that same code_queries_identical_top10_order, '5/5').", + "0.30.0 relies on its pinned-memory fallback for WSL (vllm-project/vllm PR #56908, the same warning the reference receipt's owned instance logged); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", + "The 0.25.0 unit is kept for rollback; only a drop-in override (nemotron-embed-agent-lab.service.d, ExecStart and PATH only) points production at 0.30.0.", + "A diagnostic-only bug in this run's own gate (b) script (prod_scores_by_idx had score and index reversed) made the order_diff_detail[].prod_score sub-field in every candidate-vs-prod gate (b) file (gate_b_result.json and gate_b_trial{1,2,3}.json) and in the first, superseded prod-vs-prod control unreliable; it did not affect any cosine value, top-10 set, or pass/fail boolean -- only that one diagnostic sub-field -- and was fixed before the second, current prod-vs-prod control run. See raw/ERRATUM-gate_b-order_diff_detail-prod_score-bug.txt.", + "results.json's own generated prose has two internal inconsistencies against its own structured fields, corrected in this receipt from the underlying per-trial gate files (raw/gate_b_result.json, gate_b_trial{1,2,3}.json, gate_d_result.json, gate_d_trial{1,2,3}.json): its gate (b) finding text lists strict-order counts as '9, 7, 9 and 10' where the adjacent structured array and the per-file queries_with_identical_order fields agree on '10, 9, 7 and 9' (same four numbers, wrong order in the prose only); its gate (d) finding text says strict order held on '3, 5, 4 and 4' of 5 queries where the adjacent structured array and the per-file queries_identical_count fields agree on '4, 5, 4 and 4'.", + "The laptop's vllm-0.30.0 prefix pre-existed this run (never pip-installed into by this task, per its own instructions), so no direct_url.json or install log exists on this host to independently re-hash its wheel; the pin identity below is the value the workstation's own switch receipt recorded for the same pinned release, reused for cross-host comparison, not independently re-verified here. What IS independently verified on this host: both production (0.25.0) and the candidate (0.30.0) point at the identical, single model directory (same absolute path in both /v1/models responses), and this host's own sha256 of that directory's model.safetensors is recorded below.", + "independent_review: an independent reviewer subagent checked this receipt against the retained raw files (recomputed the reported counts, re-hashed the model file, compared production's before/after flags) and re-ran no gate; that review produced every correction listed above." ], - "path": "evidence/receipts/portable-cli-artifacts.json" + "path": "evidence/receipts/vllm-030-switch-laptop-20260926.json" }, { - "path": "adoption/receipt.json", - "id": "portable-sdk-adoption-20260919", + "id": "codex-01571-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "duckdb" + "codex" ], - "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", "limitations": [ - "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", - "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", - "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", - "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", - "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", - "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", - "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." - ] + "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", + "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", + "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", + "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", + "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", + "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", + "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", + "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", + "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", + "Linux x86_64 only, one host; nothing here is macOS evidence." + ], + "path": "evidence/receipts/codex-01571-qualification-20260926.json" }, { - "id": "portable-userspace-install-20260921", + "id": "mcp-inspector-280-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon", - "codex", - "claude-code" + "mcp-inspector" ], - "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", "limitations": [ - "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", - "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", - "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", - "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", - "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", - "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", - "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", - "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", - "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." + "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", + "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", + "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", + "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", + "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." ], - "path": "evidence/receipts/portable-userspace-install-20260921.json" + "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" }, { "id": "prometheus-3150-qualification-20260926", @@ -3453,174 +3297,127 @@ "path": "evidence/receipts/prometheus-3150-qualification-20260926.json" }, { - "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", - "id": "qdrant-native-state-recovery-20260919", + "id": "tavily-research-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "qdrant", - "restic" + "tavily-cli" ], - "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", "limitations": [ - "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", - "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", - "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", - "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", - "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." - ] - }, - { - "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", - "id": "qmd-bm25-retrieval-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "qmd" + "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", + "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", + "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", + "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", + "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", + "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", + "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", + "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." ], - "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", - "limitations": [ - "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", - "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", - "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", - "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", - "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", - "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", - "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", - "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", - "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", - "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", - "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." - ] + "path": "evidence/receipts/tavily-research-qualification-20260926.json" }, { - "id": "restic-local-public-reference-20260919", - "kind": "native_cli_e2e", + "id": "local-inference-c2-serving-switch-20260926", + "kind": "native_model_e2e", "component_ids": [ - "restic" + "llama-cpp" ], - "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", "limitations": [ - "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", - "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", - "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", - "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", - "Credential loss recovery requires separately approved secure key escrow." + "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", + "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", + "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", + "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", + "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", + "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", + "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." ], - "path": "blueprints/us-equities/hosting/backup/receipt.json" + "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" }, { - "id": "rtk-050-qualification-20260925", - "kind": "native_cli_e2e", + "id": "claude-advisor-usage-scan-20260928", + "kind": "artifact_measurement", "component_ids": [ - "rtk" + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", + "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", "limitations": [ - "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", - "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", - "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", - "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", - "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", - "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", - "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", + "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", + "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", + "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", + "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", + "Whether ccusage or ecosystem-token-report count these entries was not checked." ], - "path": "evidence/receipts/rtk-050-qualification-20260925.json" + "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" }, { - "id": "rtk-051-qualification-20261004", + "id": "claude-host-practice-readback-20260928", "kind": "native_cli_e2e", "component_ids": [ - "rtk" - ], - "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed rtk 0.51.0 from the checksummed Linux release archive and returned rtk 0.51.0 with exit 0. rtk verify returned 151/151 inline self-tests with exit 0; 24 hook payloads matched 0.50.0 output and exits (16 rewritten, 0 differing), and 26 permission-deny hook decisions matched with no auto-allows. Direct git/proxy calls succeeded and the existing tracking database was read and later updated. This receipt republishes bounded sanitized facts from the historical host records; it is not a new host or model run.", - "limitations": [ - "No macOS execution; the Darwin archive is artifact-checked only. No upstream cargo test suite was run in these records; rtk verify is the native inline self-test, and the 115-test parser run (14 skipped) is local integration.", - "rtk gain, session and cc-economics are tool self-reports, not provider counts, invoice data or causal savings. Cumulative snapshots are not added together.", - "No fresh live-client acceptance or rtk init re-run was recorded. The --shell compatibility review is source-based; the host hook comparison covered only its 24 payloads and 26 deny entries. Existing exact-output exceptions and dated replay gates remain scoped to their original evidence.", - "gh attestation verification returned HTTP 404 (exit 1); no signature verification or source rebuild was recorded. Later upstream fixes and issue #4404 are follow-ups, not included in this stable pin.", - "NativeStack runs AgentsView 0.44.0 ahead of the repository pin. The 2026-09-27 qualification hold stands: synthetic_ccusage_parity failed, fresh_four_native_lanes is blocked, and the v0.44.0 MCP reported zero Codex counters. The recorded recipe rewire and qualification must pass in a separate follow-up before a repository pin move.", - "RTK replay is unavailable at 0.51.0: vendored child-usage.mjs and the test_token_measurement.py/test_skill_usage.py replay gates require exactly rtk 0.50.0. Skipped replay tests are not coverage; the kernel and gates remain unchanged.", - "The repair-round placeholder guard probes allowed the --shell form rtk test --shell sh 'cat ~/.ssh/config' (exit 0), while rtk proxy cat ~/.ssh/config was blocked (exit 2). These strings were guard input only; no credential reader was executed. This finding belongs to PR #685; the guard is unchanged in this pin move.", - "2026-10-04 control correction after PR #693 CI run 37226622626: v0.51.0 intentionally folds grep file lists (feac25d), so the former byte-unchanged grep control is superseded by counted prefix-plus-tail reconstruction of the exact native path set, byte-identical proxy recovery and a CR-filename verbatim guard fixture (3223a80). The diff half is unchanged. The repaired native fixture passes nine checks over 11 cases / 33 arms; this is local integration of the installed Linux CLI, not new host or upstream Cargo-suite acceptance. Agent-facing expansion of folded paths is unmeasured; an E2E observation of a wrong expanded path leads to adding grep -l/-rl to hook exclusions. Sources and retained red-then-green observations: docs/decisions/2026-10-04-rtk-file-list-control.md.", - "2026-10-04 PR #698 follow-up from the pre-rebase review head 45a7218c0 (rebased onto 38ac9aca1; no branch keeps it): the grep inverse now preserves native engine order, and a CR-free explicit-operand t6c sibling proves that the same grep -l shape folds without the 3223a80 guard signal. Native distinctness and the CR-case LF record count have isolating rejection controls with separate predicate-deletion red runs and restored green runs. The installed Linux CLI passes ten checks across 12 cases / 36 arms / 76 fixture commands plus one version command. Historical shell_sites line 1477 is retained; a dated appended entry corrects the direct-argv locator. Minimal sanitized original red/green outputs from job 035 and new job 042 outputs are retained under evidence/artifacts/rtk-051-file-list-control-20261004/ (README.md and native-controls.json), with the dated decision at docs/decisions/2026-10-04-rtk-file-list-control.md. This is local integration, not a WSL rerun, upstream Cargo-suite, new-host or native-model acceptance; model interpretation remains unmeasured." - ], - "path": "evidence/receipts/rtk-051-qualification-20261004.json" - }, - { - "id": "runtime-sdk-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "codex" + "claude-code", + "claude-hud", + "headroom", + "mcporter", + "jcodemunch-mcp", + "agent-browser", + "qmd" ], - "claim": "Retained coordinator results for the same-host Codex SDK/CLI 0.160.0 pair report strict-hash installation, matching bundled/npm-platform binaries and completed native-account SDK, gateway SDK and gateway CLI marker canaries. Sanitized outputs, native CLI usage, scripts, hashes, mtimes and discriminating replay controls are now retained; missing original SDK invocation/source and process start/end evidence limit this to a compatibility attempt. The separate A4 record adds fail-closed Linux package-resolution/executable-tree repairs, offline integration controls and a fresh isolated bootstrap of the shipped Codex pin; it does not upgrade the SDK/gateway canary evidence class.", + "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", "limitations": [ - "Existing-host compatibility observations and completed marker canaries only; incomplete original command/timing provenance prevents native_cli_e2e acceptance. Not new-host or model-quality acceptance.", - "Gateway backend model and effort were not read from the call log; configured/requested routes and efforts do not prove backend selection.", - "The shared host launcher, daemon and production prefix still run 0.159.3 until a separate coordinated switch.", - "The 0.159.3 queue, Hindsight and October 1 SDK receipts retain their original scope; they do not qualify 0.160.0.", - "Sanitized native canary stdout/stderr, CLI events/last message and their hashes are retained. SDK caller exit codes 0 are coordinator-verified, not fields in the supplied facts. Gateway backend billed usage and monetary cost remain unrecorded.", - "Original process start/end times and SDK outer executable/cwd are unrecorded. Source mtimes are filesystem observations only. The native heredoc is reconstructed from facts and the retained gateway example, not attested as the original source.", - "SDK last and total usage snapshots match for each canary and must be counted once; cached input and reasoning output are subsets, not additional tokens.", - "No unchanged upstream test suite, shared daemon restart, whole-system cleanup/recovery acceptance, package signature or provenance attestation verification is recorded here. The separate A4 bootstrap record retains local migration/publication fault injection and an isolated native installation.", - "The move is inside the seven-day cooldown recorded in docs/decisions/2026-09-25-workstation-sota-refresh.md, as the prior 0.159.2 and 0.159.3 moves were (docs/decisions/2026-09-27-model-currency.md).", - "This repository change records existing coordinator qualification; it performs no new model run or shared-host switch.", - "The CLI script prints the inner Codex exit but does not propagate it as its own final shell exit; the recorded inner exit 0 is supported by the coordinator facts and completed native events." - ], - "path": "evidence/receipts/runtime-sdk-20261003.json" - }, - { - "id": "runtime-tools", - "path": "evidence/receipts/runtime-tools.json", - "kind": "native_cli_e2e", - "component_ids": [ - "gitleaks", - "sandbox-runtime" + "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", + "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", + "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", + "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", + "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", + "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", + "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." ], - "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", - "limitations": [ - "No claim of full security certification.", - "Sandbox network denial configured but not separately exercised." - ] + "path": "evidence/receipts/claude-host-practice-readback-20260928.json" }, { - "id": "sec-catalyst-dataset-native-20260920", + "id": "socraticode-1150-qualification-20260927", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "socraticode" ], - "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", "limitations": [ - "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", - "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", - "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", - "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", - "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", - "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", - "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", - "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", - "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." + "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", + "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", + "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", + "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", + "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", + "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", + "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", + "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", + "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", + "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", + "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." ], - "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" + "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" }, { - "id": "sec-financial-data-20260919", - "kind": "compatibility_attempt", + "id": "ccusage-20026-qualification-20260927", + "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "ccusage" ], - "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", "limitations": [ - "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", - "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", - "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", - "Current API snapshots do not reconstruct historical point-in-time knowledge.", - "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", - "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." + "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", + "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", + "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", + "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", + "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", + "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", + "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", + "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", + "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", + "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", + "New hosts receive this pin only after the next release tag." ], - "path": "blueprints/us-equities/financial-data/receipt.json" + "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" }, { "id": "skills-listing-restore-20260928", @@ -3666,27 +3463,104 @@ "path": "evidence/receipts/skills-m4-host-removal-20260928.json" }, { - "id": "socraticode-1150-qualification-20260927", + "id": "claude-model-effort-probes-20260929", "kind": "native_cli_e2e", "component_ids": [ - "socraticode" + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", + "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", "limitations": [ - "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", - "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", - "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", - "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", - "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", - "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", - "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", - "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", - "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", - "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", - "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", + "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", + "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", + "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", + "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." ], - "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" + "path": "evidence/receipts/claude-model-effort-probes-20260929.json" + }, + { + "id": "claude-max-default-effort-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", + "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", + "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", + "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", + "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", + "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", + "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", + "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." + ], + "path": "evidence/receipts/claude-max-default-effort-20260929.json" + }, + { + "id": "claude-project-effort-flag-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", + "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", + "The Ultracode reminder is an indicator, not proof of workflow orchestration.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." + ], + "path": "evidence/receipts/claude-project-effort-flag-20260929.json" + }, + { + "id": "claude-spend-attribution-20260929", + "kind": "artifact_measurement", + "component_ids": [ + "claude-code", + "ccusage" + ], + "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", + "limitations": [ + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", + "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", + "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", + "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", + "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", + "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", + "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", + "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", + "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", + "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." + ], + "path": "evidence/receipts/claude-spend-attribution-20260929.json" + }, + { + "id": "wsl-terminal-defaults-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code", + "codex" + ], + "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, and 2.1.283 in a second distro; Codex 0.157.1; bash 5.2.21; Windows Terminal 1.24.11911.0) the repository now carries the terminal defaults that had been set by hand on the host. Merging the linux-wsl2 Claude Code overlay into the live settings with the repository's merge tool changed nothing (the merge equalled the live file), exactly one Notification group holds the bell command, and its matcher equals the overlay's (the acceptance script checks the matcher because the merge alone cannot see it). The rendered Codex template loads under `codex --strict-config` (the run stops at authentication, never at configuration); a wrong type for `[tui] notifications` and an unknown top-level key are refused, and an unknown key inside `[tui]` is not. The static `adoption_status.py --login-shell` model agreed with the real bash login search in all 512 combinations of three startup files over eight states, a FIFO made bash block (the model calls it unusable and unread), and a control that takes an empty file as absent disagreed in 26. In the second distro, the two per-project Claude profiles of the Windows Terminal settings dropped `suppressApplicationTitle` and gained the quiet bell, the audible-and-taskbar bell style and `COLORTERM` through the profile environment key, with every other profile and setting unchanged; the overlay merged into that distro's Claude settings changed only `$schema`, `hooks` and `preferredNotifChannel`, and its installed hook command printed exactly one BEL. The host practice repository's terminal-profile check now scans the live settings file and passed with 0 findings (the pre-change settings file fails it with 8 findings on the two per-project profiles), and its 22 single-defect controls each failed for exactly their rule.", + "limitations": [ + "One workstation and one Ubuntu 24.04 distro plus one second distro (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own evidence, and none of the new files is in the pinned release: a new host gets them only after a release carries them and the manifest is re-pinned.", + "No Windows Terminal tab was opened or measured after the second distro's profile change, and no session of that distro was started or observed after its overlay. Claude Code applies edits to `hooks` to a running session without a restart (settings reference, \"When edits take effect\"), so open sessions there should pick the overlay up; that was not observed, and an audible or taskbar bell for the alert path was not observed by the user in this work.", + "The profile example was checked as JSON against the policy. It declares no `guid`, so Windows Terminal derives a stable one from the folder and profile names (read in its source at the installed tag); it was not loaded into Windows Terminal or installed on any host. The host's deployed fragment is the practice repository's own file.", + "The `--login-shell` check reads file metadata only and models bash's login search from the source of bash 5.3 (shell.c execute_profile_file, builtins/evalfile.c) and the installed 5.2.21 on Linux; it does not run a login shell, read a startup file (so a non-empty file's hand-off is unknown, reported as null), or cover /etc/profile, ~/.bashrc, another shell, --noprofile, POSIX mode, an sh-mode login or macOS's bash 3.2. A special file is reported unusable: bash reads a device as empty and blocks on a FIFO, and both end the search; an unusable ~/.profile is reached but not read, so profile_read is false; HOME is the environment's, else the passwd entry's, else \"/\", the way bash falls back.", + "The Codex acceptance is a configuration load: no Codex notification was produced in this work, `async-question` does not exist at the macOS pin's tag (inert there) and Codex 0.155.1 was not run. Codex does not validate keys inside `[tui]`, so the repository's test pins that table's setting names. A `request_user_input` question notifies as `plan-mode-prompt` at both tags (tool_requests.rs L449-458), so `async-question` adds only the asynchronous questions 0.155.1 lacks.", + "The second distro's `tui` is `fullscreen` by its own setting; `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` was not set, as the upstream documentation makes it a reactive fix and no stale rendering was observed or measured.", + "The host practice repository has no remote (commits fcd291f, 396d1c1, 9500656, c14e8c3, 9f615ad and d0c7d9c); its check and controls are recorded here as results only. The Windows Terminal settings patch and the second distro's merge were host operations on private files, recorded as values.", + "The second distro's Claude Code is 2.1.283, one release before this host's. A scan of the installed binaries (this host's 2.1.282, 2.1.283 and 2.1.284, and that distro's 2.1.283) found the `notifications_disabled` and `terminalSequence` literals and `worker_permission_prompt` emitted from the same two team-inbox call sites in each (the second distro's binary is byte-identical to this host's 2.1.283 by SHA-256 prefix, and its occurrence counts by `grep -a -o` equal this host's scan), so the whole matcher is live there. The changelog dates `terminalSequence` to 2.1.141 and has no entry for `notifications_disabled`, which the settings reference documents. The hook was run in that distro.", + "The merge de-duplicates hooks by command anywhere in the event, so it never changes the matcher of a Notification hook that already runs the bell command: after a later matcher change the old group must be edited or removed first. The acceptance script checks the group count and the matcher for that reason, and a unit test proves it refuses a catch-all group and an older matcher.", + "The Codex `[tui] notifications` list is in the template that a macOS host also renders. Codex keeps its own per-terminal channel there, so needed kinds still notify natively and the turn-complete one stops; at the macOS pin `async-question` does not exist and is inert. This was decided and documented, and not observed on a Mac.", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): codex_tui_strict_check.py counts a run as loaded only with Codex's session banner and exits 1 unless the template loaded and both configuration controls were refused; overlay_noop_check.py also requires disableAllHooks not to be true and labels its verdict as a check of the user settings file only; login_shell_bash_truth.py and the 512-combination test now also compare first_read; the platform page's advice about profiles.defaults was corrected (Windows Terminal ranks a profile's own value, then profiles.defaults, then a fragment's profile). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + ], + "path": "evidence/receipts/wsl-terminal-defaults-20260929.json" }, { "id": "socraticode-1160-qualification-20260929", @@ -3710,152 +3584,112 @@ "path": "evidence/receipts/socraticode-1160-qualification-20260929.json" }, { - "id": "sota-convergence-20260922", - "kind": "historical_inventory", + "id": "omniroute-3851-npm-qualification-20260930", + "kind": "compatibility_attempt", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "apple-container", - "ast-grep", - "beads", - "ccusage", - "claude-code", - "claude-hud", - "codebase-memory-mcp", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "fastapi", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "llama-cpp", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nextjs", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "playwright-cli", - "playwright-test", - "poppler", - "postgresql", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "react", - "repomix", - "restic", - "rtk", - "sandbox-runtime", - "serena", - "shanraisshan/claude-code-best-practice", - "shellcheck", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "omniroute" ], - "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", "limitations": [ - "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", - "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", - "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", - "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." + "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", + "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", + "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", + "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", + "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", + "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", + "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", + "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", + "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." ], - "path": "evidence/receipts/sota-convergence-20260922.json" + "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" }, { - "id": "syft-1540-qualification-20261003", + "id": "codex-01592-qualification-20260930", "kind": "native_cli_e2e", "component_ids": [ - "syft" + "codex" ], - "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", "limitations": [ - "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", - "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", - "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", + "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", + "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", + "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", + "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", + "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", + "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", + "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", + "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", + "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", + "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", + "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", + "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", + "Linux x86_64 only, one host; nothing here is macOS evidence." ], - "path": "evidence/receipts/syft-1540-qualification-20261003.json" + "path": "evidence/receipts/codex-01592-qualification-20260930.json" }, { - "path": "blueprints/us-equities/supply-chain/receipt.json", - "id": "syft-sdk-inventory-20260919", + "id": "notification-types-20260929", "kind": "native_cli_e2e", "component_ids": [ - "syft" + "claude-code" ], - "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", "limitations": [ - "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", - "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", - "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", - "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", - "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", - "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", - "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", - "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", - "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", - "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." - ] + "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", + "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", + "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", + "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", + "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", + "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", + "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", + "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", + "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + ], + "path": "evidence/receipts/notification-types-20260929.json" }, { - "id": "synthetic-catalyst-contract-20260920", + "id": "login-shell-contract-20260929", "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "claude-code", + "codex" ], - "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", "limitations": [ - "Protocol thresholds are exploratory choices, not fitted or proven optimal.", - "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", - "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", - "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", - "No provider calls, broker orders, new model turn or net token-savings measurement." + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", + "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", + "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", + "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", + "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", + "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", + "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", + "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", + "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." ], - "path": "blueprints/us-equities/catalyst-experiment/receipt.json" + "path": "evidence/receipts/login-shell-contract-20260929.json" }, { - "id": "tavily-research-qualification-20260926", - "kind": "native_cli_e2e", + "id": "cross-family-review-terminal-lane-20260930", + "kind": "native_model_e2e", "component_ids": [ - "tavily-cli" + "codex", + "omniroute", + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", + "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", "limitations": [ - "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", - "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", - "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", - "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", - "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", - "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", - "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", - "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", + "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", + "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", + "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", + "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", + "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", + "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." ], - "path": "evidence/receipts/tavily-research-qualification-20260926.json" + "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" }, { "id": "terminal-experience-20260928", @@ -3882,480 +3716,497 @@ "path": "evidence/receipts/terminal-experience-20260928.json" }, { - "id": "token-native-retained-functional-20260920", - "path": "evidence/receipts/token-native-retained-functional-20260920.json", - "kind": "native_cli_e2e", + "id": "codex-shell-snapshot-cleanup-20260930", + "kind": "artifact_measurement", "component_ids": [ - "context-hub", - "headroom", - "mcp-inspector", - "promptfoo", - "worktrunk" + "codex" ], - "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", + "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", "limitations": [ - "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", - "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", - "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", - "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", - "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", - "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." - ] + "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", + "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", + "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", + "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." + ], + "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" }, { - "id": "token-practice-artifacts-20260920", + "id": "agent-browser-lna-20260930", "kind": "artifact_measurement", "component_ids": [ "agent-browser", - "ast-grep", - "edgartools", - "markitdown", - "qmd", - "repomix", - "rtk", - "socraticode", - "syft", - "toon" + "playwright-test" ], - "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", + "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", "limitations": [ - "Counts describe retained original host artifacts. This public aggregate omits the private originals; CI validates aggregate integrity, not an independent recount of those private bytes.", - "Most pairs select or transform information lossily. Shorter output does not establish equivalent answer quality or lower complete task usage.", - "Pairs overlap, including shared HTML sources and retrieval services. Do not sum them or attribute the same difference independently to dependencies.", - "Exact provider savings remain null. Tokenizer counts are not provider billing, subscription savings or causal per-repository effects.", - "The Syft table preserves checked package name/version/type columns while omitting other SBOM metadata; this is a view selection, not equivalent full SBOM content." + "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", + "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", + "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", + "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." ], - "path": "evidence/receipts/token-practice-artifacts-20260920.json" + "path": "evidence/receipts/agent-browser-lna-20260930.json" }, { - "id": "token-practice-catalog-toon-20260920", + "id": "guard-k3-verification-20260930", "kind": "artifact_measurement", "component_ids": [ - "toon" + "claude-code" ], - "claim": "A reversible full-catalog TOON conversion had a smaller native heuristic estimate but a larger exact token count than compact JSON; the guard retained compact JSON.", + "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", "limitations": [ - "This is one later artifact comparison, separate from the ten original token-practice pairs. Do not sum it with cumulative native counters or provider usage.", - "Native tokenx estimates and exact o200k_base counts use different estimators and JSON representations; they are not interchangeable savings metrics.", - "The public aggregate omits the private captured output files. Published hashes establish identity, not independent CI recount of the private bytes.", - "Exact provider savings remain unknown. The successful strict round trip establishes data equivalence for this conversion only.", - "Command templates replace host-specific source and output locations with portable placeholders." + "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", + "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", + "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", + "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", + "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1068,7 +1064,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.80.0", + "version": "0.79.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1083,21 +1079,20 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "worktrunk-0800-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" ], - "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", + "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.162.0", + "version": "0.161.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1117,15 +1112,13 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "otelcol-contrib-0162-qualification-20261003" + "claude-repository-evidence-20260921" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" + "https://github.com/open-telemetry/opentelemetry-collector-contrib" ], - "freshness": "Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The recorded scratch version and validate commands exited 0; no host service was switched. Prior 0.161.0 receipts retain their original scope. The dated upstream metadata is in catalogs/landscape/upstream-snapshot.json." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "prometheus", @@ -1233,7 +1226,7 @@ "upstream_sources": [ "https://github.com/grafana/grafana" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "alertmanager", @@ -1408,10 +1401,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.54.0", + "version": "1.52.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", + "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1420,14 +1413,13 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921", - "syft-1540-qualification-20261003" + "claude-repository-evidence-20260921" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.54.0" + "https://github.com/anchore/syft/releases/tag/v1.52.0" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." + "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." }, { "id": "alpaca-py", @@ -1690,7 +1682,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.327", + "version": "1.108.319", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1703,7 +1695,7 @@ } } ], - "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1716,14 +1708,13 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "jcodemunch-1108327-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", - "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", + "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", + "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 5c4f53f054d8b54357aad23d603a757e3e70ef0d Mon Sep 17 00:00:00 2001 From: Scout Date: Mon, 5 Oct 2026 02:51:53 -0400 Subject: [PATCH 34/50] Reapply this branch's manifests/evidence.json manifests/stack.json edits on the merge base (hot-file protocol: every hot-file edit in the last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 5912 ++++++++++++++++++++------------------- manifests/stack.json | 81 +- 2 files changed, 3123 insertions(+), 2870 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 3952640a2..ff7eebc35 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -2,518 +2,791 @@ "schema_version": 1, "receipts": [ { - "id": "memory-lifecycle-probe-20260921", + "id": "adaptive-paper-practice-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "nautilus-trader", + "alpaca-py", + "claude-code", + "codex" ], - "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", + "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", "limitations": [ - "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", - "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", - "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", - "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", - "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", - "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." + "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", + "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", + "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", + "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." ], - "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" + "path": "evidence/receipts/adaptive-paper-practice-20260921.json" }, { - "id": "catalog-runtime-review-20260921", - "kind": "native_model_e2e", + "id": "adoption-macos-hosted-smoke-20260922", + "kind": "native_cli_e2e", "component_ids": [ "codex", "claude-code", - "dagu" + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" ], - "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", + "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", "limitations": [ - "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", - "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", - "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." + "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", + "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", + "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", + "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", + "socraticode is the profile's documented unpinned skip and was not installed." ], - "path": "evidence/receipts/catalog-runtime-review-20260921.json" + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" }, { - "id": "catalog-clean-install-20260921", + "id": "adoption-macos-hosted-smoke-20260923", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "codex", + "claude-code", + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" ], - "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", + "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", "limitations": [ - "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", - "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", - "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." + "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", + "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", + "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", + "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." ], - "path": "evidence/receipts/catalog-clean-install-20260921.json" + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" }, { - "id": "dashboard-gap-resolution-20260921", - "kind": "native_cli_e2e", + "id": "agent-browser-lna-20260930", + "kind": "artifact_measurement", "component_ids": [ - "ai-memory", - "codex", - "claude-code", - "agentsview", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo", - "vllm" + "agent-browser", + "playwright-test" ], - "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", + "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", "limitations": [ - "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", - "Fresh PreCompact event and active Desktop session end remain unforced.", - "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", - "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", - "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", - "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." + "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", + "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", + "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", + "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." ], - "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" + "path": "evidence/receipts/agent-browser-lna-20260930.json" }, { - "id": "dashboard-render-e2e-20260921", + "id": "ai-memory-240-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qdrant", - "socraticode", - "serena", - "agentsview", - "dagu", - "omniroute", - "agent-browser", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo" + "ai-memory" ], - "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", "limitations": [ - "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", - "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", - "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", - "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", - "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", - "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", - "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", + "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", + "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", + "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", + "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", + "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", + "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." ], - "path": "evidence/receipts/dashboard-render-e2e-20260921.json" + "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" }, { - "id": "hf-memory-models-20260921", + "id": "ai-memory-241-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "vllm", - "grafana" + "ai-memory" ], - "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", + "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", "limitations": [ - "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", - "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", - "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", - "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", - "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", - "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", + "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", + "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", + "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", + "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", + "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", + "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." ], - "path": "evidence/receipts/hf-memory-models-20260921.json" + "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" }, { - "id": "native-memory-rag-alignment-20260921", + "path": "blueprints/us-equities/state-recovery/memory/receipt.json", + "id": "ai-memory-native-state-recovery-20260919", "kind": "native_cli_e2e", "component_ids": [ "ai-memory", - "socraticode", - "qdrant", - "qmd", - "vllm", - "grafana", - "loki" + "restic" ], - "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", + "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", "limitations": [ - "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", - "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", - "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", - "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", - "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", - "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", - "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." - ], - "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" + "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", + "38 pages table rows include historical versions, not 38 current pages.", + "Native backup excludes raw/, model caches, logs and external native session transcripts.", + "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", + "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", + "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." + ] }, { - "id": "native-returned-results-20260921", + "path": "blueprints/us-equities/order-contract/receipt.json", + "id": "alpaca-offline-order-contract-20260919", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "rtk", - "context-mode", - "qmd", - "serena", - "ai-memory", - "socraticode", - "qdrant", - "agentsview", - "grafana", - "loki", - "prometheus", - "dagu", - "ntfy", - "omniroute", - "agent-browser", - "promptfoo", - "headroom", - "jcodemunch-mcp" + "alpaca-py" ], - "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", + "claim": "Installed alpaca-py request models silently dropped synthetic advanced fields; this explicit broker-disconnected basic-intent boundary rejected those inputs and eight additional negative cases while preserving canonical decimal strings.", "limitations": [ - "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", - "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", - "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", - "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", - "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", - "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", - "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", - "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", - "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." - ], - "path": "evidence/receipts/native-returned-results-20260921.json" + "Local contract is not wired into unrelated SDK calls or existing workers; explicit future adapter adoption is required.", + "No broker account, key, asset lookup, risk approval, live/paper order or provider wire behavior was exercised.", + "Whole-share basic create-intent subset only; advanced, replacement, cancellation, retries, order journals and reconciliation remain gated.", + "Input representation cap and symbol/client-ID syntax are local conservative policies, not provider or risk authorization.", + "Python SDK float conversion is observed; the canonical exact decimal envelope is deliberately not serialized through those float fields.", + "JavaScript advanced support is pinned-source evidence only; no alternative SDK was installed or executed.", + "Python audit events and the Linux namespace substantiate this scoped probe, not a universal sandbox or macOS acceptance.", + "Canonical content hashes do not establish client-ID uniqueness, deduplication or safe retry semantics.", + "No token-saving claim or model inference belongs to this deterministic task." + ] }, { - "id": "native-workflow-writing-comparison-20260921", + "id": "alpaca-paper-e2e-20260921", "kind": "native_cli_e2e", "component_ids": [ + "alpaca-py", "claude-code" ], - "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", + "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", "limitations": [ - "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", - "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", - "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." + "One operational smoke trial, not profitable strategy or continuous trading acceptance.", + "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", + "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." ], - "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" + "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" }, { - "id": "native-workflow-graceful-recovery-20260921", - "kind": "native_cli_e2e", + "id": "artifact-reductions", + "path": "evidence/receipts/artifact-reductions.json", + "kind": "artifact_measurement", "component_ids": [ - "claude-code" + "rtk", + "socraticode", + "openresearch", + "context-mode" ], - "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", + "claim": "Recorded exact selected-text reductions, distinct from model usage.", "limitations": [ - "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", - "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", - "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", - "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." - ], - "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" + "Lossy selections compare retained text to full-file/paper counterfactuals.", + "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." + ] }, { - "id": "portable-userspace-install-20260921", + "id": "broad-universe-research-20260921", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon", - "codex", - "claude-code" + "alpaca-py", + "duckdb", + "claude-code", + "codex" ], - "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", + "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", "limitations": [ - "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", - "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", - "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", - "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", - "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", - "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", - "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", - "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", - "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." + "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", + "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", + "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", + "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", + "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." ], - "path": "evidence/receipts/portable-userspace-install-20260921.json" + "path": "evidence/receipts/broad-universe-research-20260921.json" }, { - "id": "claude-selective-context-pilot-20260921", - "kind": "native_model_e2e", + "id": "canary-proof-verification-20261001", + "kind": "artifact_measurement", "component_ids": [ "claude-code", - "context-mode" + "codex", + "systemd" ], - "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", + "claim": "The canary proof tool (tools/credentials/canary_proof.py, 1,834 lines, with the contained scan worker tools/credentials/canary_scan_worker.py, 2,114 lines) passed its synthetic acceptance on the workstation on 2026-10-01 on main with the K4 guard: its unit suite ran 143 tests, OK, with none skipped (including 12 cases that start transient systemd user scopes); its mutation runner killed 138 of 138 mutants by failures of their named permanent tests after 90 passing unmutated runs; and the credential, guard, Codex worker-lane and pre-commit suites ran 531 tests with one failure by design (the installed host copy of the guard). The tool plants a unique synthetic canary, lets named consumers use it through the key runner, and searches the named sinks with ripgrep in a worker that runs in a finite systemd user scope; its classifier refuses unless every required check has a fresh, complete result bound to the run. Reviews: a read-only GPT-6 verification found seven paths to a false clean verdict and four high findings, and an Opus build review found one blocking gap in the contract's acceptance cases; one repair round by a GPT-6 runtime worker fixed them, each with a permanent test and a mutant; an Opus re-check confirmed 37 of 42 dispositions and found one more false-clean path (a Git object store with no HEAD, refs or .git name, reached directly) and a record-validation defect, which one bounded fix round closed with tests and mutants. No end-to-end proof has run: it is the new distribution's acceptance after its guard install.", "limitations": [ - "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", - "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", - "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", - "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", - "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", - "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", - "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", - "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." + "Synthetic acceptance only: every sink, canary, Git store, SQLite database and journal in these runs is a fixture the tests build under a temporary directory; no real consumer, transcript, log, journal or credential was used, and no proof claim is made before the end-to-end run.", + "Containment evidence is workstation scope enforcement: the real-scope classes start transient systemd user scopes on this host (12 cases, all passing); hosted CI runners skip them where no user scope exists.", + "Scanner: ripgrep 14.1.0 is the executed version; the runtime also accepts 15.2.0 on a source-reviewed output grammar that no run has executed.", + "Size: the implementation (3,948 coordinator and worker lines) and the permanent test file (3,632 lines) exceed the contract's ceilings (1,800 and 2,800); the coordinator accepted the deviation for the required coverage and containment logic, and the reviews' dead-code findings were removed.", + "Residuals from the Opus re-check, recorded in the decision record: a completed but too-early or stale final is labelled requested_incomplete; the WAL/SHM-without-valid-main guard, Walk.covered's exclusion, time, special-file and symlinked-parent branches, and several O12 changes have no test of their own; three mutants are missing (END count/aux, --text, a count-based Git reconcile); bind_scope's refusal paths and the real scope_populated parser are untested; the scan's exit code still comes from events it does not validate.", + "Evidence classes differ: the unit, mutation and suite runs were made by the coordinator on the final head outside any sandbox; the reviews are read-only cross-family reads, not proofs." ], - "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" + "path": "evidence/receipts/canary-proof-verification-20261001.json" }, { - "id": "native-dashboard-data-20260921", + "id": "catalog-clean-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qmd", - "qdrant", - "agentsview", - "grafana", - "loki", - "rtk", - "context-mode", - "headroom", - "jcodemunch-mcp", - "promptfoo", - "serena", - "systemd" + "codex" ], - "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", + "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", "limitations": [ - "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", - "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", - "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", - "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", - "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", - "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", - "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", - "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", - "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." + "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", + "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", + "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." ], - "path": "evidence/receipts/native-dashboard-data-20260921.json" + "path": "evidence/receipts/catalog-clean-install-20260921.json" }, { - "id": "foundation-closure-20260921", - "kind": "native_cli_e2e", + "id": "catalog-freshness-20260923", + "kind": "upstream_provenance", "component_ids": [ "claude-code", "codex", - "affaan-m/ECC", - "context-mode" + "llama-cpp", + "mcp-inspector", + "openresearch", + "skfolio" ], - "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", + "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", "limitations": [ - "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", - "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", - "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", - "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", - "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", - "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", - "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", - "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." + "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", + "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", + "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", + "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." ], - "path": "evidence/receipts/foundation-closure-20260921.json" + "path": "evidence/receipts/catalog-freshness-20260923.json" }, { - "id": "native-quality-defaults-20260920", - "kind": "native_cli_e2e", + "id": "catalog-runtime-review-20260921", + "kind": "native_model_e2e", "component_ids": [ "codex", - "claude-code" + "claude-code", + "dagu" ], - "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", + "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", "limitations": [ - "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", - "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", - "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", - "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", - "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." + "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", + "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", + "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." ], - "path": "evidence/receipts/native-quality-defaults-20260920.json" + "path": "evidence/receipts/catalog-runtime-review-20260921.json" }, { - "id": "native-terminal-profiles-20260920", + "id": "ccusage-20026-qualification-20260927", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "qdrant", - "vllm" + "ccusage" ], - "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", "limitations": [ - "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", - "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", - "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", - "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", - "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." + "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", + "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", + "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", + "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", + "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", + "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", + "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", + "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", + "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", + "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", + "New hosts receive this pin only after the next release tag." ], - "path": "evidence/receipts/native-terminal-profiles-20260920.json" + "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" }, { - "id": "native-claude-profile-20260920", - "kind": "native_cli_e2e", + "id": "claude-advisor-usage-scan-20260928", + "kind": "artifact_measurement", + "component_ids": [ + "claude-code" + ], + "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", + "limitations": [ + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", + "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", + "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", + "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", + "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", + "Whether ccusage or ecosystem-token-report count these entries was not checked." + ], + "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" + }, + { + "id": "claude-foundation-finalization-20260921", + "kind": "native_model_e2e", "component_ids": [ "claude-code", "codex", - "affaan-m/ECC", - "context-mode", - "rtk" + "agent-browser", + "repomix" ], - "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", + "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", "limitations": [ - "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", - "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", - "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", - "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", - "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", - "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", - "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", - "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", - "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." + "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", + "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", + "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", + "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." ], - "path": "evidence/receipts/native-claude-profile-20260920.json" + "path": "evidence/receipts/claude-foundation-finalization-20260921.json" }, { - "id": "native-offhost-restic-20260920", + "id": "claude-host-practice-readback-20260928", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "claude-code", + "claude-hud", + "headroom", + "mcporter", + "jcodemunch-mcp", + "agent-browser", + "qmd" ], - "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", + "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", "limitations": [ - "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", - "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", - "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", - "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", - "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", - "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." + "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", + "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", + "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", + "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", + "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", + "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", + "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." ], - "path": "evidence/receipts/native-offhost-restic-20260920.json" + "path": "evidence/receipts/claude-host-practice-readback-20260928.json" }, { - "id": "native-dagu-retry-tests-20260920", + "id": "claude-hud-0100-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "dagu" + "claude-hud" ], - "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", "limitations": [ - "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", - "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", - "No broker/provider operations or token savings were measured.", - "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" }, { - "id": "native-token-stack-final-20260920", - "kind": "native_model_e2e", + "id": "claude-hud-0100-qualification-20261004", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", + "claude-hud" + ], + "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed claude-hud 0.10.0 from tag v0.10.0 through native Claude plugin commands after an initial marketplace-source mismatch failed. Native marketplace remove/add and plugin install succeeded; plugin list showed version 0.10.0 enabled at user scope. Direct and configured statusline commands rendered a sample payload with exit 0. This is historical plugin and sample-render evidence, not a new interactive terminal session or model run.", + "limitations": [ + "No macOS execution and no upstream test suite run. There are no release assets for this tag; the supported installation remains a native Claude Code plugin, not a tarball bootstrap kind.", + "First marketplace add failed with exit 1 due to the old source entry; native remove/add/install recovered it. Sample statusline rendering does not establish a fresh interactive Claude session or provider usage.", + "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" + }, + { + "id": "claude-max-default-effort-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", + "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", + "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", + "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", + "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", + "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", + "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", + "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." + ], + "path": "evidence/receipts/claude-max-default-effort-20260929.json" + }, + { + "id": "claude-model-effort-probes-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", + "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", + "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", + "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", + "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." + ], + "path": "evidence/receipts/claude-model-effort-probes-20260929.json" + }, + { + "id": "claude-project-effort-flag-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", + "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", + "The Ultracode reminder is an indicator, not proof of workflow orchestration.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." + ], + "path": "evidence/receipts/claude-project-effort-flag-20260929.json" + }, + { + "id": "claude-repository-evidence-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "alpaca-py", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codex", + "codex-for-claude", + "context-hub", "context-mode", - "jcodemunch-mcp", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "duckdb", + "edgartools", + "gitleaks", + "grafana", "headroom", - "rtk", - "opentelemetry-collector-contrib", + "huggingface-hub-native", + "jcodemunch-mcp", + "lean", "loki", - "prometheus" + "markitdown", + "mcp-inspector", + "mcporter", + "nautilus-trader", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "pandas", + "playwright-cli", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shellcheck", + "skfolio", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", + "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", "limitations": [ - "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", - "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", - "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", - "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", - "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", - "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", - "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", - "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." + "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", + "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", + "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", + "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", + "Superseded observations, including the author's own probe and invocation errors, remain recorded." ], - "path": "evidence/receipts/native-token-stack-final-20260920.json" + "path": "evidence/receipts/claude-repository-evidence-20260921.json" }, { - "id": "native-rag", - "path": "evidence/receipts/native-rag.json", + "id": "claude-selective-context-pilot-20260921", "kind": "native_model_e2e", "component_ids": [ - "codex", "claude-code", - "socraticode", - "qdrant", - "vllm", - "huggingface-hub-native" + "context-mode" ], - "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", + "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", "limitations": [ - "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", - "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." - ] + "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", + "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", + "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", + "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", + "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", + "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", + "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", + "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." + ], + "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" }, { - "id": "native-memory", - "path": "evidence/receipts/native-memory.json", - "kind": "native_model_e2e", + "id": "claude-spend-attribution-20260929", + "kind": "artifact_measurement", "component_ids": [ + "claude-code", + "ccusage" + ], + "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", + "limitations": [ + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", + "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", + "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", + "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", + "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", + "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", + "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", + "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", + "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", + "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." + ], + "path": "evidence/receipts/claude-spend-attribution-20260929.json" + }, + { + "id": "claude-spend-window-20261004", + "kind": "artifact_measurement", + "component_ids": [ + "claude-code", + "ccusage", + "context-mode" + ], + "claim": "Retained Claude-only ccusage daily costs rise from $2,823.79 and $2,427.25 on October 1/2 to $5,940.56 on October 3. The supplied executor window comparison reproduces exactly from count-only scanner outputs: IET per 24 h rises 2.121 times, counted call rows 2.419 times, and subagents started 2.824 times, while mean context per call falls from 271,790 to 216,230 tokens. The unfiltered retained session-view export is $12,404.88 and its workflow share is 61.402%; removing 17 rows with pre-10-03 last activity leaves $11,151.92, with coordinator-tree shares 63.296% and 33.787%. These are session-selection views, not spend since 10-03. Net pre-first-call attachment growth excluding UI is about 2.9 KB (0.8K rough tokens), rather than the positive-only 4.3 KB (1.2K) estimate. These are scoped observations, not subscription charges or a quality comparison. Adding the retained advisor-cohort estimate gives 830.270M and 1,777.960M IET per 24 h (2.141 times); all 689 A and 1,209 B advisor iterations in those cohorts used Fable. Fable is $2,092.87, or 35.230% of priced Claude dollars on 10-03. The user subsequently selected an Opus 5.5 advisor.", + "limitations": [ + "API-equivalent prices are not the subscription meter. ccusage leaves claude-sonnet-5-5 unpriced; its dollars therefore do not price every counted Claude model.", + "ccusage days are local time and Prometheus days are UTC. These scopes and the scanner windows must not be summed or equated.", + "Prometheus keeps one week; this retained export starts with the UTC day 2026-09-27 and ends with 2026-10-03.", + "The attr byte shares use unfitted weights, so they show direction only; receipt context shares exclude UI records before normalization.", + "The hook_success records are UI-only and are not counted as context. Pre-first-call attachment sizes are serialized metadata bytes, not exact model input or tokenization.", + "NativeStack only, because NativeStack2604's telemetry has no listener. This scope is the coordinator's stated observation boundary, not a new listener check.", + "10-04 is a partial day. The scanner ends at 14:00Z; no full-day projection is a measured total.", + "This is a re-derivation of retained native outputs and scanner aggregates, not a new provider/model run, an upstream acceptance test, or a quality/savings A/B.", + "window_compare.py includes synthetic zero-usage rows in its call counts and uses per-field maximum deduplication. Its subagent calls-per-file statistic spans each selected file, whereas its call and IET windows filter call timestamps.", + "Window hook text is not retained in the aggregate inputs. Historical hook-text estimates are reported as estimates; current installed carrier and upstream static hook sizes are distinct observations and do not establish historical hook outputs.", + "The unfiltered session export includes pre-10-03 activity: 17 rows worth $1,252.96 have lastActivity before 2026-10-03T04:00Z. The raw and activity-selected shares have different denominators. Filtering lastActivity does not restrict the dates of every token in a session total; neither view is established as spend since 10-03.", + "The reproduction artifact extends the supplied analysis with advisor-cohort rows. Original executor output is unchanged. Its private raw output includes source identifiers; only sanitized aggregates are retained here.", + "Advisor iterations are absent from calls.tsv and retained only as per-file tot values in files.jsonl. Grouping them by file first_ts reproduces the reviewed cohorts, but files can cross window boundaries. Executor-plus-advisor-cohort IET is an estimate with mixed timestamp scopes, not an exact call-window total; advisor iterations have no recorded effort here.", + "IET applies the same coefficients to every model: input 1, cache read 0.1, five-minute and unclassified cache writes 1.25, one-hour cache writes 2, and output 5, with thinking already in output. There is no model-specific base-price multiplier. Advisor aggregates lack cache-write duration splits and weight all cache writes at 1.25. Thus IET model shares and window ratios are relative-index measures, not dollar shares or actual spend ratios; Fable dollars from ccusage remain separate. Historical Fable usage precedes the new Opus advisor decision." + ], + "path": "evidence/receipts/claude-spend-window-20261004.json" + }, + { + "id": "claude-upstream-checks-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "agent-browser", + "agentsview", "ai-memory", + "alertmanager", + "ast-grep", + "beads", + "ccusage", + "claude-code", "codex", - "claude-code" + "codex-for-claude", + "context-mode", + "dagu", + "difftastic", + "gitleaks", + "grafana", + "headroom", + "jcodemunch-mcp", + "lean", + "loki", + "markitdown", + "mcporter", + "nautilus-trader", + "openresearch", + "opentelemetry-collector-contrib", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", + "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", "limitations": [ - "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", - "No historical archive backfill or LLM/embedding consolidation pipeline enabled." - ] + "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", + "Complete originals remain private; public excerpts are bounded and sanitized.", + "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." + ], + "path": "evidence/receipts/claude-upstream-checks-20260921.json" }, { - "id": "native-context-memory", - "path": "evidence/receipts/native-context-memory.json", - "kind": "native_model_e2e", + "id": "codex-01571-qualification-20260926", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", + "limitations": [ + "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", + "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", + "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", + "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", + "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", + "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", + "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", + "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", + "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", + "Linux x86_64 only, one host; nothing here is macOS evidence." + ], + "path": "evidence/receipts/codex-01571-qualification-20260926.json" + }, + { + "id": "codex-01592-qualification-20260930", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", + "limitations": [ + "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", + "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", + "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", + "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", + "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", + "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", + "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", + "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", + "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", + "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", + "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", + "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", + "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", + "Linux x86_64 only, one host; nothing here is macOS evidence." + ], + "path": "evidence/receipts/codex-01592-qualification-20260930.json" + }, + { + "id": "codex-01593-hindsight-native-memory-20261001", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "Fresh native Codex automatic capture and independent recollection from the selected Hindsight bank passed in both headless exec and daemon-backed interactive resume/queue paths.", + "limitations": [ + "Two invented canaries and their record budgets are explicitly synthetic, not project policy, market data or trading acceptance.", + "This is supported native command/API execution with synthetic inputs and independent observation, not an executed upstream Docker or Cargo test suite.", + "Headless exec and daemon-backed TUI are distinct paths; each has its own fresh provider-backed observations below.", + "Knowledge-page search completed but did not contain either canary. Native Hindsight reflect supplied the correct values; page population or cron refresh is not qualified here.", + "Backend seed/survey completion was not established. Native status reported synced=false with active operations; the coordinator separately owns seed-job recovery.", + "Native model token usage excludes Hindsight backend extraction/reflection usage. Backend usage and monetary cost are unknown.", + "No production-quality or token-efficiency comparison is claimed, and no unrelated session or authentication store was read." + ], + "path": "evidence/receipts/codex-01593-hindsight-native-memory-20261001.json" + }, + { + "id": "codex-01593-native-queue-20261001", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "Fresh provider-backed native queue delivery succeeded while the owned daemon-backed thread was idle, while a preceding turn was busy, and after its TUI disconnected and resumed. Three official Hindsight hook definitions were individually trusted through the native UI.", + "limitations": [ + "Synthetic messaging inputs qualify these native operations, not production task quality or the whole ecosystem.", + "No upstream Cargo test suite was run; upstream test sources were reviewed and native commands were exercised.", + "No daemon restart was attempted during live qualification, and no unrelated session was inspected or interrupted.", + "Queue delivery to a concurrently running embedded receiver, cross-family bridge delivery, cross-account isolation, remote hosts, and Hindsight retrieval/retention are outside this receipt.", + "Hindsight capture remained disabled during hook trust. Hook trust is not memory acceptance.", + "Provider monetary cost is unknown. Native usage counters do not establish improvement against another configuration." + ], + "path": "evidence/receipts/codex-01593-native-queue-20261001.json" + }, + { + "id": "codex-desktop-live-20260920", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", "context-mode", + "jcodemunch-mcp", "serena", - "rtk" + "ai-memory", + "socraticode", + "rtk", + "headroom", + "qmd", + "loki", + "prometheus" ], - "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", + "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", "limitations": [ - "Earlier Serena/RTK run uses its original CLI version.", - "PreCompact was not induced; current Desktop catalog is distinct from child native clients." - ] + "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", + "Tools without native savings ledgers remain unavailable, not zero.", + "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", + "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", + "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", + "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", + "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", + "No fresh Prometheus turn sample in the selected window; no three-way observation join." + ], + "path": "evidence/receipts/codex-desktop-live-20260920.json" }, { - "id": "runtime-tools", - "path": "evidence/receipts/runtime-tools.json", + "id": "codex-session-environment-20260920", "kind": "native_cli_e2e", "component_ids": [ - "gitleaks", - "sandbox-runtime" + "codex", + "context-mode", + "jcodemunch-mcp", + "serena", + "ai-memory", + "socraticode" ], - "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", + "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", "limitations": [ - "No claim of full security certification.", - "Sandbox network denial configured but not separately exercised." - ] + "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", + "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", + "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", + "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", + "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", + "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", + "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." + ], + "path": "evidence/receipts/codex-session-environment-20260920.json" }, { - "id": "artifact-reductions", - "path": "evidence/receipts/artifact-reductions.json", + "id": "codex-shell-snapshot-cleanup-20260930", "kind": "artifact_measurement", "component_ids": [ - "rtk", - "socraticode", - "openresearch", - "context-mode" + "codex" ], - "claim": "Recorded exact selected-text reductions, distinct from model usage.", + "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", "limitations": [ - "Lossy selections compare retained text to full-file/paper counterfactuals.", - "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." - ] + "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", + "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", + "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", + "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." + ], + "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" }, { "id": "component-history", @@ -564,61 +837,116 @@ ] }, { - "id": "native-cli-gaps", - "path": "evidence/receipts/native-cli-gaps.json", + "id": "cross-family-review-terminal-lane-20260930", "kind": "native_model_e2e", "component_ids": [ - "qmd", - "codebase-memory-mcp", - "agent-browser" + "codex", + "omniroute", + "claude-code" ], - "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", + "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", "limitations": [ - "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", - "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." - ] + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", + "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", + "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", + "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", + "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", + "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", + "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." + ], + "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" }, { - "id": "worktrunk-list", - "path": "evidence/receipts/worktrunk-list.json", + "id": "current-session-observation-20260920", "kind": "native_cli_e2e", "component_ids": [ - "worktrunk" + "agentsview", + "ai-memory", + "alertmanager", + "ccusage", + "claude-hud", + "context-mode", + "grafana", + "headroom", + "jcodemunch-mcp", + "loki", + "mcporter", + "ntfy", + "opentelemetry-collector-contrib", + "otel-tui", + "prometheus", + "rtk", + "serena", + "socraticode" ], - "claim": "Native wt list enumerated the actual publication worktree set.", + "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", "limitations": [ - "Model-free repository inventory, not multi-agent correctness." - ] + "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", + "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", + "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", + "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", + "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", + "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", + "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", + "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." + ], + "path": "evidence/receipts/current-session-observation-20260920.json" }, { - "id": "desktop-direct-rag", - "kind": "native_model_e2e", + "id": "dashboard-gap-resolution-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "socraticode", - "qdrant", - "vllm", - "ai-memory" + "ai-memory", + "codex", + "claude-code", + "agentsview", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo", + "vllm" ], - "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", + "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", "limitations": [ - "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", - "No whole-task provider usage/savings attribution is claimed." + "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", + "Fresh PreCompact event and active Desktop session end remain unforced.", + "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", + "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", + "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", + "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." ], - "path": "evidence/receipts/desktop-direct-rag.json" + "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" }, { - "id": "vllm-compatibility", - "kind": "compatibility_attempt", + "id": "dashboard-render-e2e-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "vllm", - "socraticode" + "ai-memory", + "qdrant", + "socraticode", + "serena", + "agentsview", + "dagu", + "omniroute", + "agent-browser", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo" ], - "claim": "Latest vLLM0.29.0 native install succeeded but GPU startup failed on WSL; publisher-validated0.25.0 restored and direct retrieval passed.", + "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", "limitations": [ - "This is a host-specific failure, not a claim0.29is universally unusable.", - "The resolver success does not establish GPU/runtime compatibility." + "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", + "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", + "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", + "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", + "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", + "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", + "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." ], - "path": "evidence/receipts/vllm-compatibility.json" + "path": "evidence/receipts/dashboard-render-e2e-20260921.json" }, { "id": "desktop-cli-workflows", @@ -637,72 +965,20 @@ "path": "evidence/receipts/desktop-cli-workflows.json" }, { - "id": "portable-cli-artifacts", - "kind": "native_cli_e2e", - "component_ids": [ - "shellcheck", - "difftastic", - "markitdown", - "ast-grep", - "toon", - "repomix" - ], - "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", - "limitations": [ - "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", - "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." - ], - "path": "evidence/receipts/portable-cli-artifacts.json" - }, - { - "id": "native-observability", - "kind": "native_cli_e2e", - "component_ids": [ - "codex", - "claude-code", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana", - "alertmanager", - "ntfy" - ], - "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", - "limitations": [ - "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", - "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", - "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", - "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", - "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", - "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." - ], - "path": "observability/receipt.json" - }, - { - "id": "native-observability-followup", + "id": "desktop-direct-rag", "kind": "native_model_e2e", "component_ids": [ - "codex", - "context-mode", - "ai-memory", "socraticode", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana" + "qdrant", + "vllm", + "ai-memory" ], - "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", + "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", "limitations": [ - "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", - "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", - "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", - "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", - "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", - "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." + "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", + "No whole-task provider usage/savings attribution is claimed." ], - "path": "observability/followup-receipt.json" + "path": "evidence/receipts/desktop-direct-rag.json" }, { "id": "desktop-restart-acceptance", @@ -730,817 +1006,746 @@ "path": "observability/restart-receipt.json" }, { - "id": "sec-financial-data-20260919", - "kind": "compatibility_attempt", + "id": "env-freshness-wsl-ubuntu-main-20260924", + "kind": "artifact_measurement", "component_ids": [ - "duckdb" + "nautilus-trader", + "alpaca-py", + "duckdb", + "pandas", + "edgartools", + "exchange-calendars", + "vllm" ], - "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", + "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", "limitations": [ - "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", - "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", - "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", - "Current API snapshots do not reconstruct historical point-in-time knowledge.", - "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", - "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." + "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", + "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", + "One host; each PC publishes its own report under the same schema.", + "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." ], - "path": "blueprints/us-equities/financial-data/receipt.json" + "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" }, { - "id": "restic-local-public-reference-20260919", + "id": "exchange-calendars-native-check-20260922", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "exchange-calendars" ], - "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", + "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", "limitations": [ - "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", - "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", - "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", - "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", - "Credential loss recovery requires separately approved secure key escrow." + "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", + "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", + "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", + "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", + "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." ], - "path": "blueprints/us-equities/hosting/backup/receipt.json" + "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" }, { - "id": "native-research-runtime-20260919", - "kind": "native_model_e2e", + "id": "foundation-catalog-ui-20260920", + "kind": "artifact_measurement", "component_ids": [ - "claude-code", - "dagu", - "lean", - "duckdb", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "agent-browser" ], - "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", + "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", "limitations": [ - "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", - "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", - "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", - "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", - "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", - "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", - "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", - "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." + "Source pin/publication URLs pending parent final source commit and regeneration.", + "No provider/broker execution or broad regression rerun performed.", + "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." ], - "path": "blueprints/us-equities/research-runtime/receipt.json" + "path": "evidence/receipts/foundation-catalog-ui-20260920.json" }, { - "path": "blueprints/us-equities/state-recovery/memory/receipt.json", - "id": "ai-memory-native-state-recovery-20260919", + "id": "foundation-closure-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "restic" + "claude-code", + "codex", + "affaan-m/ECC", + "context-mode" ], - "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", + "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", "limitations": [ - "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", - "38 pages table rows include historical versions, not 38 current pages.", - "Native backup excludes raw/, model caches, logs and external native session transcripts.", - "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", - "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", - "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." - ] - }, - { - "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", - "id": "qdrant-native-state-recovery-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "qdrant", - "restic" + "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", + "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", + "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", + "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", + "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", + "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", + "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", + "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." ], - "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", - "limitations": [ - "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", - "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", - "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", - "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", - "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." - ] + "path": "evidence/receipts/foundation-closure-20260921.json" }, { - "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", - "id": "qmd-bm25-retrieval-20260919", - "kind": "native_cli_e2e", + "id": "foundation-convergence-20260921", + "kind": "native_model_e2e", "component_ids": [ - "qmd" + "codex", + "claude-code", + "context-mode", + "rtk", + "headroom", + "toon" ], - "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", + "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", "limitations": [ - "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", - "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", - "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", - "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", - "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", - "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", - "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", - "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", - "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", - "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", - "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." - ] + "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", + "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", + "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", + "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", + "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." + ], + "path": "evidence/receipts/foundation-convergence-20260921.json" }, { - "path": "blueprints/us-equities/convergence-review/receipt.json", - "id": "native-claude-convergence-review-20260919", - "kind": "native_model_e2e", + "id": "foundation-native-20260920", + "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "qmd", + "qdrant", + "vllm", + "socraticode", + "serena", + "context-mode", + "jcodemunch-mcp", + "rtk", + "headroom", + "repomix", + "toon", + "codex", "claude-code", "opentelemetry-collector-contrib", "prometheus", - "loki" + "loki", + "omniroute" ], - "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", + "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", "limitations": [ - "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", - "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", - "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", - "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", - "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", - "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." - ] - }, - { - "path": "blueprints/us-equities/supply-chain/receipt.json", - "id": "syft-sdk-inventory-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "syft" + "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", + "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", + "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", + "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", + "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", + "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", + "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", + "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", + "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." ], - "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", - "limitations": [ - "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", - "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", - "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", - "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", - "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", - "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", - "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", - "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", - "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", - "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." - ] + "path": "evidence/receipts/foundation-native-20260920.json" }, { - "path": "adoption/receipt.json", - "id": "portable-sdk-adoption-20260919", - "kind": "native_cli_e2e", + "id": "foundation-rd-20260921", + "kind": "native_model_e2e", "component_ids": [ + "claude-code", "codex", - "duckdb" + "codex-for-claude", + "qmd" ], - "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", + "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", "limitations": [ - "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", - "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", - "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", - "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", - "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", - "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", - "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." - ] + "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", + "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", + "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", + "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", + "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." + ], + "path": "evidence/receipts/foundation-rd-20260921.json" }, { - "path": "adoption/paired/receipt.json", - "id": "native-paired-adoption-20260919", - "kind": "native_model_e2e", + "id": "full-stack-convergence-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "codex", + "agent-browser", + "agentsview", + "ai-memory", + "ccusage", "claude-code", - "duckdb", + "codex", + "context-mode", "dagu", - "lean", - "opentelemetry-collector-contrib", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "loki", + "omniroute", + "openresearch", "prometheus", - "loki" + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "toon", + "vllm", + "worktrunk" ], - "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", + "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", "limitations": [ - "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", - "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", - "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", - "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", - "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", - "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", - "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", - "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." - ] + "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", + "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", + "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", + "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", + "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", + "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", + "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", + "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." + ], + "path": "evidence/receipts/full-stack-convergence-20260921.json" }, { - "path": "blueprints/us-equities/architecture/receipt.json", - "id": "native-architecture-review-20260919", - "kind": "native_model_e2e", + "id": "github-automation-newpc-20260922", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "claude-code" ], - "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", + "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", "limitations": [ - "The models reviewed supplied evidence and did not independently inspect primary sources. Their critiques are advisory and were adjudicated; agreement does not establish correctness or trading performance.", - "This is a native architecture-review task, not another LEAN/Dagu backtest run, full MCP/RAG acceptance, broker integration, hosted deployment or universal SOTA census.", - "The44,214 combined native reported tokens exclude coordinator and source-research workers. They are usage, not causal tokens saved or a billing measurement across identical tokenizers.", - "Astra cached input is included in input and reasoning output in output. Claude thinking is included in output; duplicate per-model/iteration/stream views are not added again.", - "Native model selection and terminal usage are not independent provider attestation. Full account/session/process identifiers and raw event streams remain private.", - "The offline Alpaca observation detects synthetic field loss only; no client/network/order, valid advanced-order fixture, entitlement or execution adapter was tested.", - "New machines must reproduce their own selected native profile and sign-in; these local WSL receipts do not establish macOS or unattended-host acceptance." - ] + "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", + "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", + "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", + "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", + "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", + "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." + ], + "path": "evidence/receipts/github-automation-newpc-20260922.json" }, { - "path": "blueprints/us-equities/execution-realism/receipt.json", - "id": "native-lean-execution-sensitivity-20260919", + "id": "gitleaks-macos-memory-bound-20260924", "kind": "native_cli_e2e", "component_ids": [ - "lean" + "gitleaks" ], - "claim": "Native LEAN completed three fixed-order historical simulations with distinct upstream fee/slippage assumptions; serialized fill cash reconciles to native rounded summaries and all mounted engine/data input hashes remained unchanged.", + "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", "limitations": [ - "Exact arithmetic over serialized native event values; exported five-decimal fill prices and cent-rounded summaries do not expose all internal precision.", - "Illustrative fees and slippage are assumptions, not calibrated market or Alpaca execution observations.", - "Full-quantity market fills remain assumed; participation, partial fills, impact, latency, queueing, cancellation and broker reconciliation remain unaccepted.", - "Bundled five-day data do not establish PIT/corporate-action/universe quality or investment returns.", - "The normal dotnet build/restore route timed out twice; only the installed native C# compiler route is accepted.", - "Mounted input hashes do not prove every file was read; successful request logs list 13 paths plus possible separately read metadata.", - "No broker connection, account entitlement, deployment, strategy promotion, provider usage or token saving is established." - ] + "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", + "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", + "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", + "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", + "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", + "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", + "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." + ], + "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" }, { - "path": "blueprints/us-equities/point-in-time/receipt.json", - "id": "native-point-in-time-contract-20260919", - "kind": "native_cli_e2e", + "id": "guard-k3-verification-20260930", + "kind": "artifact_measurement", "component_ids": [ - "duckdb" + "claude-code" ], - "claim": "DuckDB 1.5.5 materialized and selected a synthetic temporal snapshot; late revisions, universe state, feed/adjustment scope and pinned snapshot integrity were exercised through native Python SDK/SQL commands.", + "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", "limitations": [ - "Synthetic observations only; no entitled or accepted market dataset, SEC download, vendor API, model or broker call occurred.", - "Availability timestamps and evidence references are declarations, not independently authenticated vendor publication evidence.", - "Local snapshot ingestion time is separate from source publication and original capture time.", - "Scope is realized observations and effective universe state; it does not model every corporate action, event forecast, symbol mapping or delisting history.", - "Hash checks require the caller to retain a trusted manifest digest independently; local file permissions are not immutable storage or off-host recovery." - ] + "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", + "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", + "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", + "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", "limitations": [ - "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", - "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", - "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", - "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", - "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", - "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", - "No broker, trading strategy, actual feed or net token-saving acceptance." - ] + "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", + "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", + "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", + "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", + "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", + "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", + "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", + "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." + ], + "path": "evidence/receipts/headroom-039-qualification-20260925.json" }, { - "id": "native-worker-supervision-20260919", - "path": "blueprints/us-equities/worker-supervision/receipt.json", + "id": "hf-memory-models-20260921", "kind": "native_cli_e2e", "component_ids": [ - "systemd" + "ai-memory", + "socraticode", + "vllm", + "grafana" ], - "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", + "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", "limitations": [ - "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", - "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", - "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", - "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", - "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", - "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", - "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", - "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", - "Hashes bind retained evidence bytes; they do not independently attest the execution.", - "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", - "Configured resource limits were inspected, not saturation-tested." - ] + "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", + "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", + "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", + "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", + "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", + "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." + ], + "path": "evidence/receipts/hf-memory-models-20260921.json" }, { - "id": "native-grand-dashboard-20260919", - "path": "observability/grand-dashboard/receipt.json", + "id": "jcodemunch-1108327-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "grafana", - "loki", - "prometheus", - "dagu" + "jcodemunch-mcp" ], - "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", "limitations": [ - "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", - "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", - "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", - "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", - "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", - "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", - "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", - "Recorded worker/decision state is not a live process registry.", - "No broker execution, exact-once accounting, universal coverage or net token savings.", - "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." - ] + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" }, { - "id": "native-convergence-review-20260919", - "path": "blueprints/us-equities/convergence-program/review-receipt.json", + "id": "local-inference-c2-serving-switch-20260926", "kind": "native_model_e2e", "component_ids": [ - "codex", - "claude-code", - "dagu" + "llama-cpp" ], - "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", "limitations": [ - "Models checked packet/report consistency, not original sources or underlying native artifacts.", - "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", - "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", - "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", - "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", - "Usage belongs to this pair only; not whole-goal consumption or causal savings." - ] - }, - { - "id": "native-historical-leverage-stress-20260919", - "path": "blueprints/us-equities/historical-simulation/receipt.json", - "kind": "native_cli_e2e", - "component_ids": [ - "lean" + "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", + "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", + "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", + "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", + "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", + "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", + "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." ], - "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", - "limitations": [ - "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", - "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", - "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", - "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", - "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", - "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", - "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", - "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", - "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", - "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", - "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", - "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", - "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", - "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", - "No paper/live orders or automatic promotion." - ] + "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" }, { - "id": "native-chronological-controls-20260919", + "id": "login-shell-contract-20260929", "kind": "native_cli_e2e", "component_ids": [ - "skfolio", - "pandas", - "lean" + "claude-code", + "codex" ], - "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", "limitations": [ - "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", - "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", - "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", - "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", - "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", - "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", - "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", - "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", + "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", + "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", + "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", + "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", + "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", + "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", + "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", + "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." ], - "path": "blueprints/us-equities/research-evaluation/receipt.json" + "path": "evidence/receipts/login-shell-contract-20260929.json" }, { - "id": "native-edgartools-catalyst-20260919", + "id": "mac-memory-patch-20260920", + "path": "evidence/receipts/mac-memory-patch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "ai-memory" ], - "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", + "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", "limitations": [ - "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", - "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", - "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", - "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", - "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", - "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", - "Native text/byte counts are not provider token savings.", - "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." - ], - "path": "blueprints/us-equities/catalyst-provenance/receipt.json" + "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", + "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", + "No provider or whole-task token savings measurement." + ] }, { - "id": "native-simulation-research-dashboard-20260919", + "id": "mac-native-application-migration-20260920", "kind": "native_cli_e2e", "component_ids": [ - "grafana", - "loki" + "fastapi", + "postgresql" ], - "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", + "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", "limitations": [ - "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", - "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", - "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", - "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", - "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", - "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", - "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." + "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", + "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", + "No model calls; whole-task provider usage unknown." ], - "path": "blueprints/us-equities/simulation-research/receipt.json" + "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" }, { - "id": "native-sec-access-resolution-20260919", + "id": "mac-native-container-storage-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "apple-container", + "postgresql" ], - "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", + "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", "limitations": [ - "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", - "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", - "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", - "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", - "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", - "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", - "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", - "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." + "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", + "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", + "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", + "Images remain cached; only owned empty failed container, test database container and test volume were removed.", + "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." ], - "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" + "path": "blueprints/convergence-practice/container-storage/receipt.json" }, { - "id": "native-sec-new-host-20260924", + "id": "mac-native-document-ingestion-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "poppler" ], - "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", + "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", "limitations": [ - "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", - "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", - "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", - "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", - "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", - "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", - "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." + "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", + "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", + "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", + "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", + "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." ], - "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", - "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" + "path": "blueprints/convergence-practice/document-ingestion/receipt.json" }, { - "id": "sec-catalyst-dataset-native-20260920", + "id": "markitdown-018-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "markitdown" ], - "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", "limitations": [ - "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", - "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", - "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", - "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", - "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", - "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", - "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", - "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", - "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." + "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", + "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", + "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", + "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", + "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", + "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", + "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", + "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." ], - "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" + "path": "evidence/receipts/markitdown-018-qualification-20260925.json" }, { - "id": "native-corporate-actions-20260920", + "id": "mcp-inspector-280-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "lean" + "mcp-inspector" ], - "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", "limitations": [ - "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", - "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", - "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", - "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", - "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", - "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." + "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", + "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", + "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", + "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", + "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." ], - "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" + "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" }, { - "id": "native-alpaca-historical-20260920", + "id": "mcp-inspector-290-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "lean" + "mcp-inspector" ], - "claim": "Native Alpaca-py0.44.0 GET transport acquired25 AAPL SIP/raw daily bars and2 corporate actions over5 HTTP200 pages. Terminal pagination and private artifacts verified;25 raw closes and both numeric action values match the frozen LEAN probe. Dividend currency and original historical availability remain unestablished.", + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", "limitations": [ - "One retrospective AAPL sample only; no all-equities universe, delisting completeness, intraday mover coverage or original point-in-time availability.", - "Cash amount and split ratio numerically match; missing dividend currency prevents fully qualified cash-unit reconciliation. No holdings, dividend cash posting, total return, financing or strategy performance modeled.", - "Historical SIP response does not establish real-time access, unlimited history, Elite margin/order entitlement or broker execution. No orders or account resets.", - "Five bounded authenticated GET requests; no IEX downgrade, retries after access refusal, paid data or SDK upgrade.", - "Prior LEAN direct probe passed, but its separate upstream NUnit host aborted before executing tests; this wave does not repair or supersede that failure.", - "No new model task or whole-task causal token-savings experiment in this wave." + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "blueprints/us-equities/authenticated-data/native-receipt.json" + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" }, { - "id": "native-security-identity-20260920", + "id": "mcporter-0141-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "duckdb" + "mcporter" ], - "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", "limitations": [ - "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", - "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", - "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", - "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", - "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", - "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", - "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", - "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." + "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", + "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", + "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", + "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", + "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", + "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." ], - "path": "blueprints/us-equities/identity-readiness/native-receipt.json" + "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" }, { - "id": "token-practice-artifacts-20260920", - "kind": "artifact_measurement", + "id": "mcporter-0142-qualification-20261003", + "kind": "compatibility_attempt", "component_ids": [ - "agent-browser", - "ast-grep", - "edgartools", - "markitdown", - "qmd", - "repomix", - "rtk", - "socraticode", - "syft", - "toon" + "mcporter" ], - "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", "limitations": [ - "Counts describe retained original host artifacts. This public aggregate omits the private originals; CI validates aggregate integrity, not an independent recount of those private bytes.", - "Most pairs select or transform information lossily. Shorter output does not establish equivalent answer quality or lower complete task usage.", - "Pairs overlap, including shared HTML sources and retrieval services. Do not sum them or attribute the same difference independently to dependencies.", - "Exact provider savings remain null. Tokenizer counts are not provider billing, subscription savings or causal per-repository effects.", - "The Syft table preserves checked package name/version/type columns while omitting other SBOM metadata; this is a view selection, not equivalent full SBOM content." + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/token-practice-artifacts-20260920.json" + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" }, { - "id": "token-practice-native-pairs-20260920", - "kind": "native_model_e2e", + "id": "mcporter-0142-qualification-20261004", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode" + "mcporter" ], - "claim": "Four native coding trials passed shared visible, hidden and file-scope acceptance gates; one fixed-order Context Mode non-use/explicit-use pair per client produced mixed observed task-usage differences.", + "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed mcporter 0.14.2 and returned version 0.14.2 with exit 0. Registry provenance matched openclaw/mcporter release.yml at v0.14.2, and a scratch npm audit verified 43 registry signatures and 15 attestations. Ad-hoc stdio jcodemunch session statistics and context-mode ctx_stats calls returned exit 0. Configured-daemon calls failed on a stale rendezvous and were not recovered. This receipt republishes sanitized historical host observations, not a new host execution.", "limitations": [ - "One baseline-first pair per client is not randomized, repeated or cache-matched. Native cache warmth and plugin tool availability were not fully controlled.", - "Observed differences are not causal per-repository savings, a whole-stack saving rate or evidence that either model is generally better.", - "Codex cached input and reasoning output are subsets. Claude ordinary input, cache creation, cache reads and output are separate categories; thinking is included in output.", - "Final cumulative session counters are used once. Coordinator, reviewers, audit tooling and report production are outside these four task totals.", - "Billed cost is unknown. Token counts and cached reads do not establish subscription charges or money saved.", - "Private transcripts, session identifiers and commands are not published. Hashes bind retained evidence, not independent attestation of provider execution." + "No macOS execution and no upstream test suite run. The npm tarball hash is artifact evidence and does not pin the transitive dependency tree or rolldown platform binding.", + "Configured-server list/call failures are retained. The stale daemon was not recovered and keep-alive transport acceptance is not claimed; dist/daemon/client.js was recorded byte-identical across 0.14.1 and 0.14.2.", + "npm audit signatures --global failed with EAUDITGLOBAL (exit 1); only the later scratch-project audit succeeded. The ad-hoc MCP statistics are self-reports, not provider counts or savings.", + "The Mac keeps its separately qualified MCPorter 0.13.13 pin until a Mac qualifies 0.14.2. The platform-independent tarball artifact check is not Mac execution or Mac qualification." ], - "path": "evidence/receipts/token-practice-native-pairs-20260920.json" + "path": "evidence/receipts/mcporter-0142-qualification-20261004.json" }, { - "id": "token-practice-coverage-20260920", - "kind": "historical_inventory", + "id": "memory-landscape-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", "ai-memory", - "ast-grep", - "ccusage", - "claude-code", - "claude-hud", - "codebase-memory-mcp", "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "davila7/claude-code-templates", - "difftastic", - "gitleaks", - "headroom", - "huggingface-hub-native", - "markitdown", - "mcp-inspector", - "mcporter", - "openresearch", - "playwright-cli", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "rtk", - "sandbox-runtime", - "serena", - "shanraisshan/claude-code-best-practice", - "shellcheck", - "socraticode", - "toon", - "vllm", - "worktrunk", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana", - "alertmanager", - "ntfy", - "duckdb", - "restic", - "dagu", - "lean", - "syft", - "alpaca-py", - "systemd", - "pandas", - "skfolio", - "edgartools" + "claude-code" ], - "claim": "A dated 52-component audit distinguishes native artifact/task pairs, bounded functionality, current queries, configuration validation, historical-only evidence, host failures and non-executable guidance.", + "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", "limitations": [ - "This historical coverage inventory records the dated audit only; it is not 52 fresh end-to-end passes or new-host acceptance.", - "Seventy captured operations include four retained failed attempts; successful corrections do not erase the initial OTel environment and Dagu environment-filter failures.", - "Two Linux Playwright invocations failed with ENOENT; the Windows installation does not establish Linux availability.", - "Guidance repositories are not executable tools. Current state, backup and cache queries or configuration validation do not prove complete lifecycle behavior.", - "Native RTK, TOON, Context Mode and Headroom counters have different scopes and estimators. They cannot be summed with artifact differences or provider usage.", - "Exact causal per-component provider saving values remain unknown rather than zero." + "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", + "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", + "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", + "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", + "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", + "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", + "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", + "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", + "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." ], - "path": "evidence/receipts/token-practice-coverage-20260920.json" + "path": "evidence/receipts/memory-landscape-20260921.json" }, { - "id": "token-practice-catalog-toon-20260920", - "kind": "artifact_measurement", + "id": "memory-landscape-lifecycle-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "toon" + "ai-memory", + "socraticode", + "qdrant", + "vllm", + "serena", + "qmd", + "codex", + "claude-code" ], - "claim": "A reversible full-catalog TOON conversion had a smaller native heuristic estimate but a larger exact token count than compact JSON; the guard retained compact JSON.", + "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", "limitations": [ - "This is one later artifact comparison, separate from the ten original token-practice pairs. Do not sum it with cumulative native counters or provider usage.", - "Native tokenx estimates and exact o200k_base counts use different estimators and JSON representations; they are not interchangeable savings metrics.", - "The public aggregate omits the private captured output files. Published hashes establish identity, not independent CI recount of the private bytes.", - "Exact provider savings remain unknown. The successful strict round trip establishes data equivalence for this conversion only.", - "Command templates replace host-specific source and output locations with portable placeholders." + "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", + "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", + "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", + "Exact memory session/lifetime savings are not returned and remain null.", + "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." ], - "path": "evidence/receipts/token-practice-catalog-toon-20260920.json" + "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" }, { - "id": "token-practice-native-counters-20260920", - "kind": "historical_inventory", + "id": "memory-lifecycle-probe-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "context-mode", - "headroom", - "rtk", - "toon" + "ai-memory" ], - "claim": "Dated native counter snapshots retain RTK output, the capped Headroom ledger result, per-conversion TOON estimates and three separate Context Mode runtime scopes without treating them as exact provider savings.", + "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", "limitations": [ - "This historical snapshot is a dated report only, not a live dashboard or new-host execution acceptance.", - "RTK counters estimate retained command history and default to 90-day retention; selected-project values are a subset of the global result. Do not add snapshots or assume a forever ledger.", - "Headroom 0.37.0 caps the report at 30 days despite naming a field lifetime; zero ledger calls do not establish zero offline guard use or provider usage.", - "Context Mode uses byte/event heuristics and separate runtime state. Illustrative cost estimates are not bills, and persisted files must not be added to a direct MCP connection snapshot.", - "TOON statistics are tokenx heuristics for one conversion, not a native cumulative ledger. The compact-JSON exact counterexample is represented by the separate catalog receipt and must not be counted twice.", - "Raw private files, host paths, full command outputs and session identifiers are omitted. Sanitized fields and aggregate hashes do not independently attest provider activity." + "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", + "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", + "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", + "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", + "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", + "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." ], - "path": "evidence/receipts/token-practice-native-counters-20260920.json" + "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" }, { - "id": "token-practice-gap-followup-20260920", + "id": "native-ai-memory-maintenance-20260920", + "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "playwright-cli", - "agentsview", - "ccusage", - "claude-hud", - "openresearch", - "codex-for-claude", - "codex" + "ai-memory" ], - "claim": "Six separately scoped follow-ups exercised a pinned Linux browser fixture, a single-session archive query, offline usage parsing, a synthetic HUD renderer, public-paper retrieval and one read-only native bridge backend task.", + "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", "limitations": [ - "These later bounded results do not turn the earlier dated 52-component audit into 52 full end-to-end passes. Individual scopes below remain authoritative.", - "Three failed attempts remain: file-protocol navigation rejection, implicit archive auto-start message failure and archive restart-lock failure. Successful recovery does not erase them.", - "Playwright used an existing Chrome installation and a fixture-only loopback HTTP endpoint. Its Playwright dependencies are alpha builds; no default browser download or arbitrary-site acceptance was tested.", - "The archive was restricted to one explicit project session. Full private transcripts, authentication material and session identifiers are omitted; automatic archive discovery did not pass.", - "HUD acceptance is a synthetic renderer fixture, not a live interactive account display. OpenResearch acceptance is public-paper retrieval, not an agent research workflow or research-quality assessment.", - "The ccusage reports overlap and must not be added. Upstream parser categories and totals are not bills or a matched provider savings comparison. The first date-only query returned an empty window.", - "The bridge trial is additional observed provider usage, not savings. It used one backend task without an outer Claude interaction or matched baseline; cached input is a subset of native input.", - "Tracked source remained unchanged; native MCP startup created untracked metadata. All owned temporary services were stopped. Public aggregate hashes bind retained evidence but do not independently reproduce private logs." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", + "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", + "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", + "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", + "Forward-only migrations may require restoring the retained private backup to downgrade." ], - "path": "evidence/receipts/token-practice-gap-followup-20260920.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-lifecycle-sample-20260920", + "id": "native-alpaca-historical-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "alpaca-py", + "lean" ], - "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", + "claim": "Native Alpaca-py0.44.0 GET transport acquired25 AAPL SIP/raw daily bars and2 corporate actions over5 HTTP200 pages. Terminal pagination and private artifacts verified;25 raw closes and both numeric action values match the frozen LEAN probe. Dividend currency and original historical availability remain unestablished.", "limitations": [ - "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", - "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", - "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", - "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", - "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", - "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." + "One retrospective AAPL sample only; no all-equities universe, delisting completeness, intraday mover coverage or original point-in-time availability.", + "Cash amount and split ratio numerically match; missing dividend currency prevents fully qualified cash-unit reconciliation. No holdings, dividend cash posting, total return, financing or strategy performance modeled.", + "Historical SIP response does not establish real-time access, unlimited history, Elite margin/order entitlement or broker execution. No orders or account resets.", + "Five bounded authenticated GET requests; no IEX downgrade, retries after access refusal, paid data or SDK upgrade.", + "Prior LEAN direct probe passed, but its separate upstream NUnit host aborted before executing tests; this wave does not repair or supersede that failure.", + "No new model task or whole-task causal token-savings experiment in this wave." ], - "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" + "path": "blueprints/us-equities/authenticated-data/native-receipt.json" }, { - "id": "synthetic-catalyst-contract-20260920", + "id": "native-application-delivery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "nextjs", + "react", + "fastapi", + "postgresql" ], - "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", + "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", "limitations": [ - "Protocol thresholds are exploratory choices, not fitted or proven optimal.", - "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", - "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", - "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", - "No provider calls, broker orders, new model turn or net token-savings measurement." + "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", + "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", + "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", + "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", + "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", + "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", + "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", + "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." ], - "path": "blueprints/us-equities/catalyst-experiment/receipt.json" + "path": "blueprints/convergence-practice/application-delivery/receipt.json" }, { - "id": "native-research-efficiency-20260920", + "path": "blueprints/us-equities/architecture/receipt.json", + "id": "native-architecture-review-20260919", "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki" + ], + "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", + "limitations": [ + "The models reviewed supplied evidence and did not independently inspect primary sources. Their critiques are advisory and were adjudicated; agreement does not establish correctness or trading performance.", + "This is a native architecture-review task, not another LEAN/Dagu backtest run, full MCP/RAG acceptance, broker integration, hosted deployment or universal SOTA census.", + "The44,214 combined native reported tokens exclude coordinator and source-research workers. They are usage, not causal tokens saved or a billing measurement across identical tokenizers.", + "Astra cached input is included in input and reasoning output in output. Claude thinking is included in output; duplicate per-model/iteration/stream views are not added again.", + "Native model selection and terminal usage are not independent provider attestation. Full account/session/process identifiers and raw event streams remain private.", + "The offline Alpaca observation detects synthetic field loss only; no client/network/order, valid advanced-order fixture, entitlement or execution adapter was tested.", + "New machines must reproduce their own selected native profile and sign-in; these local WSL receipts do not establish macOS or unattended-host acceptance." + ] + }, + { + "id": "native-catalog-retrieval-20260920", + "kind": "native_cli_e2e", + "component_ids": [ "qmd" ], - "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", + "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", "limitations": [ - "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", - "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", - "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", - "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", - "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", - "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", - "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", - "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", - "Local supervision does not prove provider-side cancellation; no run timed out.", - "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." + "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", + "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", + "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", + "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." ], - "path": "blueprints/us-equities/research-efficiency/native-receipt.json" + "path": "evidence/receipts/native-catalog-retrieval-20260920.json" + }, + { + "id": "native-chronological-controls-20260919", + "kind": "native_cli_e2e", + "component_ids": [ + "skfolio", + "pandas", + "lean" + ], + "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", + "limitations": [ + "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", + "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", + "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", + "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", + "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", + "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", + "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", + "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." + ], + "path": "blueprints/us-equities/research-evaluation/receipt.json" }, { "id": "native-ci-security-20260920", @@ -1572,88 +1777,92 @@ "path": "blueprints/convergence-practice/native-worker/receipt.json" }, { - "id": "upstream-native-tools-20260920", - "path": "evidence/receipts/upstream-native-tools-20260920.json", - "kind": "native_cli_e2e", + "path": "blueprints/us-equities/convergence-review/receipt.json", + "id": "native-claude-convergence-review-20260919", + "kind": "native_model_e2e", "component_ids": [ - "beads", - "skills-ref", - "otel-tui" + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Three supplemental upstream tools installed on the source Linux/WSL host: Beads persisted task claims and dependency transitions, skills-ref validated and rendered a selected skill, and otel-tui ingested and displayed one synthetic loopback trace.", + "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "Bounded native CLI/TUI acceptance on Linux/WSL; no new native Codex or Claude provider task was run for these additions.", - "Beads used one owned Git fixture with embedded Dolt, explicit task scope, skipped agent-instruction generation and skipped hooks. It does not replace ai-memory.", - "skills-ref is upstream's reference/demo implementation; successful portable-format validation does not certify production client extensions or tool semantics.", - "otel-tui received one synthetic local trace; no production or native-provider telemetry session was evaluated and no persistent exporter was installed.", - "None of these three tools exposes a verified cumulative token-savings counter. Exact causal lifetime provider savings remain null.", - "Public command forms substitute portable variables for private host paths; private raw operation logs are not published." + "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", + "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", + "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", + "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", + "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", + "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." + ] + }, + { + "id": "native-claude-hud-interactive-20260920", + "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", + "kind": "compatibility_attempt", + "component_ids": [ + "claude-hud" ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", + "limitations": [ + "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", + "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", + "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." + ] }, { - "id": "native-ai-memory-maintenance-20260920", - "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", + "id": "native-claude-profile-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "claude-code", + "codex", + "affaan-m/ECC", + "context-mode", + "rtk" ], - "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", + "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", - "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", - "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", - "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", - "Forward-only migrations may require restoring the retained private backup to downgrade." + "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", + "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", + "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", + "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", + "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", + "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", + "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", + "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", + "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "evidence/receipts/native-claude-profile-20260920.json" }, { - "id": "native-linux-zizmor-20260920", - "path": "evidence/receipts/native-linux-zizmor-20260920.json", - "kind": "native_cli_e2e", + "id": "native-claude-session-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "zizmor" + "claude-code" ], - "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", + "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", - "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", - "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", - "No provider task was run and zizmor supplies no verified lifetime token-savings counter." + "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", + "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", + "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", + "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "evidence/receipts/native-claude-session-recovery-20260920.json" }, { - "id": "native-dagu-job-recovery-20260920", - "kind": "native_cli_e2e", + "id": "native-cli-gaps", + "path": "evidence/receipts/native-cli-gaps.json", + "kind": "native_model_e2e", "component_ids": [ - "dagu" + "qmd", + "codebase-memory-mcp", + "agent-browser" ], - "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", + "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", "limitations": [ - "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", - "Initial native schema failure and earlier Mac success are retained; no savings comparison." - ], - "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" + "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", + "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." + ] }, { "id": "native-codex-session-recovery-20260920", @@ -1670,708 +1879,845 @@ "path": "evidence/receipts/native-codex-session-recovery-20260920.json" }, { - "id": "native-gpu-patch-20260920", + "id": "native-context-memory", + "path": "evidence/receipts/native-context-memory.json", "kind": "native_model_e2e", "component_ids": [ - "llama-cpp" + "codex", + "claude-code", + "context-mode", + "serena", + "rtk" ], - "claim": "One pinned Qwen3.8-27B Q4_K_M local CUDA partial-offload repair passed independent source review and all12 original planner tests on WSL RTX4090.", + "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", "limitations": [ - "One visible fixture, one trial, configured32GPUlayers; exact layer placement count unavailable at native log verbosity.", - "Generation took179.191seconds near the180second cap. This is not an interactive default or frontier-model comparison.", - "Minimum whole-device sampled freeVRAM8223MiB includes other allocations; not an isolated process-peak benchmark.", - "Native model and archives were downloaded and hash-verified; archive attestations verified. CUDA licensing reviewed for local use, not redistribution.", - "No host recovery, concurrent serving, provider billing or whole-task savings qualification." - ], - "path": "evidence/receipts/native-gpu-patch-20260920.json" + "Earlier Serena/RTK run uses its original CLI version.", + "PreCompact was not induced; current Desktop catalog is distinct from child native clients." + ] }, { - "id": "native-claude-session-recovery-20260920", + "id": "native-convergence-review-20260919", + "path": "blueprints/us-equities/convergence-program/review-receipt.json", "kind": "native_model_e2e", "component_ids": [ - "claude-code" + "codex", + "claude-code", + "dagu" ], - "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", + "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", "limitations": [ - "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", - "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", - "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", - "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." - ], - "path": "evidence/receipts/native-claude-session-recovery-20260920.json" + "Models checked packet/report consistency, not original sources or underlying native artifacts.", + "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", + "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", + "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", + "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", + "Usage belongs to this pair only; not whole-goal consumption or causal savings." + ] }, { - "id": "token-native-retained-functional-20260920", - "path": "evidence/receipts/token-native-retained-functional-20260920.json", + "id": "native-corporate-actions-20260920", "kind": "native_cli_e2e", "component_ids": [ - "context-hub", - "headroom", - "mcp-inspector", - "promptfoo", - "worktrunk" + "lean" ], - "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", + "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", "limitations": [ - "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", - "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", - "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", - "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", - "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", - "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." - ] + "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", + "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", + "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", + "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", + "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", + "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." + ], + "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" }, { - "id": "native-jcodemunch-20260920", - "path": "evidence/receipts/native-jcodemunch-20260920.json", + "id": "native-dagu-job-recovery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "jcodemunch-mcp" + "dagu" ], - "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", + "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", "limitations": [ - "Single bounded code-reading task, not a native provider A/B trial.", - "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", - "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", - "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", - "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", - "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", - "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." - ] + "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", + "Initial native schema failure and earlier Mac success are retained; no savings comparison." + ], + "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" }, { - "id": "native-headroom-mcp-20260920", - "path": "evidence/receipts/native-headroom-mcp-20260920.json", + "id": "native-dagu-retry-tests-20260920", "kind": "native_cli_e2e", "component_ids": [ - "headroom" + "dagu" ], - "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", + "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", "limitations": [ - "Owned synthetic acceptance artifacts demonstrate artifact reduction, not lifetime production or provider-token savings", - "MCP summary is not a lossless replacement of the original; its exact full retrieval consumes the original token count", - "Upstream Headroom CLI has no compress subcommand; on-demand compression/retrieval is exposed through MCP or SDK", - "No automatic agent-traffic interception was configured", - "Global native upstream savings ledger remains0; isolated fixture ledger is not merged into it", - "No new provider task or automatic native-client traffic interception is established by this direct MCP fixture." - ] + "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", + "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", + "No broker/provider operations or token savings were measured.", + "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." + ], + "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" }, { - "id": "native-token-focus-clients-20260920", - "path": "evidence/receipts/native-token-focus-clients-20260920.json", - "kind": "native_model_e2e", + "id": "native-dashboard-access-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "jcodemunch-mcp" + "dagu", + "qdrant", + "agentsview", + "grafana", + "prometheus", + "ntfy", + "agent-browser", + "omniroute" ], - "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", + "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", "limitations": [ - "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", - "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", - "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", - "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", - "Raw private prompts, client streams, account identifiers and host paths are not published." - ] + "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", + "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", + "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", + "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", + "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", + "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", + "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." + ], + "path": "evidence/receipts/native-dashboard-access-20260921.json" }, { - "id": "native-sandbox-network-20260920", - "path": "evidence/receipts/native-sandbox-network-20260920.json", + "id": "native-dashboard-data-20260921", "kind": "native_cli_e2e", "component_ids": [ - "sandbox-runtime" + "ai-memory", + "socraticode", + "qmd", + "qdrant", + "agentsview", + "grafana", + "loki", + "rtk", + "context-mode", + "headroom", + "jcodemunch-mcp", + "promptfoo", + "serena", + "systemd" ], - "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", + "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", "limitations": [ - "HTTP proxy path tested on this Linux/WSL host", - "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", - "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", - "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." - ] + "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", + "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", + "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", + "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", + "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", + "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", + "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", + "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", + "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." + ], + "path": "evidence/receipts/native-dashboard-data-20260921.json" }, { - "id": "native-claude-hud-interactive-20260920", - "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", - "kind": "compatibility_attempt", + "id": "native-edgartools-catalyst-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "claude-hud" + "edgartools" ], - "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", + "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", "limitations": [ - "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", - "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", - "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." - ] + "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", + "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", + "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", + "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", + "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", + "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", + "Native text/byte counts are not provider token savings.", + "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." + ], + "path": "blueprints/us-equities/catalyst-provenance/receipt.json" }, { - "id": "native-application-delivery-20260920", + "id": "native-exact-nanosecond-replay-20260919", + "path": "blueprints/us-equities/nanosecond-replay/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "nextjs", - "react", - "fastapi", - "postgresql" - ], - "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", - "limitations": [ - "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", - "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", - "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", - "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", - "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", - "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", - "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", - "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." + "duckdb", + "pandas" ], - "path": "blueprints/convergence-practice/application-delivery/receipt.json" + "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", + "limitations": [ + "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", + "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", + "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", + "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", + "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", + "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", + "No broker, trading strategy, actual feed or net token-saving acceptance." + ] }, { - "id": "mac-native-document-ingestion-20260920", - "kind": "native_cli_e2e", + "id": "native-gpu-patch-20260920", + "kind": "native_model_e2e", "component_ids": [ - "poppler" + "llama-cpp" ], - "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", + "claim": "One pinned Qwen3.8-27B Q4_K_M local CUDA partial-offload repair passed independent source review and all12 original planner tests on WSL RTX4090.", "limitations": [ - "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", - "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", - "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", - "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", - "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." + "One visible fixture, one trial, configured32GPUlayers; exact layer placement count unavailable at native log verbosity.", + "Generation took179.191seconds near the180second cap. This is not an interactive default or frontier-model comparison.", + "Minimum whole-device sampled freeVRAM8223MiB includes other allocations; not an isolated process-peak benchmark.", + "Native model and archives were downloaded and hash-verified; archive attestations verified. CUDA licensing reviewed for local use, not redistribution.", + "No host recovery, concurrent serving, provider billing or whole-task savings qualification." ], - "path": "blueprints/convergence-practice/document-ingestion/receipt.json" + "path": "evidence/receipts/native-gpu-patch-20260920.json" }, { - "id": "native-wsl-restic-synthetic-20260920", + "id": "native-grand-dashboard-20260919", + "path": "observability/grand-dashboard/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "grafana", + "loki", + "prometheus", + "dagu" ], - "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", + "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", "limitations": [ - "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", - "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", - "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", - "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", - "No token, storage-efficiency or backup performance claim.", - "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", - "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", - "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", - "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", - "Ten offline oracle/guard tests are distinct from the actual native restic commands." - ], - "path": "blueprints/convergence-practice/wsl-restore/receipt.json" + "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", + "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", + "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", + "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", + "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", + "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", + "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", + "Recorded worker/decision state is not a live process registry.", + "No broker execution, exact-once accounting, universal coverage or net token savings.", + "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." + ] }, { - "id": "mac-native-container-storage-20260920", - "kind": "native_cli_e2e", + "id": "native-harness-defaults-20260920", + "kind": "artifact_measurement", "component_ids": [ - "apple-container", - "postgresql" + "codex", + "claude-code" ], - "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", + "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", "limitations": [ - "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", - "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", - "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", - "Images remain cached; only owned empty failed container, test database container and test volume were removed.", - "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." + "Saved instruction bytes are not proof that every future model decision will follow them.", + "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", + "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." ], - "path": "blueprints/convergence-practice/container-storage/receipt.json" + "path": "evidence/receipts/native-harness-defaults-20260920.json" }, { - "id": "mac-native-application-migration-20260920", + "id": "native-headroom-mcp-20260920", + "path": "evidence/receipts/native-headroom-mcp-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "fastapi", - "postgresql" + "headroom" ], - "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", + "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", "limitations": [ - "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", - "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", - "No model calls; whole-task provider usage unknown." - ], - "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" + "Owned synthetic acceptance artifacts demonstrate artifact reduction, not lifetime production or provider-token savings", + "MCP summary is not a lossless replacement of the original; its exact full retrieval consumes the original token count", + "Upstream Headroom CLI has no compress subcommand; on-demand compression/retrieval is exposed through MCP or SDK", + "No automatic agent-traffic interception was configured", + "Global native upstream savings ledger remains0; isolated fixture ledger is not merged into it", + "No new provider task or automatic native-client traffic interception is established by this direct MCP fixture." + ] }, { - "id": "velanext-native-quality-tools-20260920", + "id": "native-historical-leverage-stress-20260919", + "path": "blueprints/us-equities/historical-simulation/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "gitleaks", - "worktrunk" + "lean" ], - "claim": "On VelaNext, exact gitleaks8.30.1 detected one inert test credential and accepted the clean control with redacted reports. Worktrunk0.78.0 created/listed/removed owned worktrees while refusing dirty removal without loss.", + "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", "limitations": [ - "Isolated synthetic Linux/WSL fixtures; no arbitrary repository safety/security certification or Mac acceptance inferred.", - "Original executed runner and attempt retained. Second attempt follows exact-pin/archive/binary/version binding and timeout-evidence hardening;20 offline guards passed on Mac and WSL.", - "GitHub attestation endpoints returned404. Publisher checksum, GitHub archive digest and exact pinned license checks passed; no attestation claim.", - "No accounts, shared services, project hooks or model calls changed by qualification. Global promotion, when performed, is separate host deployment evidence.", - "Whole coordinator/worker provider usage is unknown; no token or monetary savings claim." - ], - "path": "blueprints/convergence-practice/wsl-native-tools/receipt.json" + "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", + "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", + "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", + "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", + "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", + "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", + "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", + "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", + "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", + "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", + "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", + "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", + "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", + "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", + "No paper/live orders or automatic promotion." + ] }, { - "id": "mac-memory-patch-20260920", - "path": "evidence/receipts/mac-memory-patch-20260920.json", + "id": "native-jcodemunch-20260920", + "path": "evidence/receipts/native-jcodemunch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "jcodemunch-mcp" ], - "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", + "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", "limitations": [ - "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", - "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", - "No provider or whole-task token savings measurement." + "Single bounded code-reading task, not a native provider A/B trial.", + "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", + "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", + "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", + "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", + "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", + "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." ] }, { - "path": "evidence/receipts/wsl-application-20260920.json", - "id": "wsl-application-20260920", + "path": "blueprints/us-equities/execution-realism/receipt.json", + "id": "native-lean-execution-sensitivity-20260919", "kind": "native_cli_e2e", "component_ids": [ - "nextjs", - "react", - "fastapi", - "postgresql", - "playwright-test" + "lean" ], - "claim": "Clean isolated WSL runtime restored the same locked application, passed12 API checks, migration reversal, schema/types, production build and real browser flow; exact row/history persisted after PostgreSQL/API/Next restart.", + "claim": "Native LEAN completed three fixed-order historical simulations with distinct upstream fee/slippage assumptions; serialized fill cash reconciles to native rounded summaries and all mounted engine/data input hashes remained unchanged.", "limitations": [ - "Synthetic loopback application; no production deployment, user authentication or another-host acceptance.", - "Official exact Ubuntu packages were extracted task-only with signed metadata/SHA verification; no package scripts or system database changes.", - "Historical application inputs remain frozen; Makelevel/TIME_WAIT recipe fixes were qualified separately with five real make/socket tests on Mac and WSL.", - "No model calls by application commands; whole-task usage remains unknown." + "Exact arithmetic over serialized native event values; exported five-decimal fill prices and cent-rounded summaries do not expose all internal precision.", + "Illustrative fees and slippage are assumptions, not calibrated market or Alpaca execution observations.", + "Full-quantity market fills remain assumed; participation, partial fills, impact, latency, queueing, cancellation and broker reconciliation remain unaccepted.", + "Bundled five-day data do not establish PIT/corporate-action/universe quality or investment returns.", + "The normal dotnet build/restore route timed out twice; only the installed native C# compiler route is accepted.", + "Mounted input hashes do not prove every file was read; successful request logs list 13 paths plus possible separately read metadata.", + "No broker connection, account entitlement, deployment, strategy promotion, provider usage or token saving is established." ] }, { - "id": "wsl-transport-recovery-20260920", + "id": "native-lifecycle-sample-20260920", "kind": "native_cli_e2e", "component_ids": [ - "dagu" + "edgartools", + "duckdb" ], - "claim": "An owned nonmultiplexed SSH client was terminated; fresh reconnect observed the same native Dagu job running with one unchanged checkpoint, then native completion without stop or retry.", + "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", "limitations": [ - "Controlled client termination and a deliberately detached deterministic job; not a real network outage, host restart, model-session recovery or distributed exactly-once guarantee.", - "First harness attempt misclassified native SSH exit255 and stopped the job; its narrower same-run finalizer retry is retained separately from corrected survival acceptance.", - "Original12-test oracle passed before and after; observed owned processes/listener retired; whole-task provider usage remains unknown." + "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", + "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", + "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", + "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", + "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", + "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." ], - "path": "evidence/receipts/wsl-transport-recovery-20260920.json" + "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" }, { - "id": "wsl-document-ingestion-20260920", + "id": "native-linux-zizmor-20260920", + "path": "evidence/receipts/native-linux-zizmor-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "poppler" + "zizmor" ], - "claim": "Native Poppler26.09.0 built in a clean WSL prefix and passed the frozen3-page,24-cell,8-positive/4-absent document protocol; four extraction/retrieval artifacts exactly match Mac output.", + "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", "limitations": [ - "Designed born-digital Latin fixture with explicit table geometry; no OCR, inferred layout, general semantic retrieval or broad upstream corpus qualification.", - "Exact source signature, signed package extraction and native dependency checks preceded execution; failed first public-key lookup remains recorded.", - "No global package/service/client change or model/GPU invocation; whole-task provider usage unknown." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", + "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", + "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", + "No provider task was run and zizmor supplies no verified lifetime token-savings counter." ], - "path": "evidence/receipts/wsl-document-ingestion-20260920.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "wsl-memory-maintenance-20260920", + "id": "native-memory", + "path": "evidence/receipts/native-memory.json", + "kind": "native_model_e2e", + "component_ids": [ + "ai-memory", + "codex", + "claude-code" + ], + "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", + "limitations": [ + "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", + "No historical archive backfill or LLM/embedding consolidation pipeline enabled." + ] + }, + { + "id": "native-memory-lifecycle-20260919", + "path": "blueprints/us-equities/memory-lifecycle/receipt.json", "kind": "native_cli_e2e", "component_ids": [ "ai-memory" ], - "claim": "Official Linux ai-memory2.3.2 passed65 synthetic native checks across exact scope, Unicode/reserved paths, restart, upstream HTTP backup and native restore; four owned processes exited0.", + "claim": "A disposable, network-isolated native ai-memory fixture passed 23 lifecycle/routing checks across 31 MCP calls; exact-path TTL behavior and explicit sweep limits retained.", "limitations": [ - "Isolated fresh synthetic store and39 MCP tool calls; not production activation, native-client integration or prior-version migration.", - "Automatic capture, embeddings, generation, watcher and autowire disabled; no OS-confinement claim.", - "Native backup/restore both exit0; complete private logs retained, fixture model calls0 and whole-task provider usage unknown." - ], - "path": "evidence/receipts/wsl-memory-maintenance-20260920.json" + "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", + "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", + "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", + "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", + "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", + "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", + "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", + "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", + "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", + "Isolated fixture, not the live memory store or all client hooks.", + "TTL is default-search visibility until sweep, not immediate access revocation.", + "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." + ] }, { - "id": "token-practice-confirmation-20260920", - "kind": "historical_inventory", + "id": "native-memory-rag-alignment-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "context-mode", - "headroom", - "jcodemunch-mcp" + "ai-memory", + "socraticode", + "qdrant", + "qmd", + "vllm", + "grafana", + "loki" ], - "claim": "Dated direct upstream counter outputs, current release metadata, independent artifact rechecks and reconciled recorded monitoring support explicit baseline selection without claiming causal lifetime provider savings.", + "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", "limitations": [ - "Historical source-host observations only; not live acceptance on the reader's PC.", - "Upstream retained-history estimates, exact artifact counts and provider consumption are different quantities and must not be summed.", - "Artifact and client rechecks inspected existing retained inputs and streams; no new model task or reinstall was performed in this confirmation.", - "Public native fields are allowlisted unchanged from private outputs; host paths, process identifiers and account details are omitted.", - "Latest monitoring queries returned no matching observations in their six-hour window; this does not mean zero usage or newly confirmed savings.", - "Latest-release equality was checked only for the four selected token tools; accepted specialist compatibility pins are separate." + "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", + "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", + "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", + "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", + "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", + "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", + "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." ], - "path": "evidence/receipts/token-practice-confirmation-20260920.json" + "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" }, { - "id": "native-token-clean-prefix-20260920", + "id": "native-nautilus-ci-20260920", "kind": "native_cli_e2e", "component_ids": [ - "headroom", - "jcodemunch-mcp" + "nautilus-trader" ], - "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", + "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", "limitations": [ - "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", - "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", - "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", - "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", - "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", - "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", - "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", - "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." + "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", + "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", + "Network namespace and available-interface observations are not measured counts of attempted external transports." ], - "path": "evidence/receipts/native-token-clean-prefix-20260920.json" + "path": "evidence/receipts/native-nautilus-ci-20260920.json" }, { - "id": "current-session-observation-20260920", + "id": "native-nautilus-v2-20260920", "kind": "native_cli_e2e", "component_ids": [ - "agentsview", - "ai-memory", - "alertmanager", - "ccusage", - "claude-hud", - "context-mode", - "grafana", - "headroom", - "jcodemunch-mcp", - "loki", - "mcporter", - "ntfy", - "opentelemetry-collector-contrib", - "otel-tui", - "prometheus", - "rtk", - "serena", - "socraticode" + "nautilus-trader" ], - "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", + "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", "limitations": [ - "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", - "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", - "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", - "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", - "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", - "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", - "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", - "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." + "Release candidate, not production/live-capital acceptance.", + "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", + "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", + "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", + "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", + "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", + "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." ], - "path": "evidence/receipts/current-session-observation-20260920.json" + "path": "evidence/receipts/native-nautilus-v2-20260920.json" }, { - "id": "foundation-native-20260920", + "id": "native-observability", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qmd", - "qdrant", - "vllm", - "socraticode", - "serena", - "context-mode", - "jcodemunch-mcp", - "rtk", - "headroom", - "repomix", - "toon", "codex", "claude-code", + "agent-browser", "opentelemetry-collector-contrib", "prometheus", "loki", - "omniroute" + "grafana", + "alertmanager", + "ntfy" ], - "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", + "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", "limitations": [ - "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", - "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", - "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", - "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", - "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", - "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", - "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", - "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", - "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." + "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", + "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", + "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", + "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", + "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", + "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." ], - "path": "evidence/receipts/foundation-native-20260920.json" + "path": "observability/receipt.json" }, { - "id": "codex-session-environment-20260920", - "kind": "native_cli_e2e", + "id": "native-observability-followup", + "kind": "native_model_e2e", "component_ids": [ "codex", "context-mode", - "jcodemunch-mcp", - "serena", "ai-memory", - "socraticode" + "socraticode", + "agent-browser", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "grafana" ], - "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", + "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", "limitations": [ - "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", - "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", - "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", - "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", - "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", - "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", - "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." + "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", + "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", + "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", + "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", + "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", + "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." ], - "path": "evidence/receipts/codex-session-environment-20260920.json" + "path": "observability/followup-receipt.json" }, { - "id": "codex-desktop-live-20260920", + "id": "native-offhost-app-state-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "context-mode", - "jcodemunch-mcp", - "serena", "ai-memory", - "socraticode", - "rtk", - "headroom", - "qmd", - "loki", - "prometheus" + "qdrant", + "restic" ], - "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", + "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", "limitations": [ - "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", - "Tools without native savings ledgers remain unavailable, not zero.", - "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", - "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", - "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", - "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", - "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", - "No fresh Prometheus turn sample in the selected window; no three-way observation join." + "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", + "Sequential native application snapshots do not establish an atomic cross-application transaction.", + "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", + "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", + "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", + "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", + "No model/provider/broker calls or causal token/cost savings measurement." ], - "path": "evidence/receipts/codex-desktop-live-20260920.json" + "path": "evidence/receipts/native-offhost-app-state-20260920.json" }, { - "id": "native-session-defaults-20260920", + "id": "native-offhost-restic-20260920", "kind": "native_cli_e2e", + "component_ids": [ + "restic" + ], + "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", + "limitations": [ + "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", + "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", + "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", + "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", + "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", + "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." + ], + "path": "evidence/receipts/native-offhost-restic-20260920.json" + }, + { + "path": "adoption/paired/receipt.json", + "id": "native-paired-adoption-20260919", + "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", - "ai-memory", - "context-mode", - "rtk", - "qmd" + "duckdb", + "dagu", + "lean", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", + "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", "limitations": [ - "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", - "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", - "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", - "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", - "Claude startup events join four starts to four completions but do not identify individual configured commands.", - "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", - "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." + "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", + "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", + "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", + "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", + "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", + "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", + "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", + "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." + ] + }, + { + "path": "blueprints/us-equities/point-in-time/receipt.json", + "id": "native-point-in-time-contract-20260919", + "kind": "native_cli_e2e", + "component_ids": [ + "duckdb" ], - "path": "evidence/receipts/native-session-defaults-20260920.json" + "claim": "DuckDB 1.5.5 materialized and selected a synthetic temporal snapshot; late revisions, universe state, feed/adjustment scope and pinned snapshot integrity were exercised through native Python SDK/SQL commands.", + "limitations": [ + "Synthetic observations only; no entitled or accepted market dataset, SEC download, vendor API, model or broker call occurred.", + "Availability timestamps and evidence references are declarations, not independently authenticated vendor publication evidence.", + "Local snapshot ingestion time is separate from source publication and original capture time.", + "Scope is realized observations and effective universe state; it does not model every corporate action, event forecast, symbol mapping or delisting history.", + "Hash checks require the caller to retain a trusted manifest digest independently; local file permissions are not immutable storage or off-host recovery." + ] }, { - "id": "native-token-ci-local-20260920", + "id": "native-progress-capacity-20260921", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "loki", + "dagu" ], - "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", + "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", + "No client restart, service restart or physical reboot was performed or verified.", + "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", + "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", + "No live provider inference, account change, new dependency or upstream version change for this repair." ], - "path": "evidence/receipts/native-token-ci-local-20260920.json" + "path": "observability/grand-dashboard/capacity-recovery-20260921.json" }, { - "id": "native-token-ci-github-20260920", + "id": "native-quality-defaults-20260920", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "codex", + "claude-code" ], - "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", + "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", + "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", + "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", + "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", + "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." ], - "path": "evidence/receipts/native-token-ci-github-20260920.json" + "path": "evidence/receipts/native-quality-defaults-20260920.json" }, { - "id": "native-tavily-cli-20260920", - "kind": "native_cli_e2e", + "id": "native-rag", + "path": "evidence/receipts/native-rag.json", + "kind": "native_model_e2e", "component_ids": [ - "tavily-cli", "codex", - "claude-code" + "claude-code", + "socraticode", + "qdrant", + "vllm", + "huggingface-hub-native" ], - "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", + "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", "limitations": [ - "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", - "Claude global skill listing is not a Claude model-turn execution of every skill.", - "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", - "Search/Extract results do not independently establish their source claims or a complete research deliverable.", - "No native lifetime or exact provider-token savings counter is established.", - "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." + "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", + "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." + ] + }, + { + "id": "native-research-efficiency-20260920", + "kind": "native_model_e2e", + "component_ids": [ + "codex", + "claude-code", + "qmd" ], - "path": "evidence/receipts/native-tavily-cli-20260920.json" + "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", + "limitations": [ + "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", + "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", + "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", + "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", + "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", + "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", + "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", + "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", + "Local supervision does not prove provider-side cancellation; no run timed out.", + "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." + ], + "path": "blueprints/us-equities/research-efficiency/native-receipt.json" }, { - "id": "native-nautilus-v2-20260920", - "kind": "native_cli_e2e", + "id": "native-research-runtime-20260919", + "kind": "native_model_e2e", "component_ids": [ - "nautilus-trader" + "claude-code", + "dagu", + "lean", + "duckdb", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", + "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", "limitations": [ - "Release candidate, not production/live-capital acceptance.", - "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", - "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", - "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", - "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", - "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", - "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." + "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", + "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", + "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", + "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", + "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", + "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", + "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", + "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." ], - "path": "evidence/receipts/native-nautilus-v2-20260920.json" + "path": "blueprints/us-equities/research-runtime/receipt.json" }, { - "id": "native-harness-defaults-20260920", - "kind": "artifact_measurement", + "id": "native-returned-results-20260921", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code" + "claude-code", + "rtk", + "context-mode", + "qmd", + "serena", + "ai-memory", + "socraticode", + "qdrant", + "agentsview", + "grafana", + "loki", + "prometheus", + "dagu", + "ntfy", + "omniroute", + "agent-browser", + "promptfoo", + "headroom", + "jcodemunch-mcp" ], - "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", + "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", "limitations": [ - "Saved instruction bytes are not proof that every future model decision will follow them.", - "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", - "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." + "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", + "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", + "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", + "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", + "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", + "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", + "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", + "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", + "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." ], - "path": "evidence/receipts/native-harness-defaults-20260920.json" + "path": "evidence/receipts/native-returned-results-20260921.json" }, { - "id": "native-worker-recovery-20260920", + "id": "native-runtime-role-resolution-20260930", "kind": "native_model_e2e", "component_ids": [ + "omniroute", "claude-code" ], - "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", + "claim": "One host installed separately versioned OpenHands CLI1.16.0/SDK1.50.1 and DeepAgents0.7.21 candidates through native supported interfaces. CLI108 and final SDK184 unchanged upstream tests passed; DeepAgents361 passed with1 expected failure in its separate upstream-lock environment. Actual OmniRoute Sol-Max requests passed one OpenHands native LLM exact-output round-trip and bounded DeepAgents selected-skill/single-specialist research, saved-context repair and fresh-process SQLite continuation. All results are scoped, not a universal framework winner or global default promotion.", "limitations": [ - "One synthetic local fixture and one physical WSL host, not arbitrary application state.", - "Actual native child identities and paths remain private; hashes bind retained streams.", - "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", - "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", - "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", - "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", - "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." + "CLI SDK1.21 Jinja cache hard-codes real user home; strict cache isolation remains held.", + "Final SDK native configuration/tests exercise skills/plugins/MCP/condenser interfaces; production MCP, full Conversation/condenser/provider execution and optional extensions are not qualified by them.", + "Original DeepAgents24-step attempt failed; one changed32-step saved-context repair passed. No arbitrary interrupted-tool replay, OS confinement or comparative winner is qualified.", + "Complete provider billing/backend identity and whole-task token savings remain unknown; cached/reasoning counters are subsets.", + "Native Claude Opus/Max peer timed out180s exit124 without a verdict; later peer turns reached account usage limits. Completed earlier reviews are preserved; no new acknowledgement/approval is claimed.", + "Original full output stays private with exact hashes; public excerpts replace private paths and omit raw conversations, marker values, credentials and flow identifiers.", + "Exact executed sources are archived. Initial whitespace/comment cleanup had identical ASTs; the current worker subsequently adopts native secret-aware serialization after CodeQL, verified by native fixture and fresh saved-state checks. No new provider run is claimed." ], - "path": "evidence/receipts/native-worker-recovery-20260920.json" + "path": "evidence/receipts/native-runtime-role-resolution-20260930.json" }, { - "id": "foundation-catalog-ui-20260920", - "kind": "artifact_measurement", + "id": "native-sandbox-network-20260920", + "path": "evidence/receipts/native-sandbox-network-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "agent-browser" + "sandbox-runtime" ], - "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", + "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", "limitations": [ - "Source pin/publication URLs pending parent final source commit and regeneration.", - "No provider/broker execution or broad regression rerun performed.", - "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." - ], - "path": "evidence/receipts/foundation-catalog-ui-20260920.json" + "HTTP proxy path tested on this Linux/WSL host", + "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", + "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", + "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." + ] }, { - "id": "native-worker-containment-20260920", + "id": "native-sdk-acceptance-20261002", "kind": "native_cli_e2e", "component_ids": [ - "systemd", + "codex", "claude-code" ], - "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", + "claim": "Actual Claude SDK task failed its independent oracle despite successful protocol completion; a separate informed Codex SDK repair passed all four unchanged cases. Unchanged Claude and OpenHands default source suites passed within recorded skip, warning and environment limits.", "limitations": [ - "Deterministic cgroup proof is not successful native child crash/resume acceptance.", - "Earlier same-child continuation still required explicit direct descendant cleanup.", - "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." + "Two different model tasks and source-test suites have different evidence scopes; this is not a model-quality or token-efficiency comparison, global SOTA winner claim or full foundation closure.", + "Claude original useful-task acceptance remains FAILED. Codex passes only the four-case informed repair; its requested model/effort are bound, but resolved model/provider identity and billing cost were not returned.", + "Coordinator observed invocation, native exits and process samples. Independent reviewers checked retained source/artifact/outcome bindings without rerunning; hash equality alone is not execution provenance.", + "Public attachments are declared projections, exact resulting candidates and selected native output. Complete permitted streams remain private; raw conversations, auth/session metadata and personal paths are not published.", + "Claude default source suite has six skips, with five collection identities inferred from source/dependencies. OpenHands retains seven optional ToolShield skips, 12 xfails, 83 warnings, default stress/ACP-live exclusions and a preserved failed environment attempt; exact fetched model-map bytes were not retained.", + "OpenHands is supplemental source-test evidence, not a new adopted stack component. Its FACTS provider task remains unrun in this lane; Codex default source-suite execution remains with its separate owner.", + "Researcher/reviewer roles, resume/recovery, selected MCP, generation permission-negative tests, complete target lifecycle and target token routing remain open. Exact before/after process-name samples do not prove complete descendant cleanup.", + "Historical Claude task binding is CLI2.1.287. Current release2.1.288 reconciliation remains with the configuration owner and cannot retroactively change these captures." ], - "path": "evidence/receipts/native-worker-containment-20260920.json" + "path": "evidence/receipts/native-sdk-acceptance-20261002.json" }, { - "id": "native-nautilus-ci-20260920", + "id": "native-sdk-role-mcp-followup-20261002", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "claude-code" ], - "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", + "claim": "Retained Claude SDK evidence supports minimal inline MCP callback/terminal assertions with synthetic controls and one native deny-rule pair with a disarmed-rule control; the reviewer case completed without a discriminating control, and the researcher case is controlled for missing findings only. Prior researcher failures remain FAIL and complete role qualification remains incomplete.", "limitations": [ - "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", - "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", - "Network namespace and available-interface observations are not measured counts of attempted external transports." + "Retained independent case ACCEPT verdicts are observations, not qualified role acceptance. Reviewer negative grading has no discriminating control; the original researcher FAIL controls missing findings only, not wrong facts/citations or attribution.", + "Synthetic MCP0/1/1 controls discriminate callback presence and terminal success only. The separate native armed0/disarmed1 pair supports one actual deny-rule observation; definition visibility unknown, no can_use_tool callback configured.", + "Earlier query timestamps unknown; deny-pair UTC intervals captured. Counters retain separate scopes; interrupted whole-query usage/cost unknown. No billed-cost or efficiency claim.", + "Selected QMD/Serena, recovery, containment, complete lifecycle and whole-host qualification remain open; process samples are bounded and staging is not managed-upgrade acceptance.", + "Sanitized projections only; private original hashes, failed cases and corrections retained. The projection step ran no new provider/test/control execution and made no shared edits; registration in manifests/evidence.json is separate from that step." ], - "path": "evidence/receipts/native-nautilus-ci-20260920.json" + "path": "evidence/receipts/native-sdk-role-mcp-followup-20261002.json" }, { - "id": "native-catalog-retrieval-20260920", + "id": "native-sec-access-resolution-20260919", "kind": "native_cli_e2e", "component_ids": [ - "qmd" + "edgartools" ], - "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", + "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", "limitations": [ - "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", - "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", - "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", - "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." + "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", + "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", + "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", + "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", + "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", + "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", + "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", + "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." ], - "path": "evidence/receipts/native-catalog-retrieval-20260920.json" + "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" }, { - "id": "native-tavily-session-20260920", + "id": "native-sec-new-host-20260924", "kind": "native_cli_e2e", "component_ids": [ - "tavily-cli" + "edgartools" ], - "claim": "The current Desktop task received eight Tavily skill entries, loaded the Search/Extract skills, ran both upstream commands and extracted the official IBKR adapter prerequisites.", + "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", "limitations": [ - "Host-supplied active-task skill discovery is distinct from the prior fresh native-process probes. Only Search and Extract were exercised in this task.", - "The broad search returned three official IBKR sources but missed the intended Nautilus adapter guide; direct known-URL extraction supplied the needed evidence.", - "Extracted current documentation is a source check, not an executed broker connection or version-pinned adapter behavior.", - "No provider usage, per-skill performance comparison or lifetime token-saving counter is claimed." + "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", + "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", + "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", + "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", + "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", + "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", + "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." ], - "path": "evidence/receipts/native-tavily-session-20260920.json" + "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", + "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" }, { - "id": "native-worker-cgroup-20260920", - "kind": "native_model_e2e", + "id": "native-security-identity-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "systemd" + "alpaca-py", + "duckdb" ], - "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", + "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", "limitations": [ - "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", - "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", - "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", - "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", - "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." + "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", + "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", + "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", + "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", + "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", + "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", + "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", + "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." ], - "path": "evidence/receipts/native-worker-cgroup-20260920.json" + "path": "blueprints/us-equities/identity-readiness/native-receipt.json" }, { "id": "native-service-reboot-20260920", @@ -2393,888 +2739,698 @@ "path": "evidence/receipts/native-service-reboot-20260920.json" }, { - "id": "native-offhost-app-state-20260920", + "id": "native-session-defaults-20260920", "kind": "native_cli_e2e", "component_ids": [ + "codex", + "claude-code", "ai-memory", - "qdrant", - "restic" + "context-mode", + "rtk", + "qmd" ], - "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", + "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", "limitations": [ - "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", - "Sequential native application snapshots do not establish an atomic cross-application transaction.", - "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", - "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", - "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", - "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", - "No model/provider/broker calls or causal token/cost savings measurement." + "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", + "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", + "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", + "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", + "Claude startup events join four starts to four completions but do not identify individual configured commands.", + "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", + "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." ], - "path": "evidence/receipts/native-offhost-app-state-20260920.json" + "path": "evidence/receipts/native-session-defaults-20260920.json" }, { - "id": "native-ultracode-20260921", + "id": "native-simulation-research-dashboard-20260919", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "context-mode" + "grafana", + "loki" ], - "claim": "Claude Code 2.1.278 executed a Fable 5.1/xhigh native Workflow with Sonnet 5/medium and Opus 5/high workers returning results. The same coordinator resumed at high effort and completed a native same-host message round trip, source verification and one-shot idle notification with a separate Sonnet session. Native agent and restored workflow dashboards rendered the completed work.", + "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", "limitations": [ - "Read-only task contracts are not OS isolation; no writing-worker, mid-run cancellation, cross-host or reboot qualification.", - "Initial worker classifications were inaccurate and corrected after independent source review; both worker outputs exceeded their requested word contracts and one schema retry occurred.", - "Native worker identity was observed in child messages; choices are not a comparative quality or token-cost benchmark.", - "Same-host messaging and idle notification only; permission-mismatch behavior, delivery failures, retries and persistent scheduling were not tested.", - "Updated maintenance configuration is not proof of its next timed execution; no new recurring Claude loop was created.", - "Two native success events share cumulative model usage; no causal savings or exhaustive provider-accounting claim.", - "Native PTY rendering and process observations were recorded by the coordinator; message and workflow traces received independent read-only audit. Private raw logs and identifiers remain outside Git." + "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", + "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", + "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", + "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", + "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", + "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", + "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." ], - "path": "evidence/receipts/native-ultracode-20260921.json" + "path": "blueprints/us-equities/simulation-research/receipt.json" }, { - "id": "native-dashboard-access-20260921", + "id": "native-tavily-cli-20260920", "kind": "native_cli_e2e", "component_ids": [ - "dagu", - "qdrant", - "agentsview", - "grafana", - "prometheus", - "ntfy", - "agent-browser", - "omniroute" + "tavily-cli", + "codex", + "claude-code" ], - "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", + "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", "limitations": [ - "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", - "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", - "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", - "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", - "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", - "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", - "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." + "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", + "Claude global skill listing is not a Claude model-turn execution of every skill.", + "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", + "Search/Extract results do not independently establish their source claims or a complete research deliverable.", + "No native lifetime or exact provider-token savings counter is established.", + "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." ], - "path": "evidence/receipts/native-dashboard-access-20260921.json" + "path": "evidence/receipts/native-tavily-cli-20260920.json" }, { - "id": "full-stack-convergence-20260921", + "id": "native-tavily-session-20260920", "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "ccusage", - "claude-code", - "codex", - "context-mode", - "dagu", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "loki", - "omniroute", - "openresearch", - "prometheus", - "qdrant", - "qmd", - "repomix", - "rtk", - "serena", - "socraticode", - "toon", - "vllm", - "worktrunk" + "tavily-cli" ], - "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", + "claim": "The current Desktop task received eight Tavily skill entries, loaded the Search/Extract skills, ran both upstream commands and extracted the official IBKR adapter prerequisites.", "limitations": [ - "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", - "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", - "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", - "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", - "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", - "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", - "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", - "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." + "Host-supplied active-task skill discovery is distinct from the prior fresh native-process probes. Only Search and Extract were exercised in this task.", + "The broad search returned three official IBKR sources but missed the intended Nautilus adapter guide; direct known-URL extraction supplied the needed evidence.", + "Extracted current documentation is a source check, not an executed broker connection or version-pinned adapter behavior.", + "No provider usage, per-skill performance comparison or lifetime token-saving counter is claimed." ], - "path": "evidence/receipts/full-stack-convergence-20260921.json" + "path": "evidence/receipts/native-tavily-session-20260920.json" }, { - "id": "memory-landscape-20260921", + "id": "native-terminal-profiles-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", "codex", - "claude-code" + "claude-code", + "qdrant", + "vllm" ], - "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", + "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", "limitations": [ - "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", - "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", - "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", - "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", - "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", - "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", - "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", - "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", - "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." + "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", + "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", + "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", + "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", + "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." ], - "path": "evidence/receipts/memory-landscape-20260921.json" + "path": "evidence/receipts/native-terminal-profiles-20260920.json" }, { - "id": "memory-landscape-lifecycle-20260921", + "id": "native-token-ci-github-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qdrant", - "vllm", - "serena", + "rtk", "qmd", - "codex", - "claude-code" + "repomix", + "toon" ], - "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", + "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", "limitations": [ - "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", - "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", - "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", - "Exact memory session/lifetime savings are not returned and remain null.", - "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" ], - "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" + "path": "evidence/receipts/native-token-ci-github-20260920.json" }, { - "id": "alpaca-paper-e2e-20260921", + "id": "native-token-ci-local-20260920", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "claude-code" + "rtk", + "qmd", + "repomix", + "toon" ], - "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", + "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", "limitations": [ - "One operational smoke trial, not profitable strategy or continuous trading acceptance.", - "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", - "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" ], - "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" + "path": "evidence/receipts/native-token-ci-local-20260920.json" }, { - "id": "nautilus-equity-replay-20260921", + "id": "native-token-clean-prefix-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "headroom", + "jcodemunch-mcp" ], - "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", + "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", "limitations": [ - "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", - "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", - "SPY/LEAN corporate-action parity and historical universe availability remain separate." + "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", + "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", + "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", + "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", + "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", + "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", + "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", + "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." ], - "path": "evidence/receipts/nautilus-equity-replay-20260921.json" + "path": "evidence/receipts/native-token-clean-prefix-20260920.json" }, { - "id": "foundation-convergence-20260921", + "id": "native-token-focus-clients-20260920", + "path": "evidence/receipts/native-token-focus-clients-20260920.json", "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", "context-mode", - "rtk", - "headroom", - "toon" - ], - "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", - "limitations": [ - "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", - "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", - "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", - "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", - "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." - ], - "path": "evidence/receipts/foundation-convergence-20260921.json" - }, - { - "id": "native-progress-capacity-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "loki", - "dagu" + "jcodemunch-mcp" ], - "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", + "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", "limitations": [ - "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", - "No client restart, service restart or physical reboot was performed or verified.", - "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", - "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", - "No live provider inference, account change, new dependency or upstream version change for this repair." - ], - "path": "observability/grand-dashboard/capacity-recovery-20260921.json" + "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", + "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", + "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", + "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", + "Raw private prompts, client streams, account identifiers and host paths are not published." + ] }, { - "id": "claude-upstream-checks-20260921", - "kind": "native_cli_e2e", + "id": "native-token-stack-final-20260920", + "kind": "native_model_e2e", "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "ast-grep", - "beads", - "ccusage", "claude-code", "codex", - "codex-for-claude", "context-mode", - "dagu", - "difftastic", - "gitleaks", - "grafana", - "headroom", "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcporter", - "nautilus-trader", - "openresearch", - "opentelemetry-collector-contrib", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", + "headroom", "rtk", - "serena", - "socraticode", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "opentelemetry-collector-contrib", + "loki", + "prometheus" ], - "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", + "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", "limitations": [ - "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", - "Complete originals remain private; public excerpts are bounded and sanitized.", - "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." + "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", + "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", + "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", + "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", + "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", + "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", + "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", + "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." ], - "path": "evidence/receipts/claude-upstream-checks-20260921.json" + "path": "evidence/receipts/native-token-stack-final-20260920.json" }, { - "id": "foundation-rd-20260921", - "kind": "native_model_e2e", + "id": "native-ultracode-20260921", + "kind": "native_cli_e2e", "component_ids": [ "claude-code", - "codex", - "codex-for-claude", - "qmd" + "context-mode" ], - "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", + "claim": "Claude Code 2.1.278 executed a Fable 5.1/xhigh native Workflow with Sonnet 5/medium and Opus 5/high workers returning results. The same coordinator resumed at high effort and completed a native same-host message round trip, source verification and one-shot idle notification with a separate Sonnet session. Native agent and restored workflow dashboards rendered the completed work.", "limitations": [ - "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", - "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", - "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", - "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", - "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." + "Read-only task contracts are not OS isolation; no writing-worker, mid-run cancellation, cross-host or reboot qualification.", + "Initial worker classifications were inaccurate and corrected after independent source review; both worker outputs exceeded their requested word contracts and one schema retry occurred.", + "Native worker identity was observed in child messages; choices are not a comparative quality or token-cost benchmark.", + "Same-host messaging and idle notification only; permission-mismatch behavior, delivery failures, retries and persistent scheduling were not tested.", + "Updated maintenance configuration is not proof of its next timed execution; no new recurring Claude loop was created.", + "Two native success events share cumulative model usage; no causal savings or exhaustive provider-accounting claim.", + "Native PTY rendering and process observations were recorded by the coordinator; message and workflow traces received independent read-only audit. Private raw logs and identifiers remain outside Git." ], - "path": "evidence/receipts/foundation-rd-20260921.json" + "path": "evidence/receipts/native-ultracode-20260921.json" }, { - "id": "claude-foundation-finalization-20260921", + "id": "native-worker-cgroup-20260920", "kind": "native_model_e2e", "component_ids": [ "claude-code", - "codex", - "agent-browser", - "repomix" + "systemd" ], - "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", + "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", "limitations": [ - "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", - "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", - "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", - "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." + "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", + "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", + "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", + "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", + "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." ], - "path": "evidence/receipts/claude-foundation-finalization-20260921.json" + "path": "evidence/receipts/native-worker-cgroup-20260920.json" }, { - "id": "adaptive-paper-practice-20260921", + "id": "native-worker-containment-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "claude-code", - "codex" + "systemd", + "claude-code" ], - "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", + "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", "limitations": [ - "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", - "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", - "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", - "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." + "Deterministic cgroup proof is not successful native child crash/resume acceptance.", + "Earlier same-child continuation still required explicit direct descendant cleanup.", + "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." ], - "path": "evidence/receipts/adaptive-paper-practice-20260921.json" + "path": "evidence/receipts/native-worker-containment-20260920.json" }, { - "id": "broad-universe-research-20260921", - "kind": "native_cli_e2e", + "id": "native-worker-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "alpaca-py", - "duckdb", - "claude-code", - "codex" + "claude-code" ], - "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", + "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", "limitations": [ - "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", - "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", - "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", - "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", - "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." + "One synthetic local fixture and one physical WSL host, not arbitrary application state.", + "Actual native child identities and paths remain private; hashes bind retained streams.", + "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", + "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", + "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", + "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", + "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." ], - "path": "evidence/receipts/broad-universe-research-20260921.json" + "path": "evidence/receipts/native-worker-recovery-20260920.json" }, { - "id": "ultracode-token-routing-20260921", + "id": "native-worker-supervision-20260919", + "path": "blueprints/us-equities/worker-supervision/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex" + "systemd" ], - "claim": "Claude Code 2.1.278 native Workflow stages re-routed to lean project agents cut the provider-returned first-request prompt from 42,396 tokens (default child) to 12,164 (named MCP grants behind ToolSearch) and 8,048 (source-scout) on one identical task; eight native review runs, two readiness audits, a builder run and probes plus one Codex cross-family review are retained as sanitized usage receipts; Haiku was not routed after an Opus-verified 9/14 versus 14/14 extraction trial; workflowSizeGuideline moved from small to unrestricted with a task sizing rule.", + "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", "limitations": [ - "First-prompt figures come from one tiny task on one host and model; they bound a fixed spawn cost, not a savings rate.", - "The Haiku judgment rests on one packet and one Opus verifier.", - "The strict accepted envelope status was never returned in the deploying project; the commit gate was fix-and-commit after each review's findings were resolved.", - "Local suites are stubbed or synthetic; provider figures reach the receipts only as sanitized child-usage.mjs output, with raw transcripts outside Git.", - "Codex thread and turn identifiers were redacted from the cross-review record." - ], - "path": "evidence/receipts/ultracode-token-routing-20260921.json" + "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", + "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", + "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", + "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", + "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", + "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", + "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", + "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", + "Hashes bind retained evidence bytes; they do not independently attest the execution.", + "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", + "Configured resource limits were inspected, not saturation-tested." + ] }, { - "id": "portable-claude-native-qualification-20260921", + "id": "native-workflow-graceful-recovery-20260921", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "prometheus" + "claude-code" ], - "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", + "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", "limitations": [ - "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", - "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", - "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", - "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", - "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." + "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", + "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", + "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", + "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." ], - "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" + "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" }, { - "id": "sota-convergence-20260922", - "kind": "historical_inventory", + "id": "native-workflow-writing-comparison-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "apple-container", - "ast-grep", - "beads", - "ccusage", - "claude-code", - "claude-hud", - "codebase-memory-mcp", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "fastapi", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "llama-cpp", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nextjs", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "playwright-cli", - "playwright-test", - "poppler", - "postgresql", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "react", - "repomix", - "restic", - "rtk", - "sandbox-runtime", - "serena", - "shanraisshan/claude-code-best-practice", - "shellcheck", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "claude-code" ], - "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", + "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", "limitations": [ - "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", - "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", - "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", - "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." + "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", + "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", + "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." ], - "path": "evidence/receipts/sota-convergence-20260922.json" + "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" }, { - "id": "claude-repository-evidence-20260921", + "id": "native-wsl-restic-synthetic-20260920", "kind": "native_cli_e2e", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "alpaca-py", - "ast-grep", - "beads", - "ccusage", - "claude-code", - "claude-hud", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "duckdb", - "edgartools", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nautilus-trader", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "pandas", - "playwright-cli", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "restic", - "rtk", - "sandbox-runtime", - "serena", - "shellcheck", - "skfolio", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "restic" ], - "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", + "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", "limitations": [ - "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", - "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", - "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", - "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", - "Superseded observations, including the author's own probe and invocation errors, remain recorded." + "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", + "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", + "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", + "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", + "No token, storage-efficiency or backup performance claim.", + "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", + "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", + "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", + "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", + "Ten offline oracle/guard tests are distinct from the actual native restic commands." ], - "path": "evidence/receipts/claude-repository-evidence-20260921.json" + "path": "blueprints/convergence-practice/wsl-restore/receipt.json" }, { - "id": "github-automation-newpc-20260922", + "id": "nautilus-equity-replay-20260921", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code" + "nautilus-trader" ], - "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", + "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", "limitations": [ - "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", - "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", - "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", - "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", - "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", - "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." + "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", + "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", + "SPY/LEAN corporate-action parity and historical universe availability remain separate." ], - "path": "evidence/receipts/github-automation-newpc-20260922.json" + "path": "evidence/receipts/nautilus-equity-replay-20260921.json" }, { - "id": "exchange-calendars-native-check-20260922", - "kind": "native_cli_e2e", + "id": "new-wsl-embedding-model-20261002", + "kind": "native_model_e2e", "component_ids": [ - "exchange-calendars" + "huggingface-hub-native" ], - "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", + "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02 and 2026-10-03, with the generation model swift-iq3s-s2o-64k resident, the preregistered comparison for the new WSL's embedding model gave the slot to E1: qwen3-embedding:0.6b (Q8_0, Ollama library manifest ac6da0dfba84a81fdbfbaf330198c33cd77c4cdfc53e8bc50eb581914a15621d) on Ollama 0.35.0 as qwen3-embedding-8k (num_ctx 8192). On MTEB 2.22.1's CQADupstackUnixRetrieval (test split: 47,382 documents, 1,072 queries) its nDCG@10 was 0.49827 against 0.41394 for EmbeddingGemma on the same server: E1 minus E2 0.084331, 95% paired bootstrap interval over queries 0.067738 to 0.100656 (10,000 resamples, seed 20260927). Nemotron-3-Embed-1B, which needs a second model server, scored 0.5014; E3 minus E1 was 0.003124 with an interval of -0.012194 to 0.018141 that includes zero, so by the second-server rule it does not take the slot. WeMM-Embedding-2B passed the fit gate but ran out of GPU memory in its full run and is out. The reranking condition was not run.", "limitations": [ - "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", - "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", - "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", - "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", - "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." + "One public retrieval task (CQADupstack Unix: English technical questions from a StackExchange forum), one workstation, one throwaway distribution, one run per arm: a local integration check, not an acceptance on the destination distribution.", + "Nemotron's tie holds for this task only; multilingual retrieval, longer documents and other domains were not measured.", + "The two Ollama arms are GGUF conversions served by the one model server; a difference from the reference weights is a difference of the systems, not of the models alone.", + "E1's and E2's prompts are MTEB's reference prompts as observed with a stub before the runs (amendment 4a): E1 sends the Qwen3 instruction before queries and nothing before documents; E2 sends EmbeddingGemma's query and document prompts.", + "Gate F reads the model server's listing: in window pb2 the card's memory in use fell between steps while the server kept listing the generation model entirely on the GPU, consistent with the Windows driver moving part of it off the card, so E3 passing gate F does not show co-residency. In window pb1 the readings matched the resident models, so E1's co-residency with the generation model is supported by both readings.", + "E4's first error text was lost: after its evaluation failed out of memory, the script's memory query raised the same sticky CUDA error and the outer handler replaced the text; the outcome is not in doubt, because only the evaluation's handler sets out_of_memory.", + "The reranking condition was not run: no installed retrieval owner can call an external reranker (QMD reranks in-process with its bundled model), and zerank-2 (7.49 GiB of weights) cannot be resident beside the generation model on this card.", + "Recorded, not deciding: evaluation time E1 1,166 s, E2 771 s, E3 460 s (E3 in-process, not comparable with the Ollama arms); resident sizes E1 2,857,191,341 bytes and E2 681,417,113 bytes.", + "manifests/stack.json has no Ollama or MTEB component; component_ids name huggingface-hub-native, the native route for the revision-pinned snapshots of E3 and E4, which the measurement downloaded through the huggingface_hub library at MTEB's registered revisions (its version is in the throwaway's freeze list, which was not retained).", + "The 31 MB prediction files and the run records stay private and are listed by sha256 in files.json; the published per-query nDCG@10 files reproduce the decision statistic.", + "With a server-wide context of 64,000 the embedder loaded at its full context and took 5.78 GB (Part A, A1b); the measured system sets the context per model (qwen3-embedding-8k, 8,192 tokens), never server-wide." ], - "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" + "path": "evidence/artifacts/new-wsl-local-models-20261002/part-b-receipt.json" }, { - "id": "adoption-macos-hosted-smoke-20260922", - "kind": "native_cli_e2e", + "id": "new-wsl-local-generation-model-20261002", + "kind": "native_model_e2e", "component_ids": [ "codex", - "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "claude-code" ], - "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", + "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02, the preregistered comparison for the new WSL's local generation model gave the slot to S2o: Swift-1.5-Qwen3.8-27B IQ3_S (ukisai/Swift-1.5-Qwen3.8-27B-GSQ-RCO-GGUF at revision d74895bbe5db4bec1e0024e7cc87d59c02d7631a, file sha256 1333c6ea70ef348d4ac6d62732772e8ad6571ac5b3754c14ed54f1a0d904a786, 11,771,546,912 bytes) on Ollama 0.35.0 as swift-iq3s-s2o-64k (context 64,000). On the same 100 BFCL simple_python cases (inspect-evals 0.23.0 on Inspect AI 0.3.273) through the server's chat and responses surfaces, its first-pass valid tool calls were 200 of 200 against 175 of 200 for the control gpt-oss:20b: difference 0.125, 95% paired bootstrap interval over cases 0.065 to 0.19 (10,000 resamples, seed 20260927), not a tie. Both arms were entirely on the GPU with the embedder resident in the order of use, and both passed 10 of 10 client tasks (Codex 0.160.0 and Claude Code 2.1.287). Bonsai PTQ1_0, Bonsai PQ2_0 and Swift on PrismML's llama.cpp server failed the function gate (0 of 3 runs each: the server skips the Codex client's namespace tool type), and qwen3.8:27b was not entirely on the GPU at 64,000 tokens.", "limitations": [ - "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", - "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", - "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", - "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", - "socraticode is the profile's documented unpinned skip and was not installed." + "One workstation, one throwaway distribution, one run per case and arm: a local integration check of the systems named, not an acceptance on the destination distribution.", + "First-pass tool-call validity on 100 simple public cases (BFCL simple_python) through two interfaces; nothing about coding quality, long tasks, throughput under concurrent requests or behaviour above 64,000 tokens.", + "The Anthropic-style messages surface was not evaluated through the package (Inspect AI 0.3.273 cannot read this thinking model's answer); it was exercised only by Claude Code in the client tasks, which both arms passed.", + "S2o was slower in these runs: 292 and 303 seconds for 100 cases on chat and responses against 100 and 139 for the control, and 43.1 against 108.9 output tokens per second on single long prompts that were not run as a speed comparison.", + "S2o leaves less GPU memory free: 21,579 of 24,564 MiB in use with the embedder resident while Windows applications held about 2,600 MiB; earlier the same day they held up to about 5,900 MiB, at which the same load would leave under one GB. Co-residency on a busier desktop and on the destination distribution is not measured.", + "The Ollama import is this measurement's system, not a route the publisher documents: the library qwen3.8:27b model's renderer, parser, parameters, template and licence lines with the Swift file as FROM. The publisher's own route (llama.cpp's server, here PrismML's fork) failed the function gate for a reason that lies in that server. The quantization's card says its quality tests used a 512-token context.", + "The arm that took the slot was added by the preregistration's extension (amendment 3) after the owner asked for the newest releases; the deciding measurement as the critic named it had two arms (qwen3.8:27b and gpt-oss:20b), the earlier result for gpt-oss:20b is kept as a historical result, and gpt-oss:20b ran A2 as the control under the same rules.", + "Three deviations are recorded (a void first window, the Codex client's model name with its tag, a reused label); none changed a case, a limit, the metric or the rule, and none was decided on an outcome.", + "Recorded, not deciding: the package's own score (S2o 97 and 95 of 100, the control 83 and 83) and the client tasks (10 of 10 for each arm).", + "manifests/stack.json has no Ollama, Inspect AI or PrismML llama.cpp component, so component_ids name the two clients that ran the client tasks (Codex also ran the function gate); they ran at Codex 0.160.0 and Claude Code 2.1.287, not at the stack's recorded 0.159.3 and 2.1.284.", + "Raw model outputs (the Inspect logs, the client run records, the server logs) stay private and are listed by sha256 in files.json; the published per-case validity files carry case ids, verdicts, reasons and timings, and the decision statistic reproduces from them.", + "The Swift file's licence is the publisher's own (Swift Open License v1.0, with the original Qwen parts under Apache-2.0); the Modelfile's LICENSE block is the library model's Apache-2.0 text. Recorded, not judged." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" + "path": "evidence/artifacts/new-wsl-local-models-20261002/part-a-receipt.json" }, { - "id": "catalog-freshness-20260923", - "kind": "upstream_provenance", + "id": "nextjs-1638-qualification-20261001", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "llama-cpp", - "mcp-inspector", - "openresearch", - "skfolio" + "nextjs" ], - "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-10-01, the application-delivery recipe was qualified at Next.js 16.3.8 (tag v16.3.8, commit b0fad0d45eb4c4430fda5eeeb442e8a5af08a5f6, released 2026-09-30T16:13:46Z), whose release notes list seven security advisories, the most severe GHSA-cjq9-62q9-8jv4 (high: server-side request forgery in Image Optimization). The two-file patch (package.json and pnpm-lock.yaml, sha256 570ac44d237b6641a5087fe57b079aaf61dcb781b6496a721b0224dd17ea60d0) changes next, @next/env and the eight @next/swc-* lock entries, every other lock entry byte-identical. With Node v24.21.0 and pnpm 12.4.2 the frozen install, the peer check, the typecheck and the production build each exited 0 (recorded at 16:07:49Z), after a first frozen install at 12:13Z exited 1 with ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION for the ten packages published on 2026-09-30; no exclusion or policy change was made.", "limitations": [ - "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", - "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", - "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", - "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." + "Bounded recipe checks only: make verify with its PostgreSQL, API and browser stages was not run, so the 2026-09-20 receipts still qualify 16.3.5, not 16.3.6 or 16.3.8.", + "The pnpm store, node_modules and build cache were warm from the earlier attempt; no cold-store install is claimed.", + "This recipe's exposure to the seven advisories was not established; the move removes the vulnerable versions from its lock.", + "Labels 15 to 17 are the version prints of Node and pnpm and a git diff check; they are metadata, not acceptance.", + "No new-host install ran: that is unit U10 on the new distribution. Provider usage of the builder is unknown." ], - "path": "evidence/receipts/catalog-freshness-20260923.json" + "path": "evidence/receipts/nextjs-1638-qualification-20261001.json" }, { - "id": "adoption-macos-hosted-smoke-20260923", + "id": "notification-types-20260929", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "claude-code" ], - "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", "limitations": [ - "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", - "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", - "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", - "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." + "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", + "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", + "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", + "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", + "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", + "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", + "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", + "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", + "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" + "path": "evidence/receipts/notification-types-20260929.json" }, { - "id": "wsl-retrieval-20260920", - "kind": "historical_inventory", + "id": "ns2604-e2e-20261004", + "kind": "native_model_e2e", "component_ids": [ - "ast-grep", - "qmd" + "claude-code", + "codex", + "omniroute" ], - "claim": "Incomplete historical WSL fixture reference: selected receipts report 22 source checks/six commands and 70 QMD lexical checks/17 commands. Offline byte and result consistency can be checked, but missing command argv/cwd, unrecovered raw logs and unsupported historical QMD installation prevent native E2E or adoption acceptance.", + "claim": "The historical 2026-10-04 foundation E2E covered 15 units and 80 slots through native executor observations, independent model review and 22 adjudications. Final labels are READY 18, PARTIAL 31, FAIL 2, BY_DESIGN 12 and INTERIM 17, with zero unjudged slots. Readiness is (18 + 12) / 80 = 37.5%, rounded half up to 38%; all 22 executor/reviewer disagreements were adjudicated, with 14 keeping the reviewer's status and 8 taking the executor's. This publication independently checks and sanitizes the retained status chains; it does not repeat host or provider execution. The adjudication prompt as run, claude-opus-5-5 at max effort with evidence-reviewer run records and timestamps, and the separate 33-slot fix list are retained.", "limitations": [ - "Historical reference only; not live verification, native E2E acceptance or adoption evidence. No new host/native/client acceptance follows from these artifacts.", - "Historical command facts omit argv and cwd. Exact raw-log locations are unavailable; no invocation was reconstructed or represented as observed.", - "The unchanged historical install receipt records npm --ignore-scripts --omit=optional. Future installation must use the current supported recipe with NODE_LLAMA_CPP_SKIP_DOWNLOAD=true and required dependency scripts enabled.", - "Both executed runner versions and the initial URI-checker failure are retained byte-for-byte. The future runner adds command provenance capture without changing past evidence.", - "Receipt-reported 22/70 checks and 6/17 commands describe selected local/synthetic fixtures. Five failed-attempt commands remain separate; no upstream-suite, semantic RAG, production, client or service acceptance.", - "Source currency remains September 20; offline completion and review do not refresh releases or native execution. Whole-task provider usage is unknown and no savings claim is made." + "Host state is as of 2026-10-04 19:10\u201320:10Z only; later adjudication and source merge timestamp 2026-10-04T20:26:16Z do not extend that observation window. Publication and repair perform artifact inspection and structural checks in the owned sandbox; they do not repeat native host probes.", + "Fixes are pending. The 33 PARTIAL/FAIL slots after adjudication are not accepted as ready: 25 repository-plan and 8 host fixes (evidence/artifacts/ns2604-e2e-20261004/fixes.json). Four INTERIM token slots (context-supply, command-output, output-compression, code-index) are held for PR #684, which has not merged. The two open token slots have separate fixes: ccusage (FAIL, plan) and statusline (PARTIAL, host).", + "This is not an upstream benchmark. Native executor observations, independent model judgments and adjudication are separate from upstream tests, structural checks, independent host replication and measured quality or token improvement.", + "The 17 INTERIM slots are held by design. They remain in the denominator and contribute zero to the readiness numerator; the 12 BY_DESIGN slots are intentional dispositions rather than proof that their tools executed.", + "Adjudication: claude-opus-5-5 at effort max (evidence-reviewer), prompt template as run in evidence/artifacts/ns2604-e2e-20261004/adjudication-prompt.md. Run wf_8bf450a9-d1e (17 agents) started 2026-10-04T20:06:45Z and completed 2026-10-04T20:20:30Z; run wf_cdbf70a0-02c (5 agents) started 2026-10-04T20:08:29Z and completed 2026-10-04T20:19:31Z.", + "Historical source command excerpts and raw conversations remain private. Public reasons are bounded to 60 words, fixes preserve the merge's 900-character bound before sanitization, and citations are limited to four per slot. Hashes establish byte identity, not success or adequacy of every native acceptance claim.", + "Reviewer records report the requested gateway model cx/gpt-6.1-sol-max and max effort; no resolved backend model identity is inferred. Independent model review is review of retained evidence, not independent execution on the host.", + "The coordinator registers all eight published files in manifests/evidence.json in the PR's final registry-only commit, and full repository validation passes at that head. Per-file scans and local receipt tests are structural evidence only." ], - "path": "evidence/receipts/wsl-retrieval-20260920.json" + "path": "evidence/receipts/ns2604-e2e-20261004.json" }, { - "id": "gitleaks-macos-memory-bound-20260924", - "kind": "native_cli_e2e", + "id": "omniroute-3851-npm-qualification-20260930", + "kind": "compatibility_attempt", "component_ids": [ - "gitleaks" + "omniroute" ], - "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", "limitations": [ - "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", - "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", - "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", - "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", - "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", - "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", - "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." + "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", + "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", + "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", + "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", + "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", + "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", + "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", + "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", + "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." ], - "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" + "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" }, { - "id": "env-freshness-wsl-ubuntu-main-20260924", - "kind": "artifact_measurement", + "id": "omniroute-claude-callsite-20260930", + "kind": "native_model_e2e", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "duckdb", - "pandas", - "edgartools", - "exchange-calendars", - "vllm" + "claude-code", + "codex", + "omniroute" ], - "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", + "claim": "A native Claude Opus5.5/Max coordinator discovered and read the project dispatcher, invoked the official Sol-Max Codex SDK worker through native Bash, and the retained original shows one unchanged fixture test with exit0.", "limitations": [ - "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", - "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", - "One host; each PC publishes its own report under the same schema.", - "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." + "One bounded read-only callsite and existing arithmetic oracle; no universal quality or SDK winner claim.", + "Coordinator tool scope was Bash/Read/Skill for this acceptance; other coordinator tools and optional MCP services are not qualified.", + "Native Claude and external Codex SDK usage remain separate scopes; parent list-price cost is not complete provider billing.", + "The separate Claude SDK Devin bridge remains failed/unqualified; this native Claude-account coordinator run does not promote it.", + "Provider backend identity, overall task usage, failed/interrupted calls, remote cancellation and token savings remain unverified." ], - "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" + "path": "evidence/receipts/omniroute-claude-callsite-20260930.json" }, { - "id": "vllm-030-switch-20260925", + "id": "omniroute-runtime-enhancements-20260930", "kind": "native_model_e2e", "component_ids": [ - "vllm", - "socraticode" + "codex", + "omniroute", + "context-mode", + "serena", + "dagu" ], - "claim": "vLLM 0.30.0 now serves the production Nemotron-3-Embed-1B-BF16 embeddings on the NativeStack WSL2 RTX 4090 host. Qualified first on an owned instance against production 0.25.0 (identical model files, flags and route), then switched by a systemd drop-in that changes only the binary path; the live service returned identical embeddings and identical top-10 code-index results after the switch.", + "claim": "A scoped native Codex SDK Sol-Max worker completed skill use, selected Context Mode/Serena MCP calls, one Astra-Max native judge and an unchanged oracle through OmniRoute in a successful bounded Dagu graph.", "limitations": [ - "One host (NativeStack, RTX 4090, WSL2 Windows driver 616.64) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", - "Retrieval equality covers 8 gate texts and 5 live code-index queries (top-10), not an aggregate retrieval-quality benchmark.", - "0.30.0 relies on its pinned-memory fallback for WSL (PR #56908); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", - "The 0.25.0 prefix is kept for rollback; the base unit still names it and only the drop-in points at 0.30.0." + "One unchanged arithmetic fixture and bounded integration; no universal highest-quality model, framework or SDK ranking.", + "169 enabled skills were visible through native discovery. This run read using-superpowers and exercised three selected MCP calls; it does not qualify every installed skill, tool, language server, plugin or hook.", + "Native hook support and live web search are configured, but their execution is unmeasured here. No scheduler, schedule, hook or global account configuration was installed by this kit.", + "Native parent and child cumulative usage are separate scopes. Cached input and reasoning are subsets; observer response counters corroborate the same usage and must not be added. Failed/interrupted and complete provider usage, billing and token savings remain unknown.", + "Each observed completed stream also has an unclassified flow_error record. Native results completed; transport is not described as error-free, and requested model/provider labels are not backend identity attestation.", + "The separate Claude SDK Devin bridge retains its failed/unqualified status. Earlier native Claude-to-SDK acceptance is a historical separate callsite, not a rerun against this source.", + "The follow-up native Claude cooperation session was stopped after no confirmed SendMessage/final packet; no peer approval or new owner-contact count is claimed.", + "The isolated kit is a scoped private worker configuration. Live owners retain shared worker policy, host-wide catalogs/defaults and dashboard checkpoint ownership." ], - "path": "evidence/receipts/vllm-030-switch-20260925.json" + "path": "evidence/receipts/omniroute-runtime-enhancements-20260930.json" }, { - "id": "rtk-050-qualification-20260925", - "kind": "native_cli_e2e", + "id": "omniroute-runtime-workers-20260930", + "kind": "native_model_e2e", "component_ids": [ - "rtk" + "codex", + "claude-code", + "omniroute" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", + "claim": "The retained official Codex SDK Sol-Max worker passed one upstream coding fixture, native resume and fresh recovery through the selected OmniRoute Responses lane. Interrupted usage and Claude bridge qualification remain unknown/failed.", "limitations": [ - "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", - "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", - "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", - "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", - "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", - "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", - "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." + "One arithmetic fixture and lifecycle acceptance; no universal SDK or model quality ranking.", + "Actual provider trials invoked the SDK from root, rather than through a Claude coordinator. Native project dispatch skill is supplied and structurally checked; its coordinator invocation remains unmeasured.", + "Native Codex SDK remains the incumbent. The separate frozen three-arm SDK gate remains unresolved.", + "Native gateway requested/returned model labels are not backend attestation.", + "All 136 skills are available in the owned project, with two bodies exercised; full role coverage and optional service acceptance remain incomplete.", + "Native Codex repeated in-process fixtures emit stdout/stderr ResourceWarnings; standalone per-invocation child exit is qualified separately.", + "Complete provider usage, spending, remote cancellation and token savings remain unknown.", + "Public record is sanitized selected actual return fields and independent observations; original private returned artifacts remain outside the checkout." ], - "path": "evidence/receipts/rtk-050-qualification-20260925.json" + "path": "evidence/receipts/omniroute-runtime-workers-20260930.json" }, { - "id": "markitdown-018-qualification-20260925", - "kind": "native_cli_e2e", + "id": "omniroute-sdk-worker-0160-20261003", + "kind": "native_model_e2e", "component_ids": [ - "markitdown" + "codex", + "omniroute", + "context-mode" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", + "claim": "The SDK 0.160.0 B3 review candidate addresses all five PR #628 bot findings and passed twelve of twelve twenty-five-test native loopback fixture invocations, 26 local Claude SDK tests, six observer tests and final Ruff checks. Each reported bug has a retained failing-before-repair command and a passing counterpart. B2 metadata preflight and the earlier builder/coordinator live observations remain historical; no B3 live model task ran. Writing dispatch, live keyed-shell/search qualification and backend effort remain unobserved.", "limitations": [ - "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", - "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", - "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", - "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", - "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", - "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", - "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", - "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." + "Authored loopback SSE fixtures, local Claude SDK tests and observer tests are integration/synthetic checks, not unchanged upstream suites or provider-model trials.", + "The pre-B2 builder live task returned the correct data while two native shell attempts failed in its enclosing Codex sandbox and a Context Mode call failed with Transport closed. A separate coordinator, outside a nested Codex sandbox, observed read-only shell success at that candidate. The repaired bytes have no new live-model run; error-free MCP transport and writing (workspace-write) dispatch remain unqualified at 0.160.0.", + "Plugin disabling is the selected native feature gate. Tests observe direct app-server PID termination and absence of clone directories; descendant cleanup and global non-loopback egress are not observed.", + "Metadata preflight submits no inference. No skill was installed in the new private home and no --require-skill was used; inherited/project catalog discovery does not qualify every skill or tool.", + "Requested model/Max effort and live catalog entry are observed; gateway-forwarded effort, backend model identity, complete provider usage, cost, remote cancellation and token savings remain unknown.", + "September 30 receipts and original observations remain historical. This refresh does not rerun the historical coding oracle, Claude callsite, Astra judge, Dagu graph or unchanged upstream SDK suite.", + "Exactly pinned private SDK preflight/PID attributes require review on every pin move. Stable Python SDK and experimental, unsupported-for-production app-server are separate support boundaries.", + "Expected ResourceWarning messages and argparse rejection output remain in private fixture logs. Long-lived SDK pools, alternative approval modes, alternate binary, credential-variable path, workspace-write live execution and scheduled Dagu acceptance remain unqualified.", + "Initial Ruff failure exits are retained from native task returns, but exact full output/timing was not saved. Repository validators prove declared consistency, not the truth of provider or historical claims.", + "Earlier checkout and alternate-index validation failures are retained as before-B2 attempts. The coordinator force-added the project skill to the real index; B2 acceptance uses that actual checkout index. Historical source archive acceptance does not replace current checkout acceptance.", + "If the cleanup bound expires during retained startup or close, cleanup_status is unresolved and the CLI exits nonzero. Continued deferred cleanup is observed only while the embedding event loop remains running; no post-bound standalone cleanup or remote termination guarantee is made.", + "B3 repairs have local regression/configuration acceptance only: no live model tasks, keyed gateway shell trial, standalone search endpoint trial or native Claude connect fault injection. The native SDK retains its own shielded cleanup/transport bounds; wrapper grace does not override them." ], - "path": "evidence/receipts/markitdown-018-qualification-20260925.json" + "path": "evidence/receipts/omniroute-sdk-worker-0160-20261003.json" }, { - "id": "ai-memory-240-qualification-20260925", + "id": "openresearch-0215-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "openresearch" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", - "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", - "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", - "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", - "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", - "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", - "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" }, { - "id": "mcporter-0141-qualification-20260925", + "id": "otelcol-contrib-0162-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "mcporter" + "opentelemetry-collector-contrib" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", "limitations": [ - "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", - "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", - "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", - "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", - "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", - "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" }, { - "id": "ai-memory-241-qualification-20260925", + "id": "playwright-cli-0122-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "playwright-cli" ], - "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", - "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", - "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", - "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", - "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", - "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", - "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" }, { - "id": "headroom-039-qualification-20260925", + "id": "portable-claude-native-qualification-20260921", "kind": "native_cli_e2e", "component_ids": [ - "headroom" + "claude-code", + "codex", + "prometheus" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, headroom-ai 0.39.0 was qualified against the pinned 0.37.0 and not switched; production stays on 0.37.0. Tag v0.39.0 is 66f426171bab32692cf93d2b656a8e4be9004186 and contains d971f7c3 (#3748; compare behind_by 0). Its manylinux_2_28_x86_64 wheel (14,199,952 bytes, sha256 8c7594012ce0dcd28202af471fb1bd08c6f226c8e10fc6a682b3fb233e809a74) matched PyPI JSON, the PyPI simple API and the GitHub release asset, and was installed with uv into the new prefix tools/headroom-ai-0.39.0; 555 of 555 headroom/ RECORD digests match the verified wheel and `headroom --version` printed 'headroom, version 0.39.0'. The unchanged upstream test file tests/test_transforms/test_content_detector_timestamp_search.py (blob 23b66a27) passed 6 of 6 on 0.39.0 and 4 of 6 on 0.37.0. Through `headroom mcp serve --proxy-url http://127.0.0.1:1` over stdio, 0.39.0 listed headroom_compress, headroom_retrieve and headroom_stats; compressed the 600-line ISO-timestamped fixture A 16820 -> 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", + "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", "limitations": [ - "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", - "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", - "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", - "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", - "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", - "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", - "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", - "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." + "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", + "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", + "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", + "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", + "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." ], - "path": "evidence/receipts/headroom-039-qualification-20260925.json" + "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" }, { - "id": "vllm-030-switch-laptop-20260926", - "kind": "native_model_e2e", + "id": "portable-cli-artifacts", + "kind": "native_cli_e2e", "component_ids": [ - "vllm", - "socraticode", - "ai-memory" + "shellcheck", + "difftastic", + "markitdown", + "ast-grep", + "toon", + "repomix" ], - "claim": "vLLM 0.30.0 was qualified on this laptop (WSL2, RTX 5090 Laptop GPU 24GB) as a drop-in candidate for the production Nemotron-3-Embed-1B-BF16 embedder (vLLM 0.25.0), then switched into production by a systemd --user drop-in that changes only the ExecStart binary path and PATH. Of the six qualification gates: (a) gate-text cosine, (c) batch invariance and (e) ai-memory vector reconstruction passed their pass bars; (b) mini-corpus retrieval and (d) live-code-index retrieval met top-10 SET identity on every query and trial (b: 40/40, d: 20/20 query-trials) but failed their strict top-10 ORDER bar in 3 of 4 trials each; (f) latency is report-only, with no pass bar. A prod-vs-prod control run (candidate never started) shows the same order-swap behavior already exists in production alone: gate b had 6 of 50 mismatched query-trials for the candidate (including an earlier, superseded run) against 10 of 80 for production compared with itself; gate d had 3 of 20 against 4 of 40; production against itself even had a worse single trial (6 of 10 identical) than any candidate trial. Gate (c)'s batch-invariance minimum cosine (0.9999562552851937) was bit-for-bit identical between production alone and the candidate, on the same minimizing text. The production switch itself re-checked only 30 gate texts (cosine 0.9999999999999998 before vs after) and confirmed dependents (ai-memory's vector stream, SocratiCode search); it did not re-run a post-switch top-10 retrieval check.", + "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", "limitations": [ - "One host (laptop, RTX 5090 Laptop GPU 24GB, WSL2) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", - "Retrieval equality covers 30 gate texts (a), a 50-paragraph mini-corpus over 10 queries (b), and 5 live code-index queries (d), not an aggregate retrieval-quality benchmark. Gates b and d met top-10 content-SET identity on every query and trial (b: 40/40 query-trials across the 4 recorded trials, plus full set overlap on one earlier superseded run; d: 20/20 query-trials) but did not meet strict top-10 ORDER identity on every trial (that earlier superseded run's own order count was 9 of 10). Counting every recorded run: gate b had 6 of 50 candidate query-trials with an order mismatch against 10 of 80 for a prod-vs-prod control (candidate never started, run twice -- an earlier, superseded control and the current one -- both included since only the second run's own prod_score diagnostic sub-field needed a fix, not its order counts); gate d had 3 of 20 against 4 of 40. Production compared with itself had a worse single trial (6 of 10 identical, i.e. 4 mismatched) than any candidate trial (worst: 7 of 10 identical, 3 mismatched), so this order-swap behavior is pre-existing production batching noise, not attributable to the 0.30.0 upgrade. The swap-gap range is 3.5e-05 to 8.2e-04 across all 23 recorded swaps (candidate run and both control runs combined), far smaller than the ~0.02-0.05 gaps between other adjacent ranks in the same rankings.", - "The reference receipt's own qualification-time number for this style of check (mini_corpus_top10_overlap, '10/10 on each of 10 queries') is a content-SET overlap claim, not a strict-order claim; it does not report whether its own order matched on every query, so gate (b)'s order tracking here is additional detail, not a comparison against a reported order result. The reference receipt's one reported ORDER number (production_switch.code_queries_identical_top10_order, '5/5') comes from its own post-switch production check with 5 live code queries, a different procedure from this run's own gate (d) qualification check (5 queries against the live SocratiCode index, run before any switch); the two are not directly comparable, and this run made no post-switch top-10 check of its own (see production_switch below: only 30 gate texts and a cosine value were re-checked after the switch) -- unlike the reference, which also re-checked 5 code queries' top-10 order after its own switch (that same code_queries_identical_top10_order, '5/5').", - "0.30.0 relies on its pinned-memory fallback for WSL (vllm-project/vllm PR #56908, the same warning the reference receipt's owned instance logged); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", - "The 0.25.0 unit is kept for rollback; only a drop-in override (nemotron-embed-agent-lab.service.d, ExecStart and PATH only) points production at 0.30.0.", - "A diagnostic-only bug in this run's own gate (b) script (prod_scores_by_idx had score and index reversed) made the order_diff_detail[].prod_score sub-field in every candidate-vs-prod gate (b) file (gate_b_result.json and gate_b_trial{1,2,3}.json) and in the first, superseded prod-vs-prod control unreliable; it did not affect any cosine value, top-10 set, or pass/fail boolean -- only that one diagnostic sub-field -- and was fixed before the second, current prod-vs-prod control run. See raw/ERRATUM-gate_b-order_diff_detail-prod_score-bug.txt.", - "results.json's own generated prose has two internal inconsistencies against its own structured fields, corrected in this receipt from the underlying per-trial gate files (raw/gate_b_result.json, gate_b_trial{1,2,3}.json, gate_d_result.json, gate_d_trial{1,2,3}.json): its gate (b) finding text lists strict-order counts as '9, 7, 9 and 10' where the adjacent structured array and the per-file queries_with_identical_order fields agree on '10, 9, 7 and 9' (same four numbers, wrong order in the prose only); its gate (d) finding text says strict order held on '3, 5, 4 and 4' of 5 queries where the adjacent structured array and the per-file queries_identical_count fields agree on '4, 5, 4 and 4'.", - "The laptop's vllm-0.30.0 prefix pre-existed this run (never pip-installed into by this task, per its own instructions), so no direct_url.json or install log exists on this host to independently re-hash its wheel; the pin identity below is the value the workstation's own switch receipt recorded for the same pinned release, reused for cross-host comparison, not independently re-verified here. What IS independently verified on this host: both production (0.25.0) and the candidate (0.30.0) point at the identical, single model directory (same absolute path in both /v1/models responses), and this host's own sha256 of that directory's model.safetensors is recorded below.", - "independent_review: an independent reviewer subagent checked this receipt against the retained raw files (recomputed the reported counts, re-hashed the model file, compared production's before/after flags) and re-ran no gate; that review produced every correction listed above." + "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", + "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." ], - "path": "evidence/receipts/vllm-030-switch-laptop-20260926.json" + "path": "evidence/receipts/portable-cli-artifacts.json" }, { - "id": "codex-01571-qualification-20260926", + "path": "adoption/receipt.json", + "id": "portable-sdk-adoption-20260919", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "codex", + "duckdb" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", + "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", "limitations": [ - "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", - "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", - "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", - "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", - "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", - "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", - "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", - "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", - "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", - "Linux x86_64 only, one host; nothing here is macOS evidence." - ], - "path": "evidence/receipts/codex-01571-qualification-20260926.json" + "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", + "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", + "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", + "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", + "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", + "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", + "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." + ] }, { - "id": "mcp-inspector-280-qualification-20260926", + "id": "portable-userspace-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "mcp-inspector" + "rtk", + "qmd", + "repomix", + "toon", + "codex", + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", + "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", "limitations": [ - "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", - "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", - "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", - "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", - "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." + "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", + "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", + "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", + "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", + "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", + "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", + "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", + "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", + "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." ], - "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" + "path": "evidence/receipts/portable-userspace-install-20260921.json" }, { "id": "prometheus-3150-qualification-20260926", @@ -3297,127 +3453,174 @@ "path": "evidence/receipts/prometheus-3150-qualification-20260926.json" }, { - "id": "tavily-research-qualification-20260926", + "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", + "id": "qdrant-native-state-recovery-20260919", "kind": "native_cli_e2e", "component_ids": [ - "tavily-cli" + "qdrant", + "restic" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", + "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", "limitations": [ - "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", - "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", - "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", - "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", - "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", - "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", - "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", - "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." + "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", + "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", + "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", + "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", + "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." + ] + }, + { + "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", + "id": "qmd-bm25-retrieval-20260919", + "kind": "native_cli_e2e", + "component_ids": [ + "qmd" ], - "path": "evidence/receipts/tavily-research-qualification-20260926.json" + "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", + "limitations": [ + "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", + "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", + "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", + "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", + "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", + "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", + "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", + "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", + "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", + "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", + "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." + ] }, { - "id": "local-inference-c2-serving-switch-20260926", - "kind": "native_model_e2e", + "id": "restic-local-public-reference-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "llama-cpp" + "restic" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", + "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", "limitations": [ - "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", - "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", - "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", - "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", - "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", - "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", - "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." + "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", + "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", + "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", + "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", + "Credential loss recovery requires separately approved secure key escrow." ], - "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" + "path": "blueprints/us-equities/hosting/backup/receipt.json" }, { - "id": "claude-advisor-usage-scan-20260928", - "kind": "artifact_measurement", + "id": "rtk-050-qualification-20260925", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "rtk" ], - "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", - "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", - "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", - "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", - "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", - "Whether ccusage or ecosystem-token-report count these entries was not checked." + "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", + "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", + "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", + "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", + "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", + "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", + "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." ], - "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" + "path": "evidence/receipts/rtk-050-qualification-20260925.json" }, { - "id": "claude-host-practice-readback-20260928", + "id": "rtk-051-qualification-20261004", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "claude-hud", - "headroom", - "mcporter", - "jcodemunch-mcp", - "agent-browser", - "qmd" + "rtk" ], - "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", + "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed rtk 0.51.0 from the checksummed Linux release archive and returned rtk 0.51.0 with exit 0. rtk verify returned 151/151 inline self-tests with exit 0; 24 hook payloads matched 0.50.0 output and exits (16 rewritten, 0 differing), and 26 permission-deny hook decisions matched with no auto-allows. Direct git/proxy calls succeeded and the existing tracking database was read and later updated. This receipt republishes bounded sanitized facts from the historical host records; it is not a new host or model run.", "limitations": [ - "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", - "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", - "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", - "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", - "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", - "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", - "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." + "No macOS execution; the Darwin archive is artifact-checked only. No upstream cargo test suite was run in these records; rtk verify is the native inline self-test, and the 115-test parser run (14 skipped) is local integration.", + "rtk gain, session and cc-economics are tool self-reports, not provider counts, invoice data or causal savings. Cumulative snapshots are not added together.", + "No fresh live-client acceptance or rtk init re-run was recorded. The --shell compatibility review is source-based; the host hook comparison covered only its 24 payloads and 26 deny entries. Existing exact-output exceptions and dated replay gates remain scoped to their original evidence.", + "gh attestation verification returned HTTP 404 (exit 1); no signature verification or source rebuild was recorded. Later upstream fixes and issue #4404 are follow-ups, not included in this stable pin.", + "NativeStack runs AgentsView 0.44.0 ahead of the repository pin. The 2026-09-27 qualification hold stands: synthetic_ccusage_parity failed, fresh_four_native_lanes is blocked, and the v0.44.0 MCP reported zero Codex counters. The recorded recipe rewire and qualification must pass in a separate follow-up before a repository pin move.", + "RTK replay is unavailable at 0.51.0: vendored child-usage.mjs and the test_token_measurement.py/test_skill_usage.py replay gates require exactly rtk 0.50.0. Skipped replay tests are not coverage; the kernel and gates remain unchanged.", + "The repair-round placeholder guard probes allowed the --shell form rtk test --shell sh 'cat ~/.ssh/config' (exit 0), while rtk proxy cat ~/.ssh/config was blocked (exit 2). These strings were guard input only; no credential reader was executed. This finding belongs to PR #685; the guard is unchanged in this pin move.", + "2026-10-04 control correction after PR #693 CI run 37226622626: v0.51.0 intentionally folds grep file lists (feac25d), so the former byte-unchanged grep control is superseded by counted prefix-plus-tail reconstruction of the exact native path set, byte-identical proxy recovery and a CR-filename verbatim guard fixture (3223a80). The diff half is unchanged. The repaired native fixture passes nine checks over 11 cases / 33 arms; this is local integration of the installed Linux CLI, not new host or upstream Cargo-suite acceptance. Agent-facing expansion of folded paths is unmeasured; an E2E observation of a wrong expanded path leads to adding grep -l/-rl to hook exclusions. Sources and retained red-then-green observations: docs/decisions/2026-10-04-rtk-file-list-control.md.", + "2026-10-04 PR #698 follow-up from the pre-rebase review head 45a7218c0 (rebased onto 38ac9aca1; no branch keeps it): the grep inverse now preserves native engine order, and a CR-free explicit-operand t6c sibling proves that the same grep -l shape folds without the 3223a80 guard signal. Native distinctness and the CR-case LF record count have isolating rejection controls with separate predicate-deletion red runs and restored green runs. The installed Linux CLI passes ten checks across 12 cases / 36 arms / 76 fixture commands plus one version command. Historical shell_sites line 1477 is retained; a dated appended entry corrects the direct-argv locator. Minimal sanitized original red/green outputs from job 035 and new job 042 outputs are retained under evidence/artifacts/rtk-051-file-list-control-20261004/ (README.md and native-controls.json), with the dated decision at docs/decisions/2026-10-04-rtk-file-list-control.md. This is local integration, not a WSL rerun, upstream Cargo-suite, new-host or native-model acceptance; model interpretation remains unmeasured." ], - "path": "evidence/receipts/claude-host-practice-readback-20260928.json" + "path": "evidence/receipts/rtk-051-qualification-20261004.json" }, { - "id": "socraticode-1150-qualification-20260927", + "id": "runtime-sdk-20261003", + "kind": "compatibility_attempt", + "component_ids": [ + "codex" + ], + "claim": "Retained coordinator results for the same-host Codex SDK/CLI 0.160.0 pair report strict-hash installation, matching bundled/npm-platform binaries and completed native-account SDK, gateway SDK and gateway CLI marker canaries. Sanitized outputs, native CLI usage, scripts, hashes, mtimes and discriminating replay controls are now retained; missing original SDK invocation/source and process start/end evidence limit this to a compatibility attempt. The separate A4 record adds fail-closed Linux package-resolution/executable-tree repairs, offline integration controls and a fresh isolated bootstrap of the shipped Codex pin; it does not upgrade the SDK/gateway canary evidence class.", + "limitations": [ + "Existing-host compatibility observations and completed marker canaries only; incomplete original command/timing provenance prevents native_cli_e2e acceptance. Not new-host or model-quality acceptance.", + "Gateway backend model and effort were not read from the call log; configured/requested routes and efforts do not prove backend selection.", + "The shared host launcher, daemon and production prefix still run 0.159.3 until a separate coordinated switch.", + "The 0.159.3 queue, Hindsight and October 1 SDK receipts retain their original scope; they do not qualify 0.160.0.", + "Sanitized native canary stdout/stderr, CLI events/last message and their hashes are retained. SDK caller exit codes 0 are coordinator-verified, not fields in the supplied facts. Gateway backend billed usage and monetary cost remain unrecorded.", + "Original process start/end times and SDK outer executable/cwd are unrecorded. Source mtimes are filesystem observations only. The native heredoc is reconstructed from facts and the retained gateway example, not attested as the original source.", + "SDK last and total usage snapshots match for each canary and must be counted once; cached input and reasoning output are subsets, not additional tokens.", + "No unchanged upstream test suite, shared daemon restart, whole-system cleanup/recovery acceptance, package signature or provenance attestation verification is recorded here. The separate A4 bootstrap record retains local migration/publication fault injection and an isolated native installation.", + "The move is inside the seven-day cooldown recorded in docs/decisions/2026-09-25-workstation-sota-refresh.md, as the prior 0.159.2 and 0.159.3 moves were (docs/decisions/2026-09-27-model-currency.md).", + "This repository change records existing coordinator qualification; it performs no new model run or shared-host switch.", + "The CLI script prints the inner Codex exit but does not propagate it as its own final shell exit; the recorded inner exit 0 is supported by the coordinator facts and completed native events." + ], + "path": "evidence/receipts/runtime-sdk-20261003.json" + }, + { + "id": "runtime-tools", + "path": "evidence/receipts/runtime-tools.json", "kind": "native_cli_e2e", "component_ids": [ - "socraticode" + "gitleaks", + "sandbox-runtime" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", + "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", "limitations": [ - "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", - "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", - "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", - "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", - "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", - "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", - "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", - "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", - "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", - "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", - "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." + "No claim of full security certification.", + "Sandbox network denial configured but not separately exercised." + ] + }, + { + "id": "sec-catalyst-dataset-native-20260920", + "kind": "native_cli_e2e", + "component_ids": [ + "edgartools", + "duckdb" + ], + "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", + "limitations": [ + "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", + "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", + "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", + "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", + "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", + "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", + "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", + "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", + "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." ], - "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" + "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" }, { - "id": "ccusage-20026-qualification-20260927", - "kind": "native_cli_e2e", + "id": "sec-financial-data-20260919", + "kind": "compatibility_attempt", "component_ids": [ - "ccusage" + "duckdb" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", + "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", "limitations": [ - "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", - "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", - "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", - "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", - "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", - "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", - "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", - "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", - "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", - "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", - "New hosts receive this pin only after the next release tag." + "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", + "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", + "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", + "Current API snapshots do not reconstruct historical point-in-time knowledge.", + "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", + "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." ], - "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" + "path": "blueprints/us-equities/financial-data/receipt.json" }, { "id": "skills-listing-restore-20260928", @@ -3463,104 +3666,27 @@ "path": "evidence/receipts/skills-m4-host-removal-20260928.json" }, { - "id": "claude-model-effort-probes-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", - "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", - "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", - "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", - "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." - ], - "path": "evidence/receipts/claude-model-effort-probes-20260929.json" - }, - { - "id": "claude-max-default-effort-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", - "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", - "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", - "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", - "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", - "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", - "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", - "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." - ], - "path": "evidence/receipts/claude-max-default-effort-20260929.json" - }, - { - "id": "claude-project-effort-flag-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", - "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", - "The Ultracode reminder is an indicator, not proof of workflow orchestration.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." - ], - "path": "evidence/receipts/claude-project-effort-flag-20260929.json" - }, - { - "id": "claude-spend-attribution-20260929", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code", - "ccusage" - ], - "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", - "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", - "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", - "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", - "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", - "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", - "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", - "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", - "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", - "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", - "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." - ], - "path": "evidence/receipts/claude-spend-attribution-20260929.json" - }, - { - "id": "wsl-terminal-defaults-20260929", + "id": "socraticode-1150-qualification-20260927", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex" + "socraticode" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, and 2.1.283 in a second distro; Codex 0.157.1; bash 5.2.21; Windows Terminal 1.24.11911.0) the repository now carries the terminal defaults that had been set by hand on the host. Merging the linux-wsl2 Claude Code overlay into the live settings with the repository's merge tool changed nothing (the merge equalled the live file), exactly one Notification group holds the bell command, and its matcher equals the overlay's (the acceptance script checks the matcher because the merge alone cannot see it). The rendered Codex template loads under `codex --strict-config` (the run stops at authentication, never at configuration); a wrong type for `[tui] notifications` and an unknown top-level key are refused, and an unknown key inside `[tui]` is not. The static `adoption_status.py --login-shell` model agreed with the real bash login search in all 512 combinations of three startup files over eight states, a FIFO made bash block (the model calls it unusable and unread), and a control that takes an empty file as absent disagreed in 26. In the second distro, the two per-project Claude profiles of the Windows Terminal settings dropped `suppressApplicationTitle` and gained the quiet bell, the audible-and-taskbar bell style and `COLORTERM` through the profile environment key, with every other profile and setting unchanged; the overlay merged into that distro's Claude settings changed only `$schema`, `hooks` and `preferredNotifChannel`, and its installed hook command printed exactly one BEL. The host practice repository's terminal-profile check now scans the live settings file and passed with 0 findings (the pre-change settings file fails it with 8 findings on the two per-project profiles), and its 22 single-defect controls each failed for exactly their rule.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro plus one second distro (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own evidence, and none of the new files is in the pinned release: a new host gets them only after a release carries them and the manifest is re-pinned.", - "No Windows Terminal tab was opened or measured after the second distro's profile change, and no session of that distro was started or observed after its overlay. Claude Code applies edits to `hooks` to a running session without a restart (settings reference, \"When edits take effect\"), so open sessions there should pick the overlay up; that was not observed, and an audible or taskbar bell for the alert path was not observed by the user in this work.", - "The profile example was checked as JSON against the policy. It declares no `guid`, so Windows Terminal derives a stable one from the folder and profile names (read in its source at the installed tag); it was not loaded into Windows Terminal or installed on any host. The host's deployed fragment is the practice repository's own file.", - "The `--login-shell` check reads file metadata only and models bash's login search from the source of bash 5.3 (shell.c execute_profile_file, builtins/evalfile.c) and the installed 5.2.21 on Linux; it does not run a login shell, read a startup file (so a non-empty file's hand-off is unknown, reported as null), or cover /etc/profile, ~/.bashrc, another shell, --noprofile, POSIX mode, an sh-mode login or macOS's bash 3.2. A special file is reported unusable: bash reads a device as empty and blocks on a FIFO, and both end the search; an unusable ~/.profile is reached but not read, so profile_read is false; HOME is the environment's, else the passwd entry's, else \"/\", the way bash falls back.", - "The Codex acceptance is a configuration load: no Codex notification was produced in this work, `async-question` does not exist at the macOS pin's tag (inert there) and Codex 0.155.1 was not run. Codex does not validate keys inside `[tui]`, so the repository's test pins that table's setting names. A `request_user_input` question notifies as `plan-mode-prompt` at both tags (tool_requests.rs L449-458), so `async-question` adds only the asynchronous questions 0.155.1 lacks.", - "The second distro's `tui` is `fullscreen` by its own setting; `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` was not set, as the upstream documentation makes it a reactive fix and no stale rendering was observed or measured.", - "The host practice repository has no remote (commits fcd291f, 396d1c1, 9500656, c14e8c3, 9f615ad and d0c7d9c); its check and controls are recorded here as results only. The Windows Terminal settings patch and the second distro's merge were host operations on private files, recorded as values.", - "The second distro's Claude Code is 2.1.283, one release before this host's. A scan of the installed binaries (this host's 2.1.282, 2.1.283 and 2.1.284, and that distro's 2.1.283) found the `notifications_disabled` and `terminalSequence` literals and `worker_permission_prompt` emitted from the same two team-inbox call sites in each (the second distro's binary is byte-identical to this host's 2.1.283 by SHA-256 prefix, and its occurrence counts by `grep -a -o` equal this host's scan), so the whole matcher is live there. The changelog dates `terminalSequence` to 2.1.141 and has no entry for `notifications_disabled`, which the settings reference documents. The hook was run in that distro.", - "The merge de-duplicates hooks by command anywhere in the event, so it never changes the matcher of a Notification hook that already runs the bell command: after a later matcher change the old group must be edited or removed first. The acceptance script checks the group count and the matcher for that reason, and a unit test proves it refuses a catch-all group and an older matcher.", - "The Codex `[tui] notifications` list is in the template that a macOS host also renders. Codex keeps its own per-terminal channel there, so needed kinds still notify natively and the turn-complete one stops; at the macOS pin `async-question` does not exist and is inert. This was decided and documented, and not observed on a Mac.", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): codex_tui_strict_check.py counts a run as loaded only with Codex's session banner and exits 1 unless the template loaded and both configuration controls were refused; overlay_noop_check.py also requires disableAllHooks not to be true and labels its verdict as a check of the user settings file only; login_shell_bash_truth.py and the 512-combination test now also compare first_read; the platform page's advice about profiles.defaults was corrected (Windows Terminal ranks a profile's own value, then profiles.defaults, then a fragment's profile). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", + "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", + "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", + "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", + "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", + "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", + "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", + "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", + "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", + "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", + "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." ], - "path": "evidence/receipts/wsl-terminal-defaults-20260929.json" + "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" }, { "id": "socraticode-1160-qualification-20260929", @@ -3584,112 +3710,152 @@ "path": "evidence/receipts/socraticode-1160-qualification-20260929.json" }, { - "id": "omniroute-3851-npm-qualification-20260930", - "kind": "compatibility_attempt", + "id": "sota-convergence-20260922", + "kind": "historical_inventory", "component_ids": [ - "omniroute" + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "apple-container", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codebase-memory-mcp", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "fastapi", + "gitleaks", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "llama-cpp", + "loki", + "markitdown", + "mcp-inspector", + "mcporter", + "nextjs", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "playwright-cli", + "playwright-test", + "poppler", + "postgresql", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "react", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shanraisshan/claude-code-best-practice", + "shellcheck", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", + "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", "limitations": [ - "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", - "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", - "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", - "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", - "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", - "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", - "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", - "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", - "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." + "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", + "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", + "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", + "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." ], - "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" + "path": "evidence/receipts/sota-convergence-20260922.json" }, { - "id": "codex-01592-qualification-20260930", + "id": "syft-1540-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "syft" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", "limitations": [ - "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", - "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", - "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", - "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", - "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", - "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", - "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", - "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", - "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", - "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", - "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", - "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", - "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", - "Linux x86_64 only, one host; nothing here is macOS evidence." + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/codex-01592-qualification-20260930.json" + "path": "evidence/receipts/syft-1540-qualification-20261003.json" }, { - "id": "notification-types-20260929", + "path": "blueprints/us-equities/supply-chain/receipt.json", + "id": "syft-sdk-inventory-20260919", "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "syft" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", + "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", "limitations": [ - "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", - "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", - "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", - "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", - "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", - "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", - "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", - "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", - "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." - ], - "path": "evidence/receipts/notification-types-20260929.json" + "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", + "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", + "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", + "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", + "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", + "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", + "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", + "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", + "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", + "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." + ] }, { - "id": "login-shell-contract-20260929", + "id": "synthetic-catalyst-contract-20260920", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex" + "duckdb" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", + "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", - "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", - "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", - "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", - "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", - "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", - "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", - "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", - "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + "Protocol thresholds are exploratory choices, not fitted or proven optimal.", + "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", + "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", + "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", + "No provider calls, broker orders, new model turn or net token-savings measurement." ], - "path": "evidence/receipts/login-shell-contract-20260929.json" + "path": "blueprints/us-equities/catalyst-experiment/receipt.json" }, { - "id": "cross-family-review-terminal-lane-20260930", - "kind": "native_model_e2e", + "id": "tavily-research-qualification-20260926", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "omniroute", - "claude-code" + "tavily-cli" ], - "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", - "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", - "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", - "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", - "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", - "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", - "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." + "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", + "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", + "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", + "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", + "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", + "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", + "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", + "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." ], - "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" + "path": "evidence/receipts/tavily-research-qualification-20260926.json" }, { "id": "terminal-experience-20260928", @@ -3716,497 +3882,480 @@ "path": "evidence/receipts/terminal-experience-20260928.json" }, { - "id": "codex-shell-snapshot-cleanup-20260930", - "kind": "artifact_measurement", + "id": "token-native-retained-functional-20260920", + "path": "evidence/receipts/token-native-retained-functional-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "codex" + "context-hub", + "headroom", + "mcp-inspector", + "promptfoo", + "worktrunk" ], - "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", + "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", "limitations": [ - "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", - "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", - "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", - "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." - ], - "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" + "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", + "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", + "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", + "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", + "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", + "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." + ] }, { - "id": "agent-browser-lna-20260930", + "id": "token-practice-artifacts-20260920", "kind": "artifact_measurement", "component_ids": [ "agent-browser", - "playwright-test" - ], - "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", - "limitations": [ - "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", - "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", - "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", - "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." - ], - "path": "evidence/receipts/agent-browser-lna-20260930.json" - }, - { - "id": "guard-k3-verification-20260930", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code" + "ast-grep", + "edgartools", + "markitdown", + "qmd", + "repomix", + "rtk", + "socraticode", + "syft", + "toon" ], - "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", + "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", "limitations": [ - "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", - "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", - "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", - "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1064,7 +1068,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.79.0", + "version": "0.80.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1079,20 +1083,21 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "worktrunk-0800-qualification-20261003" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" ], - "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.161.0", + "version": "0.162.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1112,13 +1117,15 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "otelcol-contrib-0162-qualification-20261003" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib" + "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The recorded scratch version and validate commands exited 0; no host service was switched. Prior 0.161.0 receipts retain their original scope. The dated upstream metadata is in catalogs/landscape/upstream-snapshot.json." }, { "id": "prometheus", @@ -1226,7 +1233,7 @@ "upstream_sources": [ "https://github.com/grafana/grafana" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head." }, { "id": "alertmanager", @@ -1401,10 +1408,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.52.0", + "version": "1.54.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1413,13 +1420,14 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "syft-1540-qualification-20261003" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.52.0" + "https://github.com/anchore/syft/releases/tag/v1.54.0" ], - "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." }, { "id": "alpaca-py", @@ -1682,7 +1690,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.319", + "version": "1.108.327", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1695,7 +1703,7 @@ } } ], - "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1708,13 +1716,14 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "jcodemunch-1108327-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", - "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", + "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" ], - "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 7417ad5a889342f0c082d82fa4b4345c987c6f32 Mon Sep 17 00:00:00 2001 From: Scout Date: Mon, 5 Oct 2026 04:06:08 -0400 Subject: [PATCH 35/50] Currency W1 fix 4: dated edition scope for the rebound pin_source locators; jcodemunch rows bound to their versions - catalogs/foundation/new-wsl-architecture-20261001.json edition.scope now labels the 2026-10-04 citation refresh as history, and dates the 2026-10-05 rebinding against this PR's commit 5c4f53f05. All 53 distinct stack locators resolve at that commit. The explorer prints this sentence under its edition header. The rendered-edition regression in tests/test_ecosystem_manifest.py now covers it: it failed on the stale sentence and passes now. The handbook pair is regenerated, and its receipt records the write and check results. - In docs/token-efficiency-stack.json, the jcodemunch-mcp row's returned_result_summary and lifecycle_summary now attribute the historical observations to 1.108.319. The selected 1.108.327 is scoped to the W1 receipt's scratch/synthetic qualification, with no host switch or full lifecycle recertification. This mirrors the round-3 Collector binding. The Collector regression now covers this row: it failed on both fields and passes now. Main is not merged in this round. The handbook overlap with #724 is handled at the coordinator's refresh. Built by GPT-6.1 Sol through the packaged SDK worker (round 642-fix4); committed by the coordinator. The builder's runs each exited 0: - the new_wsl suites (347 tests); - test_ecosystem_manifest and test_stack_lifecycle (87); - test_evidence_manifest; - build_new_wsl_handbook --write and --check; - build_ecosystem --check; - validate, evidence_manifest --check and git diff --check. Co-Authored-By: Claude Opus 5.5 --- .../new-wsl-architecture-20261001.json | 2 +- docs/new-wsl-handbook.json | 2 +- docs/new-wsl-handbook.md | 2 +- docs/token-efficiency-stack.json | 4 +- .../new-wsl-handbook-20261001/receipt.json | 30 ++++++++++++-- manifests/evidence.json | 20 +++++----- tests/test_ecosystem_manifest.py | 40 ++++++++++++------- 7 files changed, 68 insertions(+), 32 deletions(-) diff --git a/catalogs/foundation/new-wsl-architecture-20261001.json b/catalogs/foundation/new-wsl-architecture-20261001.json index cc9b17723..077400cbc 100644 --- a/catalogs/foundation/new-wsl-architecture-20261001.json +++ b/catalogs/foundation/new-wsl-architecture-20261001.json @@ -5,7 +5,7 @@ "date_utc": "2026-10-01", "base_commit": "5597f9fae2c6148037a74b4e73d2c55fc11c9ff6", "close_only_when_sha256": "fe472bda74bd861d732a83948477386fd25605018d81560463c01b8ecd175d3c", - "scope": "The install manifest for a new WSL2 distribution: one row per layer of the two maintained catalogs (the 20 foundation layers of catalogs/foundation/manifest.json and the 12 us-equities layers of catalogs/landscape/research-state.json) plus cross-cutting rows for the distribution itself, the runtime workers, the GPT-6 harnesses, the credential practice and the convergence practice. Each row carries the source host's selection of record at its pin of record (what the catalogs select and this host's stack pins or installs: a record of the source host, not a merit result), or a layer's verdict selection that the source host never installed, the verdict under the rules below, the row's evidence class (none_recorded when any winner's acceptance is none_recorded; otherwise a class that at least one winner's acceptance carries, and where the winners carry several, the one listed last in the policy table; stronger evidence for one winner stays in the reasons), the reasons with their sources, and the ordered steps a session runs on the new distribution. The new distribution's selection is decided by the repositories' own quality, not by this host's installed state, pins or integration holds: where the verdict is comparison_required the merit winner is undetermined, the row names the arms, each arm installs fresh by its upstream command, and the comparison's result selects. A winner's acceptance class describes a run that the cited source, or one file that source links, shows was run on a host and what it returned; a check that is only prescribed, planned, not run or failed is none_recorded. Every evidence class describes historical evidence from the source host: a new distribution collects its own evidence, and nothing in this edition is acceptance on it. Upstream currency was read on 2026-10-01 with one bounded read per pinned winner (the GitHub releases page, or the named registry page where the project publishes no GitHub release). Paths not yet on main are cited through their pull request and are not hashed. Citation refresh of 2026-10-04: the pin_source locators resolve the current component entries at main 14048b840; this edition retains its dated pins, which may differ from those entries and are displayed as pin drift. Original sources for the changed dated pins: codex: https://github.com/seathatflowsinourveins/native-agent-stack/blob/5597f9fae2c6148037a74b4e73d2c55fc11c9ff6/manifests/stack.json#L297; rtk: https://github.com/seathatflowsinourveins/native-agent-stack/blob/5597f9fae2c6148037a74b4e73d2c55fc11c9ff6/manifests/stack.json#L822; mcporter: https://github.com/seathatflowsinourveins/native-agent-stack/blob/5597f9fae2c6148037a74b4e73d2c55fc11c9ff6/manifests/stack.json#L625; nextjs: https://github.com/seathatflowsinourveins/native-agent-stack/blob/5597f9fae2c6148037a74b4e73d2c55fc11c9ff6/manifests/stack.json#L1715.", + "scope": "The install manifest for a new WSL2 distribution: one row per layer of the two maintained catalogs (the 20 foundation layers of catalogs/foundation/manifest.json and the 12 us-equities layers of catalogs/landscape/research-state.json) plus cross-cutting rows for the distribution itself, the runtime workers, the GPT-6 harnesses, the credential practice and the convergence practice. Each row carries the source host's selection of record at its pin of record (what the catalogs select and this host's stack pins or installs: a record of the source host, not a merit result), or a layer's verdict selection that the source host never installed, the verdict under the rules below, the row's evidence class (none_recorded when any winner's acceptance is none_recorded; otherwise a class that at least one winner's acceptance carries, and where the winners carry several, the one listed last in the policy table; stronger evidence for one winner stays in the reasons), the reasons with their sources, and the ordered steps a session runs on the new distribution. The new distribution's selection is decided by the repositories' own quality, not by this host's installed state, pins or integration holds: where the verdict is comparison_required the merit winner is undetermined, the row names the arms, each arm installs fresh by its upstream command, and the comparison's result selects. A winner's acceptance class describes a run that the cited source, or one file that source links, shows was run on a host and what it returned; a check that is only prescribed, planned, not run or failed is none_recorded. Every evidence class describes historical evidence from the source host: a new distribution collects its own evidence, and nothing in this edition is acceptance on it. Upstream currency was read on 2026-10-01 with one bounded read per pinned winner (the GitHub releases page, or the named registry page where the project publishes no GitHub release). Paths not yet on main are cited through their pull request and are not hashed. Historical citation refresh (2026-10-04): the pin_source locators were recorded against main 14048b840. Citation rebinding (2026-10-05, PR #642 fix round 3): the pin_source locators resolve the owning component version and model revision lines of manifests/stack.json at PR #642 commit 5c4f53f05 (merge base 4c897418f plus W1 edits); this edition retains its dated pins, which may differ from those entries and are displayed as pin drift. Original sources for the changed dated pins: codex: https://github.com/seathatflowsinourveins/native-agent-stack/blob/5597f9fae2c6148037a74b4e73d2c55fc11c9ff6/manifests/stack.json#L297; rtk: https://github.com/seathatflowsinourveins/native-agent-stack/blob/5597f9fae2c6148037a74b4e73d2c55fc11c9ff6/manifests/stack.json#L822; mcporter: https://github.com/seathatflowsinourveins/native-agent-stack/blob/5597f9fae2c6148037a74b4e73d2c55fc11c9ff6/manifests/stack.json#L625; nextjs: https://github.com/seathatflowsinourveins/native-agent-stack/blob/5597f9fae2c6148037a74b4e73d2c55fc11c9ff6/manifests/stack.json#L1715.", "verdict_rules": [ "a layer is \"closed\" only when all five close_only_when items of research-state.json hold; otherwise \"selection_of_record_open\" with the missing items named", "the winner cell carries the source host's selection of record at its pin of record (manifests/stack.json or adoption/pins-linux-x86_64.json for stack components; catalogs/us-equities/runtime-target.json for the engine and brokers; the adoption profile recipes for install commands), or a layer's verdict selection the source host never installed at the verdict's baseline version; neither is a merit result", diff --git a/docs/new-wsl-handbook.json b/docs/new-wsl-handbook.json index 1daeb90db..162e8c965 100644 --- a/docs/new-wsl-handbook.json +++ b/docs/new-wsl-handbook.json @@ -7542,7 +7542,7 @@ }, { "path": "catalogs/foundation/new-wsl-architecture-20261001.json", - "sha256": "b8ce6bc5d6c11390be3e2e174be820ee063d5d4b43a2f8eb07fdd0be2253f0e9" + "sha256": "58871b0fa9dbcc8b2b6582eb0f7e197e1f5e7e56e8669aa2b9bae61c94aba163" }, { "path": "catalogs/landscape/research-state.json", diff --git a/docs/new-wsl-handbook.md b/docs/new-wsl-handbook.md index f60dd098f..360cf4b19 100644 --- a/docs/new-wsl-handbook.md +++ b/docs/new-wsl-handbook.md @@ -2125,7 +2125,7 @@ Reference edition: [catalogs/foundation/new-wsl-architecture-20261001.json](../c | [adoption/manifest.json](../adoption/manifest.json) | `4aedebfa4528918a008d99c2ef6044b307a6fcf7646afe8857ee8db936241714` | | [adoption/new-wsl-profile.json](../adoption/new-wsl-profile.json) | `9abbb77704c9208d049518368f97786d1ef09060d420c5aebf183ee4575e7632` | | [adoption/platforms/linux-wsl2-new-distro.md](../adoption/platforms/linux-wsl2-new-distro.md) | `c496b08e4b26cd1f29b2057109028b341dc72ab17229e15f6502f57e3aa1ec53` | -| [catalogs/foundation/new-wsl-architecture-20261001.json](../catalogs/foundation/new-wsl-architecture-20261001.json) | `b8ce6bc5d6c11390be3e2e174be820ee063d5d4b43a2f8eb07fdd0be2253f0e9` | +| [catalogs/foundation/new-wsl-architecture-20261001.json](../catalogs/foundation/new-wsl-architecture-20261001.json) | `58871b0fa9dbcc8b2b6582eb0f7e197e1f5e7e56e8669aa2b9bae61c94aba163` | | [catalogs/landscape/research-state.json](../catalogs/landscape/research-state.json) | `fe142c1b8b8ec8b92d69ec5971d68028225899c101ffc43cea618883b119332a` | | [catalogs/landscape/us-equities.json](../catalogs/landscape/us-equities.json) | `cf441d393b1a1ee49c57d62592e2c7477de2003ca40aa9e1933a6c9b28d4a618` | | [evidence/artifacts/new-wsl-clean-install-selection-20261001/ownership.json](../evidence/artifacts/new-wsl-clean-install-selection-20261001/ownership.json) | `ad86d1d4c2cddeeebc2bc327fddc897b161cec092706db24c779603321246bc7` | diff --git a/docs/token-efficiency-stack.json b/docs/token-efficiency-stack.json index e47cea864..2d35a172c 100644 --- a/docs/token-efficiency-stack.json +++ b/docs/token-efficiency-stack.json @@ -1740,7 +1740,7 @@ "install_note": "Dedicated workflow section in the linked recipe; install only the selected scope.", "statistics_note": "Upstream savings estimate; keep its own scope." }, - "returned_result_summary": "Foundation 15:50:40 UTC default-index snapshot returned 49,700 retained estimated saved tokens. The two fresh native foundation MCP processes each reported 0\u21924,970; those subsets are already represented in the shared ledger and are not provider savings. 2026-09-20 14:55:58.940776 UTC upstream get_session_stats returned session_calls 0, session_tokens_saved 0 and total_tokens_saved 39,760 in the default index, generation 2. The earlier 14:18:33.801 UTC total was 29,820; both snapshots include verification retrievals. Native Codex and Claude retrieved the requested exact function. An isolated clean-prefix one-file, 12-symbol index returned exact unique_json before and after server restart; its separate estimate moved 0 \u2192 2,781 \u2192 5,562.", + "returned_result_summary": "Historical 1.108.319 observation: Foundation 15:50:40 UTC default-index snapshot returned 49,700 retained estimated saved tokens. The two fresh native foundation MCP processes each reported 0\u21924,970; those subsets are already represented in the shared ledger and are not provider savings. 2026-09-20 14:55:58.940776 UTC upstream get_session_stats returned session_calls 0, session_tokens_saved 0 and total_tokens_saved 39,760 in the default index, generation 2. The earlier 14:18:33.801 UTC total was 29,820; both snapshots include verification retrievals. Native Codex and Claude retrieved the requested exact function. An isolated clean-prefix one-file, 12-symbol index returned exact unique_json before and after server restart; its separate estimate moved 0 \u2192 2,781 \u2192 5,562. Selected 1.108.327; qualified on scratch/synthetic validation only (evidence/receipts/jcodemunch-1108327-qualification-20261003.json:11-15). W1 1.108.327 qualification is limited to this new receipt; no host switch or full lifecycle recertification occurred.", "session_statistics": { "availability": "same_process_upstream_estimate", "value": { @@ -1826,7 +1826,7 @@ "codex": "One native task:search_symbols/get_symbol_source pass, source correct. Foundation 15:46 seven-call native task also passed exact source fidelity, with 219,725 returned tokens matched by Loki and Prometheus; no Desktop reconnect/resume.", "claude": "One native task:search_symbols/get_symbol_source pass, source correct. Foundation 15:49 seven-call native task passed source/content but not strict final JSON; 254,111 tokens matched Loki and had 77,317 missing in Prometheus. The later zero-tool readiness run is only observation evidence." }, - "lifecycle_summary": "install: accepted_within_scope; use: accepted_within_scope; persistence: accepted_within_scope; restart: accepted_within_scope; cleanup: accepted_within_scope; recovery: not_established. Selected local index persisted across direct/native-client retrieval. No watcher, cross-repository auto-index or paid summaries.", + "lifecycle_summary": "Historical 1.108.319 lifecycle: install: accepted_within_scope; use: accepted_within_scope; persistence: accepted_within_scope; restart: accepted_within_scope; cleanup: accepted_within_scope; recovery: not_established. Selected local index persisted across direct/native-client retrieval. No watcher, cross-repository auto-index or paid summaries. Selected 1.108.327; qualified on scratch/synthetic validation only (evidence/receipts/jcodemunch-1108327-qualification-20261003.json:11-15). W1 1.108.327 qualification is limited to this new receipt; no host switch or full lifecycle recertification occurred.", "source_paths": [ "recipes/README.md", "blueprints/token-native-focus/saturation-audit.json", diff --git a/evidence/artifacts/new-wsl-handbook-20261001/receipt.json b/evidence/artifacts/new-wsl-handbook-20261001/receipt.json index 7edd8a56d..92dd07d72 100644 --- a/evidence/artifacts/new-wsl-handbook-20261001/receipt.json +++ b/evidence/artifacts/new-wsl-handbook-20261001/receipt.json @@ -6,8 +6,8 @@ "generator_sha256": "8a66e5eebe1429924d62545e2eee389f1fdd58e6c2f679d8280cec3e99027cf8", "profile_sha256": "9abbb77704c9208d049518368f97786d1ef09060d420c5aebf183ee4575e7632", "outputs": { - "docs/new-wsl-handbook.md": "328d76d670dee6620e3c4f0e036e9af5a97a26a98c5571793493bd67321fb67a", - "docs/new-wsl-handbook.json": "bfa36dd4aaa5a49ddd723cde6d9d21d45de3695be26835509abce692101c95fa" + "docs/new-wsl-handbook.md": "1eb9a9cb1b3d8f10bbfffb8eea33a2f67a2500a208e3b77e59fed73d680f4dae", + "docs/new-wsl-handbook.json": "a93532300fc174884d0d6feba2466780f87b300ad21362a5daa0b62a2e49c31c" }, "inventory": { "layers": 37, @@ -114,6 +114,30 @@ "docs/new-wsl-handbook.json": "bfa36dd4aaa5a49ddd723cde6d9d21d45de3695be26835509abce692101c95fa", "docs/new-wsl-handbook.md": "328d76d670dee6620e3c4f0e036e9af5a97a26a98c5571793493bd67321fb67a" } + }, + { + "date_utc": "2026-10-05", + "recorded_at_utc": "2026-10-05T07:53:06Z", + "scope": "PR #642 fix round 4: dated architecture citation scope; local regeneration only, with no host or upstream acceptance claimed.", + "command": "python3 scripts/build_new_wsl_handbook.py --write", + "native_exit_code": 0, + "returned_status": "written", + "returned_outputs": { + "docs/new-wsl-handbook.json": "a93532300fc174884d0d6feba2466780f87b300ad21362a5daa0b62a2e49c31c", + "docs/new-wsl-handbook.md": "1eb9a9cb1b3d8f10bbfffb8eea33a2f67a2500a208e3b77e59fed73d680f4dae" + } + }, + { + "date_utc": "2026-10-05", + "recorded_at_utc": "2026-10-05T07:53:07Z", + "scope": "PR #642 fix round 4: dated architecture citation scope; local generated-byte verification only, with no host or upstream acceptance claimed.", + "command": "python3 scripts/build_new_wsl_handbook.py --check", + "native_exit_code": 0, + "returned_status": "passed", + "returned_outputs": { + "docs/new-wsl-handbook.json": "a93532300fc174884d0d6feba2466780f87b300ad21362a5daa0b62a2e49c31c", + "docs/new-wsl-handbook.md": "1eb9a9cb1b3d8f10bbfffb8eea33a2f67a2500a208e3b77e59fed73d680f4dae" + } } ], "failed_conditions_retained": [ @@ -194,5 +218,5 @@ "docs/decisions/2026-10-03-currency-wave-w1.md", "docs/decisions/2026-10-04-2604-e2e-fix-wave.md" ], - "repair_round": "this PR: bounded job 058, 2026-10-04; hashes regenerated in place, destination acceptance remains owed; PR #642 fix round 2, 2026-10-05: regenerated qualification limits and release holds, hashes refreshed, destination acceptance pending; PR #642 fix round 3: rebound architecture pin citations, refreshed output hashes, separately recorded native write/check results" + "repair_round": "this PR: bounded job 058, 2026-10-04; hashes regenerated in place, destination acceptance remains owed; PR #642 fix round 2, 2026-10-05: regenerated qualification limits and release holds, hashes refreshed, destination acceptance pending; PR #642 fix round 3: rebound architecture pin citations, refreshed output hashes, separately recorded native write/check results; PR #642 fix round 4: dated architecture citation scope, refreshed output hashes, separately recorded native write/check results" } diff --git a/manifests/evidence.json b/manifests/evidence.json index ff7eebc35..0b6581fed 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -15727,8 +15727,8 @@ }, { "path": "catalogs/foundation/new-wsl-architecture-20261001.json", - "sha256": "b8ce6bc5d6c11390be3e2e174be820ee063d5d4b43a2f8eb07fdd0be2253f0e9", - "bytes": 308538 + "sha256": "58871b0fa9dbcc8b2b6582eb0f7e197e1f5e7e56e8669aa2b9bae61c94aba163", + "bytes": 308759 }, { "path": "catalogs/foundation/new-wsl-layer-crosswalk-20261001.json", @@ -17032,12 +17032,12 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "bfa36dd4aaa5a49ddd723cde6d9d21d45de3695be26835509abce692101c95fa", + "sha256": "a93532300fc174884d0d6feba2466780f87b300ad21362a5daa0b62a2e49c31c", "bytes": 654194 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "328d76d670dee6620e3c4f0e036e9af5a97a26a98c5571793493bd67321fb67a", + "sha256": "1eb9a9cb1b3d8f10bbfffb8eea33a2f67a2500a208e3b77e59fed73d680f4dae", "bytes": 355757 }, { @@ -17132,8 +17132,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "0de081f557449d7d1c8d36c1daf9a66bb7d8f735a16b7d8b9ba739b7cdda0d81", - "bytes": 593139 + "sha256": "4514b17518be902f7eb43df462a3280cc2299ac81cded6440e4b9d7a93a3b300", + "bytes": 593723 }, { "path": "docs/token-efficiency-stack.md", @@ -39092,8 +39092,8 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "6bd050686f2d4a1850196d4eeccdbe6241db58285fbebcd51bd216922f063722", - "bytes": 8630 + "sha256": "68240222e7ad203b0ce68b2d5f852ae34b73c3edd393006ff0514dab71ccda11", + "bytes": 10009 }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/slot-state-and-core-recipes.json", @@ -53632,8 +53632,8 @@ }, { "path": "tests/test_ecosystem_manifest.py", - "sha256": "48186b4f263f510f02ef489e72f40eb9023a981285f5f702f4c4e657a175eab4", - "bytes": 141162 + "sha256": "03900b5be52d6e13a4a15ae46347eddf5eb09d3324ff973a967455fe40b18202", + "bytes": 142162 }, { "path": "tests/test_effort_default_guard.py", diff --git a/tests/test_ecosystem_manifest.py b/tests/test_ecosystem_manifest.py index d703df568..3ed8e9926 100644 --- a/tests/test_ecosystem_manifest.py +++ b/tests/test_ecosystem_manifest.py @@ -2134,6 +2134,10 @@ def repository_page_data(self): def test_repository_architecture_links_cite_the_owners_current_pin_fields(self): """A drifted edition still links the owner's current version, or the model revision.""" data = self.repository_page_data() + scope = data["architecture"]["edition"]["scope"] + self.assertIn("Historical citation refresh (2026-10-04)", scope) + self.assertIn("Citation rebinding (2026-10-05, PR #642 fix round 3)", scope) + self.assertIn("manifests/stack.json at PR #642 commit 5c4f53f05", scope) stack = json.loads((ROOT / "manifests/stack.json").read_text(encoding="utf-8")) components = {row["id"]: row for row in stack["components"]} models = {row["id"]: row for row in stack["models"]} @@ -2165,22 +2169,30 @@ def test_repository_architecture_links_cite_the_owners_current_pin_fields(self): self.assertEqual(sorted(set(errors)), []) def test_repository_collector_statuses_name_their_historical_pin(self): - """The current-pin card attributes September observations to deployed 0.161.0.""" + """Moved token rows attribute observations and lifecycle statuses to their historical pins.""" data = self.repository_page_data() - row = next(item for item in data["efficiency"]["topic"]["rows"] - if item["component_id"] == "opentelemetry-collector-contrib") + rows = {row["component_id"]: row for row in data["efficiency"]["topic"]["rows"]} stack = json.loads((ROOT / "manifests/stack.json").read_text(encoding="utf-8")) - selected = next(item["version"] for item in stack["components"] - if item["id"] == row["component_id"]) - self.assertEqual(row["version"], selected) - for field, historical_fact in (("returned_result_summary", "2026-09-20"), - ("lifecycle_summary", "install: observed_installed")): - with self.subTest(field=field): - text = row[field] - self.assertIn("0.161.0", text) - self.assertLess(text.index("0.161.0"), text.index(historical_fact)) - self.assertIn("historical", text[:text.index(historical_fact)].lower()) - self.assertIn("host acceptance pending", text) + selected_pins = {item["id"]: item["version"] for item in stack["components"]} + for identifier, historical_pin, install_fact in ( + ("opentelemetry-collector-contrib", "0.161.0", "install: observed_installed"), + ("jcodemunch-mcp", "1.108.319", "install: accepted_within_scope")): + row = rows[identifier] + selected = selected_pins[identifier] + self.assertEqual(row["version"], selected) + for field, historical_fact in (("returned_result_summary", "2026-09-20"), + ("lifecycle_summary", install_fact)): + with self.subTest(component=identifier, field=field): + text = row[field] + self.assertIn(historical_pin, text) + self.assertLess(text.index(historical_pin), text.index(historical_fact)) + self.assertIn("historical", text[:text.index(historical_fact)].lower()) + self.assertIn(f"Selected {selected}; qualified on scratch/synthetic validation only", text) + if identifier == "opentelemetry-collector-contrib": + self.assertIn("host acceptance pending", text) + else: + self.assertIn("evidence/receipts/jcodemunch-1108327-qualification-20261003.json", text) + self.assertIn("no host switch or full lifecycle recertification occurred", text) def test_the_repository_architecture_record_keeps_the_acceptance_invariant(self): """The record states the rule every winner's acceptance class follows and the dated review that corrected From f0d20e699de9a9ab6b787c89aac6db787c11d30e Mon Sep 17 00:00:00 2001 From: Scout Date: Mon, 5 Oct 2026 04:06:09 -0400 Subject: [PATCH 36/50] Hot-file protocol: reset manifests/evidence.json manifests/stack.json to the merge base before the final hot-file commit Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 6018 +++++++++++++++++++-------------------- manifests/stack.json | 81 +- 2 files changed, 2923 insertions(+), 3176 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 0b6581fed..3952640a2 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -2,791 +2,518 @@ "schema_version": 1, "receipts": [ { - "id": "adaptive-paper-practice-20260921", + "id": "memory-lifecycle-probe-20260921", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "claude-code", - "codex" + "ai-memory" ], - "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", + "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", "limitations": [ - "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", - "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", - "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", - "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." + "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", + "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", + "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", + "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", + "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", + "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." ], - "path": "evidence/receipts/adaptive-paper-practice-20260921.json" + "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" }, { - "id": "adoption-macos-hosted-smoke-20260922", - "kind": "native_cli_e2e", + "id": "catalog-runtime-review-20260921", + "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "dagu" ], - "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", + "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", "limitations": [ - "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", - "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", - "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", - "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", - "socraticode is the profile's documented unpinned skip and was not installed." + "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", + "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", + "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" + "path": "evidence/receipts/catalog-runtime-review-20260921.json" }, { - "id": "adoption-macos-hosted-smoke-20260923", + "id": "catalog-clean-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "codex" ], - "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", + "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", "limitations": [ - "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", - "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", - "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", - "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." + "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", + "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", + "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" + "path": "evidence/receipts/catalog-clean-install-20260921.json" }, { - "id": "agent-browser-lna-20260930", - "kind": "artifact_measurement", + "id": "dashboard-gap-resolution-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "playwright-test" + "ai-memory", + "codex", + "claude-code", + "agentsview", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo", + "vllm" ], - "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", + "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", "limitations": [ - "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", - "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", - "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", - "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." + "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", + "Fresh PreCompact event and active Desktop session end remain unforced.", + "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", + "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", + "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", + "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." ], - "path": "evidence/receipts/agent-browser-lna-20260930.json" + "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" }, { - "id": "ai-memory-240-qualification-20260925", + "id": "dashboard-render-e2e-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "ai-memory", + "qdrant", + "socraticode", + "serena", + "agentsview", + "dagu", + "omniroute", + "agent-browser", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", + "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", - "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", - "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", - "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", - "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", - "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", - "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." + "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", + "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", + "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", + "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", + "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", + "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", + "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." ], - "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" + "path": "evidence/receipts/dashboard-render-e2e-20260921.json" }, { - "id": "ai-memory-241-qualification-20260925", + "id": "hf-memory-models-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "ai-memory", + "socraticode", + "vllm", + "grafana" ], - "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", + "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", - "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", - "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", - "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", - "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", - "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", - "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." + "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", + "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", + "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", + "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", + "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", + "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." ], - "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" + "path": "evidence/receipts/hf-memory-models-20260921.json" }, { - "path": "blueprints/us-equities/state-recovery/memory/receipt.json", - "id": "ai-memory-native-state-recovery-20260919", + "id": "native-memory-rag-alignment-20260921", "kind": "native_cli_e2e", "component_ids": [ "ai-memory", - "restic" + "socraticode", + "qdrant", + "qmd", + "vllm", + "grafana", + "loki" ], - "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", + "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", "limitations": [ - "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", - "38 pages table rows include historical versions, not 38 current pages.", - "Native backup excludes raw/, model caches, logs and external native session transcripts.", - "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", - "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", - "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." - ] + "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", + "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", + "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", + "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", + "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", + "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", + "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." + ], + "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" }, { - "path": "blueprints/us-equities/order-contract/receipt.json", - "id": "alpaca-offline-order-contract-20260919", + "id": "native-returned-results-20260921", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py" + "codex", + "claude-code", + "rtk", + "context-mode", + "qmd", + "serena", + "ai-memory", + "socraticode", + "qdrant", + "agentsview", + "grafana", + "loki", + "prometheus", + "dagu", + "ntfy", + "omniroute", + "agent-browser", + "promptfoo", + "headroom", + "jcodemunch-mcp" ], - "claim": "Installed alpaca-py request models silently dropped synthetic advanced fields; this explicit broker-disconnected basic-intent boundary rejected those inputs and eight additional negative cases while preserving canonical decimal strings.", + "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", "limitations": [ - "Local contract is not wired into unrelated SDK calls or existing workers; explicit future adapter adoption is required.", - "No broker account, key, asset lookup, risk approval, live/paper order or provider wire behavior was exercised.", - "Whole-share basic create-intent subset only; advanced, replacement, cancellation, retries, order journals and reconciliation remain gated.", - "Input representation cap and symbol/client-ID syntax are local conservative policies, not provider or risk authorization.", - "Python SDK float conversion is observed; the canonical exact decimal envelope is deliberately not serialized through those float fields.", - "JavaScript advanced support is pinned-source evidence only; no alternative SDK was installed or executed.", - "Python audit events and the Linux namespace substantiate this scoped probe, not a universal sandbox or macOS acceptance.", - "Canonical content hashes do not establish client-ID uniqueness, deduplication or safe retry semantics.", - "No token-saving claim or model inference belongs to this deterministic task." - ] + "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", + "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", + "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", + "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", + "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", + "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", + "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", + "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", + "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." + ], + "path": "evidence/receipts/native-returned-results-20260921.json" }, { - "id": "alpaca-paper-e2e-20260921", + "id": "native-workflow-writing-comparison-20260921", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", "claude-code" ], - "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", + "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", "limitations": [ - "One operational smoke trial, not profitable strategy or continuous trading acceptance.", - "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", - "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." + "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", + "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", + "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." ], - "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" + "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" }, { - "id": "artifact-reductions", - "path": "evidence/receipts/artifact-reductions.json", - "kind": "artifact_measurement", + "id": "native-workflow-graceful-recovery-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "socraticode", - "openresearch", - "context-mode" + "claude-code" ], - "claim": "Recorded exact selected-text reductions, distinct from model usage.", + "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", "limitations": [ - "Lossy selections compare retained text to full-file/paper counterfactuals.", - "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." - ] + "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", + "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", + "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", + "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." + ], + "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" }, { - "id": "broad-universe-research-20260921", + "id": "portable-userspace-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "duckdb", - "claude-code", - "codex" + "rtk", + "qmd", + "repomix", + "toon", + "codex", + "claude-code" ], - "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", + "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", "limitations": [ - "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", - "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", - "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", - "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", - "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." + "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", + "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", + "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", + "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", + "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", + "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", + "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", + "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", + "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." ], - "path": "evidence/receipts/broad-universe-research-20260921.json" + "path": "evidence/receipts/portable-userspace-install-20260921.json" }, { - "id": "canary-proof-verification-20261001", - "kind": "artifact_measurement", + "id": "claude-selective-context-pilot-20260921", + "kind": "native_model_e2e", "component_ids": [ "claude-code", - "codex", - "systemd" + "context-mode" ], - "claim": "The canary proof tool (tools/credentials/canary_proof.py, 1,834 lines, with the contained scan worker tools/credentials/canary_scan_worker.py, 2,114 lines) passed its synthetic acceptance on the workstation on 2026-10-01 on main with the K4 guard: its unit suite ran 143 tests, OK, with none skipped (including 12 cases that start transient systemd user scopes); its mutation runner killed 138 of 138 mutants by failures of their named permanent tests after 90 passing unmutated runs; and the credential, guard, Codex worker-lane and pre-commit suites ran 531 tests with one failure by design (the installed host copy of the guard). The tool plants a unique synthetic canary, lets named consumers use it through the key runner, and searches the named sinks with ripgrep in a worker that runs in a finite systemd user scope; its classifier refuses unless every required check has a fresh, complete result bound to the run. Reviews: a read-only GPT-6 verification found seven paths to a false clean verdict and four high findings, and an Opus build review found one blocking gap in the contract's acceptance cases; one repair round by a GPT-6 runtime worker fixed them, each with a permanent test and a mutant; an Opus re-check confirmed 37 of 42 dispositions and found one more false-clean path (a Git object store with no HEAD, refs or .git name, reached directly) and a record-validation defect, which one bounded fix round closed with tests and mutants. No end-to-end proof has run: it is the new distribution's acceptance after its guard install.", + "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", "limitations": [ - "Synthetic acceptance only: every sink, canary, Git store, SQLite database and journal in these runs is a fixture the tests build under a temporary directory; no real consumer, transcript, log, journal or credential was used, and no proof claim is made before the end-to-end run.", - "Containment evidence is workstation scope enforcement: the real-scope classes start transient systemd user scopes on this host (12 cases, all passing); hosted CI runners skip them where no user scope exists.", - "Scanner: ripgrep 14.1.0 is the executed version; the runtime also accepts 15.2.0 on a source-reviewed output grammar that no run has executed.", - "Size: the implementation (3,948 coordinator and worker lines) and the permanent test file (3,632 lines) exceed the contract's ceilings (1,800 and 2,800); the coordinator accepted the deviation for the required coverage and containment logic, and the reviews' dead-code findings were removed.", - "Residuals from the Opus re-check, recorded in the decision record: a completed but too-early or stale final is labelled requested_incomplete; the WAL/SHM-without-valid-main guard, Walk.covered's exclusion, time, special-file and symlinked-parent branches, and several O12 changes have no test of their own; three mutants are missing (END count/aux, --text, a count-based Git reconcile); bind_scope's refusal paths and the real scope_populated parser are untested; the scan's exit code still comes from events it does not validate.", - "Evidence classes differ: the unit, mutation and suite runs were made by the coordinator on the final head outside any sandbox; the reviews are read-only cross-family reads, not proofs." + "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", + "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", + "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", + "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", + "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", + "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", + "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", + "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." ], - "path": "evidence/receipts/canary-proof-verification-20261001.json" + "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" }, { - "id": "catalog-clean-install-20260921", + "id": "native-dashboard-data-20260921", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "ai-memory", + "socraticode", + "qmd", + "qdrant", + "agentsview", + "grafana", + "loki", + "rtk", + "context-mode", + "headroom", + "jcodemunch-mcp", + "promptfoo", + "serena", + "systemd" ], - "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", + "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", "limitations": [ - "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", - "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", - "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." + "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", + "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", + "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", + "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", + "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", + "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", + "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", + "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", + "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." ], - "path": "evidence/receipts/catalog-clean-install-20260921.json" + "path": "evidence/receipts/native-dashboard-data-20260921.json" }, { - "id": "catalog-freshness-20260923", - "kind": "upstream_provenance", + "id": "foundation-closure-20260921", + "kind": "native_cli_e2e", "component_ids": [ "claude-code", "codex", - "llama-cpp", - "mcp-inspector", - "openresearch", - "skfolio" + "affaan-m/ECC", + "context-mode" ], - "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", + "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", "limitations": [ - "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", - "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", - "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", - "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." + "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", + "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", + "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", + "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", + "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", + "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", + "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", + "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." ], - "path": "evidence/receipts/catalog-freshness-20260923.json" + "path": "evidence/receipts/foundation-closure-20260921.json" }, { - "id": "catalog-runtime-review-20260921", - "kind": "native_model_e2e", + "id": "native-quality-defaults-20260920", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "dagu" + "claude-code" ], - "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", + "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", "limitations": [ - "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", - "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", - "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." + "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", + "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", + "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", + "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", + "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." ], - "path": "evidence/receipts/catalog-runtime-review-20260921.json" + "path": "evidence/receipts/native-quality-defaults-20260920.json" }, { - "id": "ccusage-20026-qualification-20260927", + "id": "native-terminal-profiles-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ccusage" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", - "limitations": [ - "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", - "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", - "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", - "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", - "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", - "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", - "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", - "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", - "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", - "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", - "New hosts receive this pin only after the next release tag." - ], - "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" - }, - { - "id": "claude-advisor-usage-scan-20260928", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code" + "codex", + "claude-code", + "qdrant", + "vllm" ], - "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", + "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", - "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", - "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", - "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", - "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", - "Whether ccusage or ecosystem-token-report count these entries was not checked." + "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", + "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", + "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", + "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", + "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." ], - "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" + "path": "evidence/receipts/native-terminal-profiles-20260920.json" }, { - "id": "claude-foundation-finalization-20260921", - "kind": "native_model_e2e", + "id": "native-claude-profile-20260920", + "kind": "native_cli_e2e", "component_ids": [ "claude-code", "codex", - "agent-browser", - "repomix" + "affaan-m/ECC", + "context-mode", + "rtk" ], - "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", + "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", "limitations": [ - "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", - "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", - "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", - "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." + "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", + "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", + "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", + "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", + "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", + "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", + "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", + "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", + "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." ], - "path": "evidence/receipts/claude-foundation-finalization-20260921.json" + "path": "evidence/receipts/native-claude-profile-20260920.json" }, { - "id": "claude-host-practice-readback-20260928", + "id": "native-offhost-restic-20260920", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "claude-hud", - "headroom", - "mcporter", - "jcodemunch-mcp", - "agent-browser", - "qmd" + "restic" ], - "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", + "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", "limitations": [ - "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", - "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", - "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", - "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", - "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", - "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", - "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." + "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", + "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", + "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", + "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", + "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", + "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." ], - "path": "evidence/receipts/claude-host-practice-readback-20260928.json" + "path": "evidence/receipts/native-offhost-restic-20260920.json" }, { - "id": "claude-hud-0100-qualification-20261003", + "id": "native-dagu-retry-tests-20260920", "kind": "native_cli_e2e", "component_ids": [ - "claude-hud" + "dagu" ], - "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", "limitations": [ - "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", - "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", - "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", + "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", + "No broker/provider operations or token savings were measured.", + "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" }, { - "id": "claude-hud-0100-qualification-20261004", - "kind": "native_cli_e2e", + "id": "native-token-stack-final-20260920", + "kind": "native_model_e2e", "component_ids": [ - "claude-hud" - ], - "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed claude-hud 0.10.0 from tag v0.10.0 through native Claude plugin commands after an initial marketplace-source mismatch failed. Native marketplace remove/add and plugin install succeeded; plugin list showed version 0.10.0 enabled at user scope. Direct and configured statusline commands rendered a sample payload with exit 0. This is historical plugin and sample-render evidence, not a new interactive terminal session or model run.", - "limitations": [ - "No macOS execution and no upstream test suite run. There are no release assets for this tag; the supported installation remains a native Claude Code plugin, not a tarball bootstrap kind.", - "First marketplace add failed with exit 1 due to the old source entry; native remove/add/install recovered it. Sample statusline rendering does not establish a fresh interactive Claude session or provider usage.", - "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." - ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" - }, - { - "id": "claude-max-default-effort-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", - "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", - "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", - "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", - "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", - "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", - "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", - "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." - ], - "path": "evidence/receipts/claude-max-default-effort-20260929.json" - }, - { - "id": "claude-model-effort-probes-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", - "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", - "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", - "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", - "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." - ], - "path": "evidence/receipts/claude-model-effort-probes-20260929.json" - }, - { - "id": "claude-project-effort-flag-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", - "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", - "The Ultracode reminder is an indicator, not proof of workflow orchestration.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." - ], - "path": "evidence/receipts/claude-project-effort-flag-20260929.json" - }, - { - "id": "claude-repository-evidence-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "alpaca-py", - "ast-grep", - "beads", - "ccusage", "claude-code", - "claude-hud", "codex", - "codex-for-claude", - "context-hub", "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "duckdb", - "edgartools", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nautilus-trader", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "pandas", - "playwright-cli", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "restic", + "headroom", "rtk", - "sandbox-runtime", - "serena", - "shellcheck", - "skfolio", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "opentelemetry-collector-contrib", + "loki", + "prometheus" ], - "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", + "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", "limitations": [ - "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", - "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", - "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", - "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", - "Superseded observations, including the author's own probe and invocation errors, remain recorded." + "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", + "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", + "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", + "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", + "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", + "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", + "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", + "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." ], - "path": "evidence/receipts/claude-repository-evidence-20260921.json" + "path": "evidence/receipts/native-token-stack-final-20260920.json" }, { - "id": "claude-selective-context-pilot-20260921", + "id": "native-rag", + "path": "evidence/receipts/native-rag.json", "kind": "native_model_e2e", "component_ids": [ - "claude-code", - "context-mode" - ], - "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", - "limitations": [ - "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", - "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", - "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", - "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", - "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", - "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", - "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", - "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." - ], - "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" - }, - { - "id": "claude-spend-attribution-20260929", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code", - "ccusage" - ], - "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", - "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", - "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", - "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", - "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", - "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", - "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", - "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", - "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", - "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", - "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." - ], - "path": "evidence/receipts/claude-spend-attribution-20260929.json" - }, - { - "id": "claude-spend-window-20261004", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code", - "ccusage", - "context-mode" - ], - "claim": "Retained Claude-only ccusage daily costs rise from $2,823.79 and $2,427.25 on October 1/2 to $5,940.56 on October 3. The supplied executor window comparison reproduces exactly from count-only scanner outputs: IET per 24 h rises 2.121 times, counted call rows 2.419 times, and subagents started 2.824 times, while mean context per call falls from 271,790 to 216,230 tokens. The unfiltered retained session-view export is $12,404.88 and its workflow share is 61.402%; removing 17 rows with pre-10-03 last activity leaves $11,151.92, with coordinator-tree shares 63.296% and 33.787%. These are session-selection views, not spend since 10-03. Net pre-first-call attachment growth excluding UI is about 2.9 KB (0.8K rough tokens), rather than the positive-only 4.3 KB (1.2K) estimate. These are scoped observations, not subscription charges or a quality comparison. Adding the retained advisor-cohort estimate gives 830.270M and 1,777.960M IET per 24 h (2.141 times); all 689 A and 1,209 B advisor iterations in those cohorts used Fable. Fable is $2,092.87, or 35.230% of priced Claude dollars on 10-03. The user subsequently selected an Opus 5.5 advisor.", - "limitations": [ - "API-equivalent prices are not the subscription meter. ccusage leaves claude-sonnet-5-5 unpriced; its dollars therefore do not price every counted Claude model.", - "ccusage days are local time and Prometheus days are UTC. These scopes and the scanner windows must not be summed or equated.", - "Prometheus keeps one week; this retained export starts with the UTC day 2026-09-27 and ends with 2026-10-03.", - "The attr byte shares use unfitted weights, so they show direction only; receipt context shares exclude UI records before normalization.", - "The hook_success records are UI-only and are not counted as context. Pre-first-call attachment sizes are serialized metadata bytes, not exact model input or tokenization.", - "NativeStack only, because NativeStack2604's telemetry has no listener. This scope is the coordinator's stated observation boundary, not a new listener check.", - "10-04 is a partial day. The scanner ends at 14:00Z; no full-day projection is a measured total.", - "This is a re-derivation of retained native outputs and scanner aggregates, not a new provider/model run, an upstream acceptance test, or a quality/savings A/B.", - "window_compare.py includes synthetic zero-usage rows in its call counts and uses per-field maximum deduplication. Its subagent calls-per-file statistic spans each selected file, whereas its call and IET windows filter call timestamps.", - "Window hook text is not retained in the aggregate inputs. Historical hook-text estimates are reported as estimates; current installed carrier and upstream static hook sizes are distinct observations and do not establish historical hook outputs.", - "The unfiltered session export includes pre-10-03 activity: 17 rows worth $1,252.96 have lastActivity before 2026-10-03T04:00Z. The raw and activity-selected shares have different denominators. Filtering lastActivity does not restrict the dates of every token in a session total; neither view is established as spend since 10-03.", - "The reproduction artifact extends the supplied analysis with advisor-cohort rows. Original executor output is unchanged. Its private raw output includes source identifiers; only sanitized aggregates are retained here.", - "Advisor iterations are absent from calls.tsv and retained only as per-file tot values in files.jsonl. Grouping them by file first_ts reproduces the reviewed cohorts, but files can cross window boundaries. Executor-plus-advisor-cohort IET is an estimate with mixed timestamp scopes, not an exact call-window total; advisor iterations have no recorded effort here.", - "IET applies the same coefficients to every model: input 1, cache read 0.1, five-minute and unclassified cache writes 1.25, one-hour cache writes 2, and output 5, with thinking already in output. There is no model-specific base-price multiplier. Advisor aggregates lack cache-write duration splits and weight all cache writes at 1.25. Thus IET model shares and window ratios are relative-index measures, not dollar shares or actual spend ratios; Fable dollars from ccusage remain separate. Historical Fable usage precedes the new Opus advisor decision." - ], - "path": "evidence/receipts/claude-spend-window-20261004.json" - }, - { - "id": "claude-upstream-checks-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "ast-grep", - "beads", - "ccusage", - "claude-code", "codex", - "codex-for-claude", - "context-mode", - "dagu", - "difftastic", - "gitleaks", - "grafana", - "headroom", - "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcporter", - "nautilus-trader", - "openresearch", - "opentelemetry-collector-contrib", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "rtk", - "serena", + "claude-code", "socraticode", - "tavily-cli", - "toon", + "qdrant", "vllm", - "worktrunk", - "zizmor" - ], - "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", - "limitations": [ - "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", - "Complete originals remain private; public excerpts are bounded and sanitized.", - "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." - ], - "path": "evidence/receipts/claude-upstream-checks-20260921.json" - }, - { - "id": "codex-01571-qualification-20260926", - "kind": "native_cli_e2e", - "component_ids": [ - "codex" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", - "limitations": [ - "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", - "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", - "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", - "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", - "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", - "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", - "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", - "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", - "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", - "Linux x86_64 only, one host; nothing here is macOS evidence." - ], - "path": "evidence/receipts/codex-01571-qualification-20260926.json" - }, - { - "id": "codex-01592-qualification-20260930", - "kind": "native_cli_e2e", - "component_ids": [ - "codex" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", - "limitations": [ - "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", - "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", - "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", - "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", - "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", - "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", - "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", - "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", - "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", - "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", - "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", - "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", - "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", - "Linux x86_64 only, one host; nothing here is macOS evidence." - ], - "path": "evidence/receipts/codex-01592-qualification-20260930.json" - }, - { - "id": "codex-01593-hindsight-native-memory-20261001", - "kind": "native_cli_e2e", - "component_ids": [ - "codex" + "huggingface-hub-native" ], - "claim": "Fresh native Codex automatic capture and independent recollection from the selected Hindsight bank passed in both headless exec and daemon-backed interactive resume/queue paths.", + "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", "limitations": [ - "Two invented canaries and their record budgets are explicitly synthetic, not project policy, market data or trading acceptance.", - "This is supported native command/API execution with synthetic inputs and independent observation, not an executed upstream Docker or Cargo test suite.", - "Headless exec and daemon-backed TUI are distinct paths; each has its own fresh provider-backed observations below.", - "Knowledge-page search completed but did not contain either canary. Native Hindsight reflect supplied the correct values; page population or cron refresh is not qualified here.", - "Backend seed/survey completion was not established. Native status reported synced=false with active operations; the coordinator separately owns seed-job recovery.", - "Native model token usage excludes Hindsight backend extraction/reflection usage. Backend usage and monetary cost are unknown.", - "No production-quality or token-efficiency comparison is claimed, and no unrelated session or authentication store was read." - ], - "path": "evidence/receipts/codex-01593-hindsight-native-memory-20261001.json" + "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", + "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." + ] }, { - "id": "codex-01593-native-queue-20261001", - "kind": "native_cli_e2e", + "id": "native-memory", + "path": "evidence/receipts/native-memory.json", + "kind": "native_model_e2e", "component_ids": [ - "codex" + "ai-memory", + "codex", + "claude-code" ], - "claim": "Fresh provider-backed native queue delivery succeeded while the owned daemon-backed thread was idle, while a preceding turn was busy, and after its TUI disconnected and resumed. Three official Hindsight hook definitions were individually trusted through the native UI.", + "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", "limitations": [ - "Synthetic messaging inputs qualify these native operations, not production task quality or the whole ecosystem.", - "No upstream Cargo test suite was run; upstream test sources were reviewed and native commands were exercised.", - "No daemon restart was attempted during live qualification, and no unrelated session was inspected or interrupted.", - "Queue delivery to a concurrently running embedded receiver, cross-family bridge delivery, cross-account isolation, remote hosts, and Hindsight retrieval/retention are outside this receipt.", - "Hindsight capture remained disabled during hook trust. Hook trust is not memory acceptance.", - "Provider monetary cost is unknown. Native usage counters do not establish improvement against another configuration." - ], - "path": "evidence/receipts/codex-01593-native-queue-20261001.json" + "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", + "No historical archive backfill or LLM/embedding consolidation pipeline enabled." + ] }, { - "id": "codex-desktop-live-20260920", - "kind": "native_cli_e2e", + "id": "native-context-memory", + "path": "evidence/receipts/native-context-memory.json", + "kind": "native_model_e2e", "component_ids": [ "codex", + "claude-code", "context-mode", - "jcodemunch-mcp", "serena", - "ai-memory", - "socraticode", - "rtk", - "headroom", - "qmd", - "loki", - "prometheus" + "rtk" ], - "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", + "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", "limitations": [ - "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", - "Tools without native savings ledgers remain unavailable, not zero.", - "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", - "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", - "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", - "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", - "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", - "No fresh Prometheus turn sample in the selected window; no three-way observation join." - ], - "path": "evidence/receipts/codex-desktop-live-20260920.json" + "Earlier Serena/RTK run uses its original CLI version.", + "PreCompact was not induced; current Desktop catalog is distinct from child native clients." + ] }, { - "id": "codex-session-environment-20260920", + "id": "runtime-tools", + "path": "evidence/receipts/runtime-tools.json", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "context-mode", - "jcodemunch-mcp", - "serena", - "ai-memory", - "socraticode" + "gitleaks", + "sandbox-runtime" ], - "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", + "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", "limitations": [ - "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", - "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", - "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", - "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", - "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", - "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", - "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." - ], - "path": "evidence/receipts/codex-session-environment-20260920.json" + "No claim of full security certification.", + "Sandbox network denial configured but not separately exercised." + ] }, { - "id": "codex-shell-snapshot-cleanup-20260930", + "id": "artifact-reductions", + "path": "evidence/receipts/artifact-reductions.json", "kind": "artifact_measurement", "component_ids": [ - "codex" + "rtk", + "socraticode", + "openresearch", + "context-mode" ], - "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", + "claim": "Recorded exact selected-text reductions, distinct from model usage.", "limitations": [ - "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", - "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", - "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", - "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." - ], - "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" + "Lossy selections compare retained text to full-file/paper counterfactuals.", + "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." + ] }, { "id": "component-history", @@ -837,116 +564,61 @@ ] }, { - "id": "cross-family-review-terminal-lane-20260930", + "id": "native-cli-gaps", + "path": "evidence/receipts/native-cli-gaps.json", "kind": "native_model_e2e", "component_ids": [ - "codex", - "omniroute", - "claude-code" + "qmd", + "codebase-memory-mcp", + "agent-browser" ], - "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", + "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", - "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", - "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", - "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", - "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", - "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", - "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." - ], - "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" + "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", + "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." + ] }, { - "id": "current-session-observation-20260920", + "id": "worktrunk-list", + "path": "evidence/receipts/worktrunk-list.json", "kind": "native_cli_e2e", "component_ids": [ - "agentsview", - "ai-memory", - "alertmanager", - "ccusage", - "claude-hud", - "context-mode", - "grafana", - "headroom", - "jcodemunch-mcp", - "loki", - "mcporter", - "ntfy", - "opentelemetry-collector-contrib", - "otel-tui", - "prometheus", - "rtk", - "serena", - "socraticode" + "worktrunk" ], - "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", + "claim": "Native wt list enumerated the actual publication worktree set.", "limitations": [ - "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", - "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", - "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", - "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", - "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", - "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", - "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", - "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." - ], - "path": "evidence/receipts/current-session-observation-20260920.json" + "Model-free repository inventory, not multi-agent correctness." + ] }, { - "id": "dashboard-gap-resolution-20260921", - "kind": "native_cli_e2e", + "id": "desktop-direct-rag", + "kind": "native_model_e2e", "component_ids": [ - "ai-memory", - "codex", - "claude-code", - "agentsview", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo", - "vllm" + "socraticode", + "qdrant", + "vllm", + "ai-memory" ], - "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", + "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", "limitations": [ - "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", - "Fresh PreCompact event and active Desktop session end remain unforced.", - "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", - "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", - "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", - "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." + "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", + "No whole-task provider usage/savings attribution is claimed." ], - "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" + "path": "evidence/receipts/desktop-direct-rag.json" }, { - "id": "dashboard-render-e2e-20260921", - "kind": "native_cli_e2e", + "id": "vllm-compatibility", + "kind": "compatibility_attempt", "component_ids": [ - "ai-memory", - "qdrant", - "socraticode", - "serena", - "agentsview", - "dagu", - "omniroute", - "agent-browser", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo" + "vllm", + "socraticode" ], - "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", + "claim": "Latest vLLM0.29.0 native install succeeded but GPU startup failed on WSL; publisher-validated0.25.0 restored and direct retrieval passed.", "limitations": [ - "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", - "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", - "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", - "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", - "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", - "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", - "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." + "This is a host-specific failure, not a claim0.29is universally unusable.", + "The resolver success does not establish GPU/runtime compatibility." ], - "path": "evidence/receipts/dashboard-render-e2e-20260921.json" + "path": "evidence/receipts/vllm-compatibility.json" }, { "id": "desktop-cli-workflows", @@ -965,20 +637,72 @@ "path": "evidence/receipts/desktop-cli-workflows.json" }, { - "id": "desktop-direct-rag", + "id": "portable-cli-artifacts", + "kind": "native_cli_e2e", + "component_ids": [ + "shellcheck", + "difftastic", + "markitdown", + "ast-grep", + "toon", + "repomix" + ], + "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", + "limitations": [ + "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", + "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." + ], + "path": "evidence/receipts/portable-cli-artifacts.json" + }, + { + "id": "native-observability", + "kind": "native_cli_e2e", + "component_ids": [ + "codex", + "claude-code", + "agent-browser", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "grafana", + "alertmanager", + "ntfy" + ], + "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", + "limitations": [ + "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", + "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", + "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", + "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", + "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", + "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." + ], + "path": "observability/receipt.json" + }, + { + "id": "native-observability-followup", "kind": "native_model_e2e", "component_ids": [ + "codex", + "context-mode", + "ai-memory", "socraticode", - "qdrant", - "vllm", - "ai-memory" + "agent-browser", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "grafana" ], - "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", + "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", "limitations": [ - "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", - "No whole-task provider usage/savings attribution is claimed." + "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", + "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", + "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", + "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", + "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", + "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." ], - "path": "evidence/receipts/desktop-direct-rag.json" + "path": "observability/followup-receipt.json" }, { "id": "desktop-restart-acceptance", @@ -1006,648 +730,549 @@ "path": "observability/restart-receipt.json" }, { - "id": "env-freshness-wsl-ubuntu-main-20260924", - "kind": "artifact_measurement", + "id": "sec-financial-data-20260919", + "kind": "compatibility_attempt", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "duckdb", - "pandas", - "edgartools", - "exchange-calendars", - "vllm" + "duckdb" ], - "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", + "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", "limitations": [ - "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", - "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", - "One host; each PC publishes its own report under the same schema.", - "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." + "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", + "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", + "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", + "Current API snapshots do not reconstruct historical point-in-time knowledge.", + "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", + "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." ], - "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" + "path": "blueprints/us-equities/financial-data/receipt.json" }, { - "id": "exchange-calendars-native-check-20260922", + "id": "restic-local-public-reference-20260919", "kind": "native_cli_e2e", "component_ids": [ - "exchange-calendars" + "restic" ], - "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", + "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", "limitations": [ - "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", - "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", - "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", - "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", - "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." + "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", + "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", + "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", + "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", + "Credential loss recovery requires separately approved secure key escrow." ], - "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" + "path": "blueprints/us-equities/hosting/backup/receipt.json" }, { - "id": "foundation-catalog-ui-20260920", - "kind": "artifact_measurement", + "id": "native-research-runtime-20260919", + "kind": "native_model_e2e", "component_ids": [ - "agent-browser" + "claude-code", + "dagu", + "lean", + "duckdb", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", + "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", "limitations": [ - "Source pin/publication URLs pending parent final source commit and regeneration.", - "No provider/broker execution or broad regression rerun performed.", - "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." + "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", + "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", + "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", + "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", + "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", + "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", + "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", + "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." ], - "path": "evidence/receipts/foundation-catalog-ui-20260920.json" + "path": "blueprints/us-equities/research-runtime/receipt.json" }, { - "id": "foundation-closure-20260921", + "path": "blueprints/us-equities/state-recovery/memory/receipt.json", + "id": "ai-memory-native-state-recovery-20260919", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "affaan-m/ECC", - "context-mode" + "ai-memory", + "restic" ], - "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", + "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", "limitations": [ - "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", - "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", - "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", - "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", - "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", - "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", - "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", - "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." - ], - "path": "evidence/receipts/foundation-closure-20260921.json" + "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", + "38 pages table rows include historical versions, not 38 current pages.", + "Native backup excludes raw/, model caches, logs and external native session transcripts.", + "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", + "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", + "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." + ] }, { - "id": "foundation-convergence-20260921", - "kind": "native_model_e2e", + "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", + "id": "qdrant-native-state-recovery-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "rtk", - "headroom", - "toon" + "qdrant", + "restic" ], - "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", + "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", "limitations": [ - "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", - "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", - "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", - "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", - "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." - ], - "path": "evidence/receipts/foundation-convergence-20260921.json" + "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", + "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", + "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", + "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", + "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." + ] }, { - "id": "foundation-native-20260920", + "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", + "id": "qmd-bm25-retrieval-20260919", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qmd", - "qdrant", - "vllm", - "socraticode", - "serena", - "context-mode", - "jcodemunch-mcp", - "rtk", - "headroom", - "repomix", - "toon", - "codex", - "claude-code", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "omniroute" + "qmd" ], - "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", + "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", "limitations": [ - "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", - "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", - "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", - "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", - "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", - "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", - "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", - "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", - "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." - ], - "path": "evidence/receipts/foundation-native-20260920.json" + "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", + "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", + "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", + "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", + "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", + "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", + "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", + "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", + "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", + "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", + "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." + ] }, { - "id": "foundation-rd-20260921", + "path": "blueprints/us-equities/convergence-review/receipt.json", + "id": "native-claude-convergence-review-20260919", "kind": "native_model_e2e", "component_ids": [ "claude-code", - "codex", - "codex-for-claude", - "qmd" + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", + "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", "limitations": [ - "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", - "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", - "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", - "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", - "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." - ], - "path": "evidence/receipts/foundation-rd-20260921.json" + "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", + "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", + "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", + "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", + "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", + "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." + ] }, { - "id": "full-stack-convergence-20260921", + "path": "blueprints/us-equities/supply-chain/receipt.json", + "id": "syft-sdk-inventory-20260919", "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "ccusage", - "claude-code", - "codex", - "context-mode", - "dagu", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "loki", - "omniroute", - "openresearch", - "prometheus", - "qdrant", - "qmd", - "repomix", - "rtk", - "serena", - "socraticode", - "toon", - "vllm", - "worktrunk" + "syft" ], - "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", + "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", "limitations": [ - "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", - "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", - "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", - "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", - "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", - "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", - "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", - "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." - ], - "path": "evidence/receipts/full-stack-convergence-20260921.json" + "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", + "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", + "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", + "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", + "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", + "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", + "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", + "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", + "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", + "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." + ] }, { - "id": "github-automation-newpc-20260922", + "path": "adoption/receipt.json", + "id": "portable-sdk-adoption-20260919", "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code" + "duckdb" ], - "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", + "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", "limitations": [ - "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", - "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", - "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", - "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", - "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", - "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." - ], - "path": "evidence/receipts/github-automation-newpc-20260922.json" + "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", + "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", + "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", + "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", + "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", + "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", + "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." + ] }, { - "id": "gitleaks-macos-memory-bound-20260924", - "kind": "native_cli_e2e", + "path": "adoption/paired/receipt.json", + "id": "native-paired-adoption-20260919", + "kind": "native_model_e2e", "component_ids": [ - "gitleaks" + "codex", + "claude-code", + "duckdb", + "dagu", + "lean", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", + "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", "limitations": [ - "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", - "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", - "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", - "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", - "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", - "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", - "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." - ], - "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" + "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", + "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", + "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", + "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", + "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", + "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", + "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", + "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." + ] }, { - "id": "guard-k3-verification-20260930", - "kind": "artifact_measurement", + "path": "blueprints/us-equities/architecture/receipt.json", + "id": "native-architecture-review-20260919", + "kind": "native_model_e2e", "component_ids": [ - "claude-code" + "codex", + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", + "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", "limitations": [ - "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", - "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", - "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", - "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", + "claim": "Installed alpaca-py request models silently dropped synthetic advanced fields; this explicit broker-disconnected basic-intent boundary rejected those inputs and eight additional negative cases while preserving canonical decimal strings.", "limitations": [ - "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", - "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", - "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", - "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", - "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", - "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", - "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", - "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." - ], - "path": "evidence/receipts/headroom-039-qualification-20260925.json" - }, - { - "id": "hf-memory-models-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "ai-memory", - "socraticode", - "vllm", - "grafana" - ], - "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", - "limitations": [ - "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", - "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", - "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", - "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", - "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", - "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." - ], - "path": "evidence/receipts/hf-memory-models-20260921.json" - }, - { - "id": "jcodemunch-1108327-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "jcodemunch-mcp" - ], - "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", - "limitations": [ - "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", - "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" - }, - { - "id": "local-inference-c2-serving-switch-20260926", - "kind": "native_model_e2e", - "component_ids": [ - "llama-cpp" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", - "limitations": [ - "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", - "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", - "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", - "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", - "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", - "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", - "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." - ], - "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" - }, - { - "id": "login-shell-contract-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code", - "codex" - ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", - "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", - "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", - "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", - "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", - "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", - "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", - "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", - "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", - "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." - ], - "path": "evidence/receipts/login-shell-contract-20260929.json" + "Local contract is not wired into unrelated SDK calls or existing workers; explicit future adapter adoption is required.", + "No broker account, key, asset lookup, risk approval, live/paper order or provider wire behavior was exercised.", + "Whole-share basic create-intent subset only; advanced, replacement, cancellation, retries, order journals and reconciliation remain gated.", + "Input representation cap and symbol/client-ID syntax are local conservative policies, not provider or risk authorization.", + "Python SDK float conversion is observed; the canonical exact decimal envelope is deliberately not serialized through those float fields.", + "JavaScript advanced support is pinned-source evidence only; no alternative SDK was installed or executed.", + "Python audit events and the Linux namespace substantiate this scoped probe, not a universal sandbox or macOS acceptance.", + "Canonical content hashes do not establish client-ID uniqueness, deduplication or safe retry semantics.", + "No token-saving claim or model inference belongs to this deterministic task." + ] }, { - "id": "mac-memory-patch-20260920", - "path": "evidence/receipts/mac-memory-patch-20260920.json", + "id": "native-memory-lifecycle-20260919", + "path": "blueprints/us-equities/memory-lifecycle/receipt.json", "kind": "native_cli_e2e", "component_ids": [ "ai-memory" ], - "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", + "claim": "A disposable, network-isolated native ai-memory fixture passed 23 lifecycle/routing checks across 31 MCP calls; exact-path TTL behavior and explicit sweep limits retained.", "limitations": [ - "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", - "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", - "No provider or whole-task token savings measurement." + "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", + "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", + "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", + "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", + "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", + "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", + "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", + "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", + "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", + "Isolated fixture, not the live memory store or all client hooks.", + "TTL is default-search visibility until sweep, not immediate access revocation.", + "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." ] }, { - "id": "mac-native-application-migration-20260920", + "id": "native-exact-nanosecond-replay-20260919", + "path": "blueprints/us-equities/nanosecond-replay/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "fastapi", - "postgresql" + "duckdb", + "pandas" ], - "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", + "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", "limitations": [ - "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", - "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", - "No model calls; whole-task provider usage unknown." - ], - "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" + "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", + "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", + "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", + "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", + "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", + "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", + "No broker, trading strategy, actual feed or net token-saving acceptance." + ] }, { - "id": "mac-native-container-storage-20260920", + "id": "native-worker-supervision-20260919", + "path": "blueprints/us-equities/worker-supervision/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "apple-container", - "postgresql" + "systemd" ], - "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", + "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", "limitations": [ - "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", - "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", - "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", - "Images remain cached; only owned empty failed container, test database container and test volume were removed.", - "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." - ], - "path": "blueprints/convergence-practice/container-storage/receipt.json" + "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", + "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", + "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", + "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", + "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", + "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", + "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", + "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", + "Hashes bind retained evidence bytes; they do not independently attest the execution.", + "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", + "Configured resource limits were inspected, not saturation-tested." + ] }, { - "id": "mac-native-document-ingestion-20260920", + "id": "native-grand-dashboard-20260919", + "path": "observability/grand-dashboard/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "poppler" + "grafana", + "loki", + "prometheus", + "dagu" ], - "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", + "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", "limitations": [ - "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", - "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", - "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", - "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", - "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." - ], - "path": "blueprints/convergence-practice/document-ingestion/receipt.json" + "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", + "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", + "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", + "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", + "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", + "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", + "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", + "Recorded worker/decision state is not a live process registry.", + "No broker execution, exact-once accounting, universal coverage or net token savings.", + "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." + ] }, { - "id": "markitdown-018-qualification-20260925", - "kind": "native_cli_e2e", + "id": "native-convergence-review-20260919", + "path": "blueprints/us-equities/convergence-program/review-receipt.json", + "kind": "native_model_e2e", "component_ids": [ - "markitdown" + "codex", + "claude-code", + "dagu" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", + "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", "limitations": [ - "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", - "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", - "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", - "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", - "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", - "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", - "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", - "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." - ], - "path": "evidence/receipts/markitdown-018-qualification-20260925.json" + "Models checked packet/report consistency, not original sources or underlying native artifacts.", + "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", + "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", + "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", + "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", + "Usage belongs to this pair only; not whole-goal consumption or causal savings." + ] }, { - "id": "mcp-inspector-280-qualification-20260926", + "id": "native-historical-leverage-stress-20260919", + "path": "blueprints/us-equities/historical-simulation/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "mcp-inspector" + "lean" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", + "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", "limitations": [ - "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", - "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", - "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", - "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", - "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." - ], - "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" + "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", + "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", + "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", + "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", + "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", + "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", + "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", + "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", + "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", + "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", + "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", + "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", + "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", + "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", + "No paper/live orders or automatic promotion." + ] }, { - "id": "mcp-inspector-290-qualification-20261003", + "id": "native-chronological-controls-20260919", "kind": "native_cli_e2e", "component_ids": [ - "mcp-inspector" + "skfolio", + "pandas", + "lean" ], - "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", "limitations": [ - "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", - "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", - "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", + "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", + "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", + "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", + "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", + "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", + "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", + "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." ], - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + "path": "blueprints/us-equities/research-evaluation/receipt.json" }, { - "id": "mcporter-0141-qualification-20260925", + "id": "native-edgartools-catalyst-20260919", "kind": "native_cli_e2e", "component_ids": [ - "mcporter" - ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", - "limitations": [ - "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", - "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", - "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", - "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", - "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", - "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." - ], - "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" - }, - { - "id": "mcporter-0142-qualification-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "mcporter" + "edgartools" ], - "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", + "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", - "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", - "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", + "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", + "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", + "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", + "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", + "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", + "Native text/byte counts are not provider token savings.", + "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." ], - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + "path": "blueprints/us-equities/catalyst-provenance/receipt.json" }, { - "id": "mcporter-0142-qualification-20261004", + "id": "native-simulation-research-dashboard-20260919", "kind": "native_cli_e2e", "component_ids": [ - "mcporter" + "grafana", + "loki" ], - "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed mcporter 0.14.2 and returned version 0.14.2 with exit 0. Registry provenance matched openclaw/mcporter release.yml at v0.14.2, and a scratch npm audit verified 43 registry signatures and 15 attestations. Ad-hoc stdio jcodemunch session statistics and context-mode ctx_stats calls returned exit 0. Configured-daemon calls failed on a stale rendezvous and were not recovered. This receipt republishes sanitized historical host observations, not a new host execution.", + "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", "limitations": [ - "No macOS execution and no upstream test suite run. The npm tarball hash is artifact evidence and does not pin the transitive dependency tree or rolldown platform binding.", - "Configured-server list/call failures are retained. The stale daemon was not recovered and keep-alive transport acceptance is not claimed; dist/daemon/client.js was recorded byte-identical across 0.14.1 and 0.14.2.", - "npm audit signatures --global failed with EAUDITGLOBAL (exit 1); only the later scratch-project audit succeeded. The ad-hoc MCP statistics are self-reports, not provider counts or savings.", - "The Mac keeps its separately qualified MCPorter 0.13.13 pin until a Mac qualifies 0.14.2. The platform-independent tarball artifact check is not Mac execution or Mac qualification." + "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", + "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", + "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", + "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", + "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", + "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", + "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." ], - "path": "evidence/receipts/mcporter-0142-qualification-20261004.json" + "path": "blueprints/us-equities/simulation-research/receipt.json" }, { - "id": "memory-landscape-20260921", + "id": "native-sec-access-resolution-20260919", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "codex", - "claude-code" + "edgartools" ], - "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", + "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", "limitations": [ - "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", - "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", - "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", - "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", - "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", - "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", - "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", - "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", - "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." + "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", + "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", + "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", + "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", + "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", + "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", + "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", + "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." ], - "path": "evidence/receipts/memory-landscape-20260921.json" + "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" }, { - "id": "memory-landscape-lifecycle-20260921", + "id": "native-sec-new-host-20260924", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qdrant", - "vllm", - "serena", - "qmd", - "codex", - "claude-code" + "edgartools" ], - "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", + "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", "limitations": [ - "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", - "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", - "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", - "Exact memory session/lifetime savings are not returned and remain null.", - "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." + "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", + "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", + "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", + "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", + "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", + "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", + "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." ], - "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" + "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", + "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" }, { - "id": "memory-lifecycle-probe-20260921", + "id": "sec-catalyst-dataset-native-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "edgartools", + "duckdb" ], - "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", + "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", "limitations": [ - "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", - "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", - "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", - "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", - "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", - "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." + "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", + "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", + "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", + "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", + "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", + "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", + "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", + "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", + "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." ], - "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" + "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" }, { - "id": "native-ai-memory-maintenance-20260920", - "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", + "id": "native-corporate-actions-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "lean" ], - "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", + "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", - "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", - "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", - "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", - "Forward-only migrations may require restoring the retained private backup to downgrade." + "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", + "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", + "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", + "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", + "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", + "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" }, { "id": "native-alpaca-historical-20260920", @@ -1668,392 +1293,381 @@ "path": "blueprints/us-equities/authenticated-data/native-receipt.json" }, { - "id": "native-application-delivery-20260920", + "id": "native-security-identity-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nextjs", - "react", - "fastapi", - "postgresql" + "alpaca-py", + "duckdb" ], - "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", + "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", "limitations": [ - "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", - "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", - "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", - "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", - "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", - "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", - "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", - "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." + "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", + "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", + "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", + "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", + "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", + "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", + "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", + "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." ], - "path": "blueprints/convergence-practice/application-delivery/receipt.json" + "path": "blueprints/us-equities/identity-readiness/native-receipt.json" }, { - "path": "blueprints/us-equities/architecture/receipt.json", - "id": "native-architecture-review-20260919", - "kind": "native_model_e2e", + "id": "token-practice-artifacts-20260920", + "kind": "artifact_measurement", "component_ids": [ - "codex", - "claude-code", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "agent-browser", + "ast-grep", + "edgartools", + "markitdown", + "qmd", + "repomix", + "rtk", + "socraticode", + "syft", + "toon" ], - "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", + "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", "limitations": [ - "The models reviewed supplied evidence and did not independently inspect primary sources. Their critiques are advisory and were adjudicated; agreement does not establish correctness or trading performance.", - "This is a native architecture-review task, not another LEAN/Dagu backtest run, full MCP/RAG acceptance, broker integration, hosted deployment or universal SOTA census.", - "The44,214 combined native reported tokens exclude coordinator and source-research workers. They are usage, not causal tokens saved or a billing measurement across identical tokenizers.", - "Astra cached input is included in input and reasoning output in output. Claude thinking is included in output; duplicate per-model/iteration/stream views are not added again.", - "Native model selection and terminal usage are not independent provider attestation. Full account/session/process identifiers and raw event streams remain private.", - "The offline Alpaca observation detects synthetic field loss only; no client/network/order, valid advanced-order fixture, entitlement or execution adapter was tested.", - "New machines must reproduce their own selected native profile and sign-in; these local WSL receipts do not establish macOS or unattended-host acceptance." - ] + "Counts describe retained original host artifacts. This public aggregate omits the private originals; CI validates aggregate integrity, not an independent recount of those private bytes.", + "Most pairs select or transform information lossily. Shorter output does not establish equivalent answer quality or lower complete task usage.", + "Pairs overlap, including shared HTML sources and retrieval services. Do not sum them or attribute the same difference independently to dependencies.", + "Exact provider savings remain null. Tokenizer counts are not provider billing, subscription savings or causal per-repository effects.", + "The Syft table preserves checked package name/version/type columns while omitting other SBOM metadata; this is a view selection, not equivalent full SBOM content." + ], + "path": "evidence/receipts/token-practice-artifacts-20260920.json" }, { - "id": "native-catalog-retrieval-20260920", - "kind": "native_cli_e2e", + "id": "token-practice-native-pairs-20260920", + "kind": "native_model_e2e", "component_ids": [ - "qmd" + "codex", + "claude-code", + "context-mode" ], - "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", + "claim": "Four native coding trials passed shared visible, hidden and file-scope acceptance gates; one fixed-order Context Mode non-use/explicit-use pair per client produced mixed observed task-usage differences.", "limitations": [ - "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", - "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", - "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", - "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." + "One baseline-first pair per client is not randomized, repeated or cache-matched. Native cache warmth and plugin tool availability were not fully controlled.", + "Observed differences are not causal per-repository savings, a whole-stack saving rate or evidence that either model is generally better.", + "Codex cached input and reasoning output are subsets. Claude ordinary input, cache creation, cache reads and output are separate categories; thinking is included in output.", + "Final cumulative session counters are used once. Coordinator, reviewers, audit tooling and report production are outside these four task totals.", + "Billed cost is unknown. Token counts and cached reads do not establish subscription charges or money saved.", + "Private transcripts, session identifiers and commands are not published. Hashes bind retained evidence, not independent attestation of provider execution." ], - "path": "evidence/receipts/native-catalog-retrieval-20260920.json" + "path": "evidence/receipts/token-practice-native-pairs-20260920.json" }, { - "id": "native-chronological-controls-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "skfolio", - "pandas", - "lean" - ], - "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", - "limitations": [ - "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", - "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", - "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", - "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", - "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", - "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", - "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", - "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." - ], - "path": "blueprints/us-equities/research-evaluation/receipt.json" - }, - { - "id": "native-ci-security-20260920", - "kind": "native_cli_e2e", - "component_ids": [ - "zizmor" - ], - "claim": "Native zizmor1.30.1 on macOS accepts the published workflow under offline regular analysis and rejects an inert unsafe fixture with three findings; two executable regression checks pass.", - "limitations": [ - "Offline regular analysis is scoped static evidence, not absence of every vulnerability or signature verification.", - "Mac binary and the checksum-locked Linux CI wheel are distinct artifacts; new runner execution is established by its own CI result.", - "The unsafe fixture was analyzed but never executed. No model calls, broker actions or savings measurement." - ], - "path": "blueprints/convergence-practice/ci-security/receipt.json" - }, - { - "id": "native-claude-child-patch-20260920", - "kind": "native_model_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Native Claude Code2.1.278 on Ubuntu24.04 WSL2 used Opus5 through Max for one foreground isolated child repair. Only planner.py changed; all12 frozen visible tests pass independently after8 seed failures.", - "limitations": [ - "One synthetic visible-oracle fixture, not a held-out benchmark, real application or GPU acceptance.", - "Ultracode was requested; observed native delegation does not establish dynamic-workflow selection or an OS sandbox.", - "Three native usage views retain different scopes; native retries and whole Desktop usage are unknown. No matched model baseline or savings claim.", - "Local supervision completed without timeout; provider cancellation, crash recovery and full-host backup were not tested." - ], - "path": "blueprints/convergence-practice/native-worker/receipt.json" - }, - { - "path": "blueprints/us-equities/convergence-review/receipt.json", - "id": "native-claude-convergence-review-20260919", - "kind": "native_model_e2e", + "id": "token-practice-coverage-20260920", + "kind": "historical_inventory", "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "ast-grep", + "ccusage", "claude-code", + "claude-hud", + "codebase-memory-mcp", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "davila7/claude-code-templates", + "difftastic", + "gitleaks", + "headroom", + "huggingface-hub-native", + "markitdown", + "mcp-inspector", + "mcporter", + "openresearch", + "playwright-cli", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "rtk", + "sandbox-runtime", + "serena", + "shanraisshan/claude-code-best-practice", + "shellcheck", + "socraticode", + "toon", + "vllm", + "worktrunk", "opentelemetry-collector-contrib", "prometheus", - "loki" + "loki", + "grafana", + "alertmanager", + "ntfy", + "duckdb", + "restic", + "dagu", + "lean", + "syft", + "alpaca-py", + "systemd", + "pandas", + "skfolio", + "edgartools" ], - "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", + "claim": "A dated 52-component audit distinguishes native artifact/task pairs, bounded functionality, current queries, configuration validation, historical-only evidence, host failures and non-executable guidance.", "limitations": [ - "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", - "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", - "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", - "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", - "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", - "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." - ] + "This historical coverage inventory records the dated audit only; it is not 52 fresh end-to-end passes or new-host acceptance.", + "Seventy captured operations include four retained failed attempts; successful corrections do not erase the initial OTel environment and Dagu environment-filter failures.", + "Two Linux Playwright invocations failed with ENOENT; the Windows installation does not establish Linux availability.", + "Guidance repositories are not executable tools. Current state, backup and cache queries or configuration validation do not prove complete lifecycle behavior.", + "Native RTK, TOON, Context Mode and Headroom counters have different scopes and estimators. They cannot be summed with artifact differences or provider usage.", + "Exact causal per-component provider saving values remain unknown rather than zero." + ], + "path": "evidence/receipts/token-practice-coverage-20260920.json" }, { - "id": "native-claude-hud-interactive-20260920", - "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", - "kind": "compatibility_attempt", + "id": "token-practice-catalog-toon-20260920", + "kind": "artifact_measurement", "component_ids": [ - "claude-hud" + "toon" ], - "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", + "claim": "A reversible full-catalog TOON conversion had a smaller native heuristic estimate but a larger exact token count than compact JSON; the guard retained compact JSON.", "limitations": [ - "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", - "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", - "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." - ] + "This is one later artifact comparison, separate from the ten original token-practice pairs. Do not sum it with cumulative native counters or provider usage.", + "Native tokenx estimates and exact o200k_base counts use different estimators and JSON representations; they are not interchangeable savings metrics.", + "The public aggregate omits the private captured output files. Published hashes establish identity, not independent CI recount of the private bytes.", + "Exact provider savings remain unknown. The successful strict round trip establishes data equivalence for this conversion only.", + "Command templates replace host-specific source and output locations with portable placeholders." + ], + "path": "evidence/receipts/token-practice-catalog-toon-20260920.json" }, { - "id": "native-claude-profile-20260920", - "kind": "native_cli_e2e", + "id": "token-practice-native-counters-20260920", + "kind": "historical_inventory", "component_ids": [ - "claude-code", - "codex", - "affaan-m/ECC", "context-mode", - "rtk" + "headroom", + "rtk", + "toon" ], - "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", + "claim": "Dated native counter snapshots retain RTK output, the capped Headroom ledger result, per-conversion TOON estimates and three separate Context Mode runtime scopes without treating them as exact provider savings.", "limitations": [ - "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", - "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", - "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", - "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", - "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", - "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", - "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", - "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", - "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." + "This historical snapshot is a dated report only, not a live dashboard or new-host execution acceptance.", + "RTK counters estimate retained command history and default to 90-day retention; selected-project values are a subset of the global result. Do not add snapshots or assume a forever ledger.", + "Headroom 0.37.0 caps the report at 30 days despite naming a field lifetime; zero ledger calls do not establish zero offline guard use or provider usage.", + "Context Mode uses byte/event heuristics and separate runtime state. Illustrative cost estimates are not bills, and persisted files must not be added to a direct MCP connection snapshot.", + "TOON statistics are tokenx heuristics for one conversion, not a native cumulative ledger. The compact-JSON exact counterexample is represented by the separate catalog receipt and must not be counted twice.", + "Raw private files, host paths, full command outputs and session identifiers are omitted. Sanitized fields and aggregate hashes do not independently attest provider activity." ], - "path": "evidence/receipts/native-claude-profile-20260920.json" + "path": "evidence/receipts/token-practice-native-counters-20260920.json" }, { - "id": "native-claude-session-recovery-20260920", - "kind": "native_model_e2e", + "id": "token-practice-gap-followup-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "playwright-cli", + "agentsview", + "ccusage", + "claude-hud", + "openresearch", + "codex-for-claude", + "codex" ], - "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", + "claim": "Six separately scoped follow-ups exercised a pinned Linux browser fixture, a single-session archive query, offline usage parsing, a synthetic HUD renderer, public-paper retrieval and one read-only native bridge backend task.", "limitations": [ - "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", - "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", - "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", - "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." + "These later bounded results do not turn the earlier dated 52-component audit into 52 full end-to-end passes. Individual scopes below remain authoritative.", + "Three failed attempts remain: file-protocol navigation rejection, implicit archive auto-start message failure and archive restart-lock failure. Successful recovery does not erase them.", + "Playwright used an existing Chrome installation and a fixture-only loopback HTTP endpoint. Its Playwright dependencies are alpha builds; no default browser download or arbitrary-site acceptance was tested.", + "The archive was restricted to one explicit project session. Full private transcripts, authentication material and session identifiers are omitted; automatic archive discovery did not pass.", + "HUD acceptance is a synthetic renderer fixture, not a live interactive account display. OpenResearch acceptance is public-paper retrieval, not an agent research workflow or research-quality assessment.", + "The ccusage reports overlap and must not be added. Upstream parser categories and totals are not bills or a matched provider savings comparison. The first date-only query returned an empty window.", + "The bridge trial is additional observed provider usage, not savings. It used one backend task without an outer Claude interaction or matched baseline; cached input is a subset of native input.", + "Tracked source remained unchanged; native MCP startup created untracked metadata. All owned temporary services were stopped. Public aggregate hashes bind retained evidence but do not independently reproduce private logs." ], - "path": "evidence/receipts/native-claude-session-recovery-20260920.json" + "path": "evidence/receipts/token-practice-gap-followup-20260920.json" }, { - "id": "native-cli-gaps", - "path": "evidence/receipts/native-cli-gaps.json", - "kind": "native_model_e2e", + "id": "native-lifecycle-sample-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "qmd", - "codebase-memory-mcp", - "agent-browser" + "edgartools", + "duckdb" ], - "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", + "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", "limitations": [ - "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", - "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." - ] + "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", + "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", + "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", + "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", + "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", + "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." + ], + "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" }, { - "id": "native-codex-session-recovery-20260920", - "kind": "native_model_e2e", + "id": "synthetic-catalyst-contract-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "codex" + "duckdb" ], - "claim": "Native Codex on Mac interrupted an owned pending dynamic tool, reconnected through a new app-server and resumed the same native thread/session to finalize an unchanged single checkpoint.", + "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", "limitations": [ - "One synthetic two-turn fixture on the installed Mac bundled alpha; no general distributed exactly-once guarantee.", - "No arbitrary shell/MCP descendant, provider cancellation, power loss or independent-host restore test.", - "Native cumulative token categories counted once; retries, billing and enclosing coordinator usage unknown; no savings claim." + "Protocol thresholds are exploratory choices, not fitted or proven optimal.", + "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", + "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", + "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", + "No provider calls, broker orders, new model turn or net token-savings measurement." ], - "path": "evidence/receipts/native-codex-session-recovery-20260920.json" + "path": "blueprints/us-equities/catalyst-experiment/receipt.json" }, { - "id": "native-context-memory", - "path": "evidence/receipts/native-context-memory.json", + "id": "native-research-efficiency-20260920", "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", - "context-mode", - "serena", - "rtk" + "qmd" ], - "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", + "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", "limitations": [ - "Earlier Serena/RTK run uses its original CLI version.", - "PreCompact was not induced; current Desktop catalog is distinct from child native clients." - ] - }, - { - "id": "native-convergence-review-20260919", - "path": "blueprints/us-equities/convergence-program/review-receipt.json", - "kind": "native_model_e2e", - "component_ids": [ - "codex", - "claude-code", - "dagu" + "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", + "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", + "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", + "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", + "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", + "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", + "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", + "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", + "Local supervision does not prove provider-side cancellation; no run timed out.", + "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." ], - "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", - "limitations": [ - "Models checked packet/report consistency, not original sources or underlying native artifacts.", - "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", - "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", - "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", - "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", - "Usage belongs to this pair only; not whole-goal consumption or causal savings." - ] + "path": "blueprints/us-equities/research-efficiency/native-receipt.json" }, { - "id": "native-corporate-actions-20260920", + "id": "native-ci-security-20260920", "kind": "native_cli_e2e", "component_ids": [ - "lean" + "zizmor" ], - "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", + "claim": "Native zizmor1.30.1 on macOS accepts the published workflow under offline regular analysis and rejects an inert unsafe fixture with three findings; two executable regression checks pass.", "limitations": [ - "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", - "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", - "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", - "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", - "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", - "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." + "Offline regular analysis is scoped static evidence, not absence of every vulnerability or signature verification.", + "Mac binary and the checksum-locked Linux CI wheel are distinct artifacts; new runner execution is established by its own CI result.", + "The unsafe fixture was analyzed but never executed. No model calls, broker actions or savings measurement." ], - "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" + "path": "blueprints/convergence-practice/ci-security/receipt.json" }, { - "id": "native-dagu-job-recovery-20260920", - "kind": "native_cli_e2e", + "id": "native-claude-child-patch-20260920", + "kind": "native_model_e2e", "component_ids": [ - "dagu" + "claude-code" ], - "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", + "claim": "Native Claude Code2.1.278 on Ubuntu24.04 WSL2 used Opus5 through Max for one foreground isolated child repair. Only planner.py changed; all12 frozen visible tests pass independently after8 seed failures.", "limitations": [ - "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", - "Initial native schema failure and earlier Mac success are retained; no savings comparison." + "One synthetic visible-oracle fixture, not a held-out benchmark, real application or GPU acceptance.", + "Ultracode was requested; observed native delegation does not establish dynamic-workflow selection or an OS sandbox.", + "Three native usage views retain different scopes; native retries and whole Desktop usage are unknown. No matched model baseline or savings claim.", + "Local supervision completed without timeout; provider cancellation, crash recovery and full-host backup were not tested." ], - "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" + "path": "blueprints/convergence-practice/native-worker/receipt.json" }, { - "id": "native-dagu-retry-tests-20260920", + "id": "upstream-native-tools-20260920", + "path": "evidence/receipts/upstream-native-tools-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "dagu" + "beads", + "skills-ref", + "otel-tui" ], - "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", + "claim": "Three supplemental upstream tools installed on the source Linux/WSL host: Beads persisted task claims and dependency transitions, skills-ref validated and rendered a selected skill, and otel-tui ingested and displayed one synthetic loopback trace.", "limitations": [ - "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", - "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", - "No broker/provider operations or token savings were measured.", - "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "Bounded native CLI/TUI acceptance on Linux/WSL; no new native Codex or Claude provider task was run for these additions.", + "Beads used one owned Git fixture with embedded Dolt, explicit task scope, skipped agent-instruction generation and skipped hooks. It does not replace ai-memory.", + "skills-ref is upstream's reference/demo implementation; successful portable-format validation does not certify production client extensions or tool semantics.", + "otel-tui received one synthetic local trace; no production or native-provider telemetry session was evaluated and no persistent exporter was installed.", + "None of these three tools exposes a verified cumulative token-savings counter. Exact causal lifetime provider savings remain null.", + "Public command forms substitute portable variables for private host paths; private raw operation logs are not published." ], - "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-dashboard-access-20260921", + "id": "native-ai-memory-maintenance-20260920", + "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "dagu", - "qdrant", - "agentsview", - "grafana", - "prometheus", - "ntfy", - "agent-browser", - "omniroute" + "ai-memory" ], - "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", + "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", "limitations": [ - "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", - "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", - "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", - "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", - "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", - "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", - "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", + "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", + "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", + "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", + "Forward-only migrations may require restoring the retained private backup to downgrade." ], - "path": "evidence/receipts/native-dashboard-access-20260921.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-dashboard-data-20260921", + "id": "native-linux-zizmor-20260920", + "path": "evidence/receipts/native-linux-zizmor-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qmd", - "qdrant", - "agentsview", - "grafana", - "loki", - "rtk", - "context-mode", - "headroom", - "jcodemunch-mcp", - "promptfoo", - "serena", - "systemd" + "zizmor" ], - "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", + "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", "limitations": [ - "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", - "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", - "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", - "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", - "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", - "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", - "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", - "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", - "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", + "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", + "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", + "No provider task was run and zizmor supplies no verified lifetime token-savings counter." ], - "path": "evidence/receipts/native-dashboard-data-20260921.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "native-edgartools-catalyst-20260919", + "id": "native-dagu-job-recovery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "dagu" ], - "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", + "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", "limitations": [ - "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", - "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", - "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", - "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", - "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", - "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", - "Native text/byte counts are not provider token savings.", - "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." + "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", + "Initial native schema failure and earlier Mac success are retained; no savings comparison." ], - "path": "blueprints/us-equities/catalyst-provenance/receipt.json" + "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" }, { - "id": "native-exact-nanosecond-replay-20260919", - "path": "blueprints/us-equities/nanosecond-replay/receipt.json", - "kind": "native_cli_e2e", + "id": "native-codex-session-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "duckdb", - "pandas" + "codex" ], - "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", + "claim": "Native Codex on Mac interrupted an owned pending dynamic tool, reconnected through a new app-server and resumed the same native thread/session to finalize an unchanged single checkpoint.", "limitations": [ - "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", - "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", - "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", - "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", - "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", - "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", - "No broker, trading strategy, actual feed or net token-saving acceptance." - ] + "One synthetic two-turn fixture on the installed Mac bundled alpha; no general distributed exactly-once guarantee.", + "No arbitrary shell/MCP descendant, provider cancellation, power loss or independent-host restore test.", + "Native cumulative token categories counted once; retries, billing and enclosing coordinator usage unknown; no savings claim." + ], + "path": "evidence/receipts/native-codex-session-recovery-20260920.json" }, { "id": "native-gpu-patch-20260920", @@ -2072,52 +1686,67 @@ "path": "evidence/receipts/native-gpu-patch-20260920.json" }, { - "id": "native-grand-dashboard-20260919", - "path": "observability/grand-dashboard/receipt.json", - "kind": "native_cli_e2e", + "id": "native-claude-session-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "grafana", - "loki", - "prometheus", - "dagu" + "claude-code" ], - "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", + "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", "limitations": [ - "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", - "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", - "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", - "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", - "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", - "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", - "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", - "Recorded worker/decision state is not a live process registry.", - "No broker execution, exact-once accounting, universal coverage or net token savings.", - "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." - ] + "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", + "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", + "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", + "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." + ], + "path": "evidence/receipts/native-claude-session-recovery-20260920.json" }, { - "id": "native-harness-defaults-20260920", - "kind": "artifact_measurement", + "id": "token-native-retained-functional-20260920", + "path": "evidence/receipts/token-native-retained-functional-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code" + "context-hub", + "headroom", + "mcp-inspector", + "promptfoo", + "worktrunk" ], - "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", + "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", "limitations": [ - "Saved instruction bytes are not proof that every future model decision will follow them.", - "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", - "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." - ], - "path": "evidence/receipts/native-harness-defaults-20260920.json" + "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", + "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", + "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", + "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", + "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", + "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." + ] }, { - "id": "native-headroom-mcp-20260920", - "path": "evidence/receipts/native-headroom-mcp-20260920.json", + "id": "native-jcodemunch-20260920", + "path": "evidence/receipts/native-jcodemunch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "headroom" + "jcodemunch-mcp" ], - "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", + "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", + "limitations": [ + "Single bounded code-reading task, not a native provider A/B trial.", + "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", + "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", + "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", + "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", + "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", + "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." + ] + }, + { + "id": "native-headroom-mcp-20260920", + "path": "evidence/receipts/native-headroom-mcp-20260920.json", + "kind": "native_cli_e2e", + "component_ids": [ + "headroom" + ], + "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", "limitations": [ "Owned synthetic acceptance artifacts demonstrate artifact reduction, not lifetime production or provider-token savings", "MCP summary is not a lossless replacement of the original; its exact full retrieval consumes the original token count", @@ -2128,676 +1757,589 @@ ] }, { - "id": "native-historical-leverage-stress-20260919", - "path": "blueprints/us-equities/historical-simulation/receipt.json", - "kind": "native_cli_e2e", + "id": "native-token-focus-clients-20260920", + "path": "evidence/receipts/native-token-focus-clients-20260920.json", + "kind": "native_model_e2e", "component_ids": [ - "lean" + "codex", + "claude-code", + "context-mode", + "jcodemunch-mcp" ], - "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", + "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", "limitations": [ - "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", - "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", - "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", - "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", - "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", - "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", - "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", - "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", - "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", - "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", - "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", - "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", - "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", - "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", - "No paper/live orders or automatic promotion." + "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", + "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", + "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", + "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", + "Raw private prompts, client streams, account identifiers and host paths are not published." ] }, { - "id": "native-jcodemunch-20260920", - "path": "evidence/receipts/native-jcodemunch-20260920.json", + "id": "native-sandbox-network-20260920", + "path": "evidence/receipts/native-sandbox-network-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "jcodemunch-mcp" + "sandbox-runtime" ], - "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", + "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", "limitations": [ - "Single bounded code-reading task, not a native provider A/B trial.", - "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", - "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", - "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", - "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", - "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", - "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." + "HTTP proxy path tested on this Linux/WSL host", + "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", + "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", + "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." ] }, { - "path": "blueprints/us-equities/execution-realism/receipt.json", - "id": "native-lean-execution-sensitivity-20260919", - "kind": "native_cli_e2e", + "id": "native-claude-hud-interactive-20260920", + "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", + "kind": "compatibility_attempt", "component_ids": [ - "lean" + "claude-hud" ], - "claim": "Native LEAN completed three fixed-order historical simulations with distinct upstream fee/slippage assumptions; serialized fill cash reconciles to native rounded summaries and all mounted engine/data input hashes remained unchanged.", + "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", "limitations": [ - "Exact arithmetic over serialized native event values; exported five-decimal fill prices and cent-rounded summaries do not expose all internal precision.", - "Illustrative fees and slippage are assumptions, not calibrated market or Alpaca execution observations.", - "Full-quantity market fills remain assumed; participation, partial fills, impact, latency, queueing, cancellation and broker reconciliation remain unaccepted.", - "Bundled five-day data do not establish PIT/corporate-action/universe quality or investment returns.", - "The normal dotnet build/restore route timed out twice; only the installed native C# compiler route is accepted.", - "Mounted input hashes do not prove every file was read; successful request logs list 13 paths plus possible separately read metadata.", - "No broker connection, account entitlement, deployment, strategy promotion, provider usage or token saving is established." + "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", + "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", + "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." ] }, { - "id": "native-lifecycle-sample-20260920", + "id": "native-application-delivery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "nextjs", + "react", + "fastapi", + "postgresql" ], - "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", + "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", "limitations": [ - "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", - "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", - "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", - "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", - "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", - "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." + "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", + "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", + "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", + "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", + "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", + "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", + "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", + "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." ], - "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" + "path": "blueprints/convergence-practice/application-delivery/receipt.json" }, { - "id": "native-linux-zizmor-20260920", - "path": "evidence/receipts/native-linux-zizmor-20260920.json", + "id": "mac-native-document-ingestion-20260920", "kind": "native_cli_e2e", "component_ids": [ - "zizmor" + "poppler" ], - "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", + "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", - "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", - "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", - "No provider task was run and zizmor supplies no verified lifetime token-savings counter." + "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", + "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", + "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", + "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", + "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "blueprints/convergence-practice/document-ingestion/receipt.json" }, { - "id": "native-memory", - "path": "evidence/receipts/native-memory.json", - "kind": "native_model_e2e", + "id": "native-wsl-restic-synthetic-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "codex", - "claude-code" + "restic" ], - "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", + "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", "limitations": [ - "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", - "No historical archive backfill or LLM/embedding consolidation pipeline enabled." - ] + "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", + "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", + "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", + "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", + "No token, storage-efficiency or backup performance claim.", + "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", + "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", + "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", + "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", + "Ten offline oracle/guard tests are distinct from the actual native restic commands." + ], + "path": "blueprints/convergence-practice/wsl-restore/receipt.json" }, { - "id": "native-memory-lifecycle-20260919", - "path": "blueprints/us-equities/memory-lifecycle/receipt.json", + "id": "mac-native-container-storage-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "apple-container", + "postgresql" ], - "claim": "A disposable, network-isolated native ai-memory fixture passed 23 lifecycle/routing checks across 31 MCP calls; exact-path TTL behavior and explicit sweep limits retained.", + "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", "limitations": [ - "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", - "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", - "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", - "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", - "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", - "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", - "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", - "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", - "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", - "Isolated fixture, not the live memory store or all client hooks.", - "TTL is default-search visibility until sweep, not immediate access revocation.", - "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." - ] + "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", + "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", + "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", + "Images remain cached; only owned empty failed container, test database container and test volume were removed.", + "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." + ], + "path": "blueprints/convergence-practice/container-storage/receipt.json" }, { - "id": "native-memory-rag-alignment-20260921", + "id": "mac-native-application-migration-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qdrant", - "qmd", - "vllm", - "grafana", - "loki" + "fastapi", + "postgresql" ], - "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", + "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", "limitations": [ - "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", - "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", - "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", - "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", - "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", - "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", - "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." + "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", + "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", + "No model calls; whole-task provider usage unknown." ], - "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" + "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" }, { - "id": "native-nautilus-ci-20260920", + "id": "velanext-native-quality-tools-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "gitleaks", + "worktrunk" ], - "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", + "claim": "On VelaNext, exact gitleaks8.30.1 detected one inert test credential and accepted the clean control with redacted reports. Worktrunk0.78.0 created/listed/removed owned worktrees while refusing dirty removal without loss.", "limitations": [ - "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", - "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", - "Network namespace and available-interface observations are not measured counts of attempted external transports." + "Isolated synthetic Linux/WSL fixtures; no arbitrary repository safety/security certification or Mac acceptance inferred.", + "Original executed runner and attempt retained. Second attempt follows exact-pin/archive/binary/version binding and timeout-evidence hardening;20 offline guards passed on Mac and WSL.", + "GitHub attestation endpoints returned404. Publisher checksum, GitHub archive digest and exact pinned license checks passed; no attestation claim.", + "No accounts, shared services, project hooks or model calls changed by qualification. Global promotion, when performed, is separate host deployment evidence.", + "Whole coordinator/worker provider usage is unknown; no token or monetary savings claim." ], - "path": "evidence/receipts/native-nautilus-ci-20260920.json" + "path": "blueprints/convergence-practice/wsl-native-tools/receipt.json" }, { - "id": "native-nautilus-v2-20260920", + "id": "mac-memory-patch-20260920", + "path": "evidence/receipts/mac-memory-patch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "ai-memory" ], - "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", + "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", "limitations": [ - "Release candidate, not production/live-capital acceptance.", - "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", - "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", - "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", - "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", - "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", - "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." - ], - "path": "evidence/receipts/native-nautilus-v2-20260920.json" + "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", + "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", + "No provider or whole-task token savings measurement." + ] }, { - "id": "native-observability", + "path": "evidence/receipts/wsl-application-20260920.json", + "id": "wsl-application-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana", - "alertmanager", - "ntfy" + "nextjs", + "react", + "fastapi", + "postgresql", + "playwright-test" ], - "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", + "claim": "Clean isolated WSL runtime restored the same locked application, passed12 API checks, migration reversal, schema/types, production build and real browser flow; exact row/history persisted after PostgreSQL/API/Next restart.", "limitations": [ - "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", - "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", - "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", - "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", - "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", - "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." - ], - "path": "observability/receipt.json" + "Synthetic loopback application; no production deployment, user authentication or another-host acceptance.", + "Official exact Ubuntu packages were extracted task-only with signed metadata/SHA verification; no package scripts or system database changes.", + "Historical application inputs remain frozen; Makelevel/TIME_WAIT recipe fixes were qualified separately with five real make/socket tests on Mac and WSL.", + "No model calls by application commands; whole-task usage remains unknown." + ] }, { - "id": "native-observability-followup", - "kind": "native_model_e2e", + "id": "wsl-transport-recovery-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "context-mode", - "ai-memory", - "socraticode", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana" + "dagu" ], - "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", + "claim": "An owned nonmultiplexed SSH client was terminated; fresh reconnect observed the same native Dagu job running with one unchanged checkpoint, then native completion without stop or retry.", "limitations": [ - "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", - "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", - "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", - "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", - "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", - "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." + "Controlled client termination and a deliberately detached deterministic job; not a real network outage, host restart, model-session recovery or distributed exactly-once guarantee.", + "First harness attempt misclassified native SSH exit255 and stopped the job; its narrower same-run finalizer retry is retained separately from corrected survival acceptance.", + "Original12-test oracle passed before and after; observed owned processes/listener retired; whole-task provider usage remains unknown." ], - "path": "observability/followup-receipt.json" + "path": "evidence/receipts/wsl-transport-recovery-20260920.json" }, { - "id": "native-offhost-app-state-20260920", + "id": "wsl-document-ingestion-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qdrant", - "restic" + "poppler" ], - "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", + "claim": "Native Poppler26.09.0 built in a clean WSL prefix and passed the frozen3-page,24-cell,8-positive/4-absent document protocol; four extraction/retrieval artifacts exactly match Mac output.", "limitations": [ - "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", - "Sequential native application snapshots do not establish an atomic cross-application transaction.", - "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", - "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", - "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", - "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", - "No model/provider/broker calls or causal token/cost savings measurement." + "Designed born-digital Latin fixture with explicit table geometry; no OCR, inferred layout, general semantic retrieval or broad upstream corpus qualification.", + "Exact source signature, signed package extraction and native dependency checks preceded execution; failed first public-key lookup remains recorded.", + "No global package/service/client change or model/GPU invocation; whole-task provider usage unknown." ], - "path": "evidence/receipts/native-offhost-app-state-20260920.json" + "path": "evidence/receipts/wsl-document-ingestion-20260920.json" }, { - "id": "native-offhost-restic-20260920", + "id": "wsl-memory-maintenance-20260920", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "ai-memory" ], - "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", + "claim": "Official Linux ai-memory2.3.2 passed65 synthetic native checks across exact scope, Unicode/reserved paths, restart, upstream HTTP backup and native restore; four owned processes exited0.", "limitations": [ - "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", - "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", - "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", - "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", - "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", - "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." + "Isolated fresh synthetic store and39 MCP tool calls; not production activation, native-client integration or prior-version migration.", + "Automatic capture, embeddings, generation, watcher and autowire disabled; no OS-confinement claim.", + "Native backup/restore both exit0; complete private logs retained, fixture model calls0 and whole-task provider usage unknown." ], - "path": "evidence/receipts/native-offhost-restic-20260920.json" + "path": "evidence/receipts/wsl-memory-maintenance-20260920.json" }, { - "path": "adoption/paired/receipt.json", - "id": "native-paired-adoption-20260919", - "kind": "native_model_e2e", + "id": "token-practice-confirmation-20260920", + "kind": "historical_inventory", "component_ids": [ - "codex", - "claude-code", - "duckdb", - "dagu", - "lean", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "rtk", + "context-mode", + "headroom", + "jcodemunch-mcp" ], - "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", + "claim": "Dated direct upstream counter outputs, current release metadata, independent artifact rechecks and reconciled recorded monitoring support explicit baseline selection without claiming causal lifetime provider savings.", "limitations": [ - "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", - "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", - "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", - "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", - "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", - "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", - "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", - "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." - ] + "Historical source-host observations only; not live acceptance on the reader's PC.", + "Upstream retained-history estimates, exact artifact counts and provider consumption are different quantities and must not be summed.", + "Artifact and client rechecks inspected existing retained inputs and streams; no new model task or reinstall was performed in this confirmation.", + "Public native fields are allowlisted unchanged from private outputs; host paths, process identifiers and account details are omitted.", + "Latest monitoring queries returned no matching observations in their six-hour window; this does not mean zero usage or newly confirmed savings.", + "Latest-release equality was checked only for the four selected token tools; accepted specialist compatibility pins are separate." + ], + "path": "evidence/receipts/token-practice-confirmation-20260920.json" }, { - "path": "blueprints/us-equities/point-in-time/receipt.json", - "id": "native-point-in-time-contract-20260919", + "id": "native-token-clean-prefix-20260920", "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "headroom", + "jcodemunch-mcp" ], - "claim": "DuckDB 1.5.5 materialized and selected a synthetic temporal snapshot; late revisions, universe state, feed/adjustment scope and pinned snapshot integrity were exercised through native Python SDK/SQL commands.", + "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", "limitations": [ - "Synthetic observations only; no entitled or accepted market dataset, SEC download, vendor API, model or broker call occurred.", - "Availability timestamps and evidence references are declarations, not independently authenticated vendor publication evidence.", - "Local snapshot ingestion time is separate from source publication and original capture time.", - "Scope is realized observations and effective universe state; it does not model every corporate action, event forecast, symbol mapping or delisting history.", - "Hash checks require the caller to retain a trusted manifest digest independently; local file permissions are not immutable storage or off-host recovery." - ] + "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", + "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", + "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", + "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", + "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", + "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", + "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", + "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." + ], + "path": "evidence/receipts/native-token-clean-prefix-20260920.json" }, { - "id": "native-progress-capacity-20260921", + "id": "current-session-observation-20260920", "kind": "native_cli_e2e", "component_ids": [ + "agentsview", + "ai-memory", + "alertmanager", + "ccusage", + "claude-hud", + "context-mode", + "grafana", + "headroom", + "jcodemunch-mcp", "loki", - "dagu" + "mcporter", + "ntfy", + "opentelemetry-collector-contrib", + "otel-tui", + "prometheus", + "rtk", + "serena", + "socraticode" ], - "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", + "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", "limitations": [ - "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", - "No client restart, service restart or physical reboot was performed or verified.", - "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", - "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", - "No live provider inference, account change, new dependency or upstream version change for this repair." + "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", + "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", + "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", + "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", + "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", + "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", + "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", + "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." ], - "path": "observability/grand-dashboard/capacity-recovery-20260921.json" + "path": "evidence/receipts/current-session-observation-20260920.json" }, { - "id": "native-quality-defaults-20260920", + "id": "foundation-native-20260920", "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "qmd", + "qdrant", + "vllm", + "socraticode", + "serena", + "context-mode", + "jcodemunch-mcp", + "rtk", + "headroom", + "repomix", + "toon", "codex", - "claude-code" + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "omniroute" ], - "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", + "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", "limitations": [ - "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", - "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", - "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", - "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", - "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." + "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", + "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", + "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", + "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", + "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", + "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", + "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", + "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", + "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." ], - "path": "evidence/receipts/native-quality-defaults-20260920.json" + "path": "evidence/receipts/foundation-native-20260920.json" }, { - "id": "native-rag", - "path": "evidence/receipts/native-rag.json", - "kind": "native_model_e2e", + "id": "codex-session-environment-20260920", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "socraticode", - "qdrant", - "vllm", - "huggingface-hub-native" + "context-mode", + "jcodemunch-mcp", + "serena", + "ai-memory", + "socraticode" ], - "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", + "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", "limitations": [ - "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", - "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." - ] - }, - { - "id": "native-research-efficiency-20260920", - "kind": "native_model_e2e", - "component_ids": [ - "codex", - "claude-code", - "qmd" - ], - "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", - "limitations": [ - "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", - "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", - "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", - "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", - "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", - "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", - "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", - "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", - "Local supervision does not prove provider-side cancellation; no run timed out.", - "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." - ], - "path": "blueprints/us-equities/research-efficiency/native-receipt.json" - }, - { - "id": "native-research-runtime-20260919", - "kind": "native_model_e2e", - "component_ids": [ - "claude-code", - "dagu", - "lean", - "duckdb", - "opentelemetry-collector-contrib", - "prometheus", - "loki" - ], - "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", - "limitations": [ - "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", - "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", - "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", - "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", - "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", - "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", - "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", - "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." + "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", + "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", + "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", + "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", + "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", + "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", + "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." ], - "path": "blueprints/us-equities/research-runtime/receipt.json" + "path": "evidence/receipts/codex-session-environment-20260920.json" }, { - "id": "native-returned-results-20260921", + "id": "codex-desktop-live-20260920", "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "rtk", "context-mode", - "qmd", + "jcodemunch-mcp", "serena", "ai-memory", "socraticode", - "qdrant", - "agentsview", - "grafana", - "loki", - "prometheus", - "dagu", - "ntfy", - "omniroute", - "agent-browser", - "promptfoo", + "rtk", "headroom", - "jcodemunch-mcp" + "qmd", + "loki", + "prometheus" ], - "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", + "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", "limitations": [ - "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", - "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", - "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", - "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", - "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", - "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", - "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", - "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", - "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." + "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", + "Tools without native savings ledgers remain unavailable, not zero.", + "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", + "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", + "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", + "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", + "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", + "No fresh Prometheus turn sample in the selected window; no three-way observation join." ], - "path": "evidence/receipts/native-returned-results-20260921.json" + "path": "evidence/receipts/codex-desktop-live-20260920.json" }, { - "id": "native-runtime-role-resolution-20260930", - "kind": "native_model_e2e", + "id": "native-session-defaults-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "omniroute", - "claude-code" + "codex", + "claude-code", + "ai-memory", + "context-mode", + "rtk", + "qmd" ], - "claim": "One host installed separately versioned OpenHands CLI1.16.0/SDK1.50.1 and DeepAgents0.7.21 candidates through native supported interfaces. CLI108 and final SDK184 unchanged upstream tests passed; DeepAgents361 passed with1 expected failure in its separate upstream-lock environment. Actual OmniRoute Sol-Max requests passed one OpenHands native LLM exact-output round-trip and bounded DeepAgents selected-skill/single-specialist research, saved-context repair and fresh-process SQLite continuation. All results are scoped, not a universal framework winner or global default promotion.", + "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", "limitations": [ - "CLI SDK1.21 Jinja cache hard-codes real user home; strict cache isolation remains held.", - "Final SDK native configuration/tests exercise skills/plugins/MCP/condenser interfaces; production MCP, full Conversation/condenser/provider execution and optional extensions are not qualified by them.", - "Original DeepAgents24-step attempt failed; one changed32-step saved-context repair passed. No arbitrary interrupted-tool replay, OS confinement or comparative winner is qualified.", - "Complete provider billing/backend identity and whole-task token savings remain unknown; cached/reasoning counters are subsets.", - "Native Claude Opus/Max peer timed out180s exit124 without a verdict; later peer turns reached account usage limits. Completed earlier reviews are preserved; no new acknowledgement/approval is claimed.", - "Original full output stays private with exact hashes; public excerpts replace private paths and omit raw conversations, marker values, credentials and flow identifiers.", - "Exact executed sources are archived. Initial whitespace/comment cleanup had identical ASTs; the current worker subsequently adopts native secret-aware serialization after CodeQL, verified by native fixture and fresh saved-state checks. No new provider run is claimed." + "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", + "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", + "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", + "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", + "Claude startup events join four starts to four completions but do not identify individual configured commands.", + "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", + "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." ], - "path": "evidence/receipts/native-runtime-role-resolution-20260930.json" + "path": "evidence/receipts/native-session-defaults-20260920.json" }, { - "id": "native-sandbox-network-20260920", - "path": "evidence/receipts/native-sandbox-network-20260920.json", + "id": "native-token-ci-local-20260920", "kind": "native_cli_e2e", "component_ids": [ - "sandbox-runtime" + "rtk", + "qmd", + "repomix", + "toon" ], - "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", + "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", "limitations": [ - "HTTP proxy path tested on this Linux/WSL host", - "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", - "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", - "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." - ] + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" + ], + "path": "evidence/receipts/native-token-ci-local-20260920.json" }, { - "id": "native-sdk-acceptance-20261002", + "id": "native-token-ci-github-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code" + "rtk", + "qmd", + "repomix", + "toon" ], - "claim": "Actual Claude SDK task failed its independent oracle despite successful protocol completion; a separate informed Codex SDK repair passed all four unchanged cases. Unchanged Claude and OpenHands default source suites passed within recorded skip, warning and environment limits.", + "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", "limitations": [ - "Two different model tasks and source-test suites have different evidence scopes; this is not a model-quality or token-efficiency comparison, global SOTA winner claim or full foundation closure.", - "Claude original useful-task acceptance remains FAILED. Codex passes only the four-case informed repair; its requested model/effort are bound, but resolved model/provider identity and billing cost were not returned.", - "Coordinator observed invocation, native exits and process samples. Independent reviewers checked retained source/artifact/outcome bindings without rerunning; hash equality alone is not execution provenance.", - "Public attachments are declared projections, exact resulting candidates and selected native output. Complete permitted streams remain private; raw conversations, auth/session metadata and personal paths are not published.", - "Claude default source suite has six skips, with five collection identities inferred from source/dependencies. OpenHands retains seven optional ToolShield skips, 12 xfails, 83 warnings, default stress/ACP-live exclusions and a preserved failed environment attempt; exact fetched model-map bytes were not retained.", - "OpenHands is supplemental source-test evidence, not a new adopted stack component. Its FACTS provider task remains unrun in this lane; Codex default source-suite execution remains with its separate owner.", - "Researcher/reviewer roles, resume/recovery, selected MCP, generation permission-negative tests, complete target lifecycle and target token routing remain open. Exact before/after process-name samples do not prove complete descendant cleanup.", - "Historical Claude task binding is CLI2.1.287. Current release2.1.288 reconciliation remains with the configuration owner and cannot retroactively change these captures." + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" ], - "path": "evidence/receipts/native-sdk-acceptance-20261002.json" + "path": "evidence/receipts/native-token-ci-github-20260920.json" }, { - "id": "native-sdk-role-mcp-followup-20261002", + "id": "native-tavily-cli-20260920", "kind": "native_cli_e2e", "component_ids": [ + "tavily-cli", + "codex", "claude-code" ], - "claim": "Retained Claude SDK evidence supports minimal inline MCP callback/terminal assertions with synthetic controls and one native deny-rule pair with a disarmed-rule control; the reviewer case completed without a discriminating control, and the researcher case is controlled for missing findings only. Prior researcher failures remain FAIL and complete role qualification remains incomplete.", + "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", "limitations": [ - "Retained independent case ACCEPT verdicts are observations, not qualified role acceptance. Reviewer negative grading has no discriminating control; the original researcher FAIL controls missing findings only, not wrong facts/citations or attribution.", - "Synthetic MCP0/1/1 controls discriminate callback presence and terminal success only. The separate native armed0/disarmed1 pair supports one actual deny-rule observation; definition visibility unknown, no can_use_tool callback configured.", - "Earlier query timestamps unknown; deny-pair UTC intervals captured. Counters retain separate scopes; interrupted whole-query usage/cost unknown. No billed-cost or efficiency claim.", - "Selected QMD/Serena, recovery, containment, complete lifecycle and whole-host qualification remain open; process samples are bounded and staging is not managed-upgrade acceptance.", - "Sanitized projections only; private original hashes, failed cases and corrections retained. The projection step ran no new provider/test/control execution and made no shared edits; registration in manifests/evidence.json is separate from that step." + "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", + "Claude global skill listing is not a Claude model-turn execution of every skill.", + "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", + "Search/Extract results do not independently establish their source claims or a complete research deliverable.", + "No native lifetime or exact provider-token savings counter is established.", + "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." ], - "path": "evidence/receipts/native-sdk-role-mcp-followup-20261002.json" + "path": "evidence/receipts/native-tavily-cli-20260920.json" }, { - "id": "native-sec-access-resolution-20260919", + "id": "native-nautilus-v2-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "nautilus-trader" ], - "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", + "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", "limitations": [ - "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", - "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", - "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", - "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", - "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", - "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", - "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", - "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." + "Release candidate, not production/live-capital acceptance.", + "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", + "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", + "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", + "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", + "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", + "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." ], - "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" + "path": "evidence/receipts/native-nautilus-v2-20260920.json" }, { - "id": "native-sec-new-host-20260924", - "kind": "native_cli_e2e", + "id": "native-harness-defaults-20260920", + "kind": "artifact_measurement", "component_ids": [ - "edgartools" + "codex", + "claude-code" ], - "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", + "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", "limitations": [ - "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", - "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", - "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", - "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", - "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", - "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", - "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." + "Saved instruction bytes are not proof that every future model decision will follow them.", + "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", + "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." ], - "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", - "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" + "path": "evidence/receipts/native-harness-defaults-20260920.json" }, { - "id": "native-security-identity-20260920", - "kind": "native_cli_e2e", + "id": "native-worker-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "alpaca-py", - "duckdb" + "claude-code" ], - "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", + "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", "limitations": [ - "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", - "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", - "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", - "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", - "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", - "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", - "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", - "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." + "One synthetic local fixture and one physical WSL host, not arbitrary application state.", + "Actual native child identities and paths remain private; hashes bind retained streams.", + "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", + "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", + "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", + "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", + "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." ], - "path": "blueprints/us-equities/identity-readiness/native-receipt.json" + "path": "evidence/receipts/native-worker-recovery-20260920.json" }, { - "id": "native-service-reboot-20260920", - "kind": "native_cli_e2e", + "id": "foundation-catalog-ui-20260920", + "kind": "artifact_measurement", "component_ids": [ - "dagu", - "systemd" + "agent-browser" ], - "claim": "A signed disposable Ubuntu guest automatically resumed the same native Dagu run after an orderly kernel reboot, preserved its checkpoint and produced one local effect. A dedicated read-only serial observer and independent journal review confirmed completion before postboot SSH; owned cleanup passed.", + "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", "limitations": [ - "One orderly disposable guest reboot with a synthetic workload; not a physical PC, power loss, production disaster recovery, provider recovery or broker acceptance.", - "The unchanged official Dagu retry tests are a selected upstream subset. The project planner, its original 12-test oracle and the guest experiment are local synthetic integration coverage.", - "Source, disk and process continuity cover this owned guest only; no distributed exactly-once or arbitrary external side-effect guarantee.", - "Public text projections replace owned home prefixes and synthetic UUIDs and normalize CRLF. Original artifact/stream hashes and explicit projection rules are retained; projected bytes are not labelled raw-byte-identical.", - "The full auth-free guest archive contains three hidden bookkeeping files omitted by loose-file artifact upload. Independent inspection used the intact archive.", - "Both prior failed attempts remain failures; retrospective successful workload records did not override their missing acceptance evidence.", - "No model was called and no provider or lifetime token-saving measurement was made." + "Source pin/publication URLs pending parent final source commit and regeneration.", + "No provider/broker execution or broad regression rerun performed.", + "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." ], - "path": "evidence/receipts/native-service-reboot-20260920.json" + "path": "evidence/receipts/foundation-catalog-ui-20260920.json" }, { - "id": "native-session-defaults-20260920", + "id": "native-worker-containment-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "ai-memory", - "context-mode", - "rtk", - "qmd" + "systemd", + "claude-code" ], - "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", + "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", "limitations": [ - "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", - "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", - "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", - "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", - "Claude startup events join four starts to four completions but do not identify individual configured commands.", - "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", - "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." + "Deterministic cgroup proof is not successful native child crash/resume acceptance.", + "Earlier same-child continuation still required explicit direct descendant cleanup.", + "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." ], - "path": "evidence/receipts/native-session-defaults-20260920.json" + "path": "evidence/receipts/native-worker-containment-20260920.json" }, { - "id": "native-simulation-research-dashboard-20260919", + "id": "native-nautilus-ci-20260920", "kind": "native_cli_e2e", "component_ids": [ - "grafana", - "loki" + "nautilus-trader" ], - "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", + "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", "limitations": [ - "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", - "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", - "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", - "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", - "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", - "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", - "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." + "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", + "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", + "Network namespace and available-interface observations are not measured counts of attempted external transports." ], - "path": "blueprints/us-equities/simulation-research/receipt.json" + "path": "evidence/receipts/native-nautilus-ci-20260920.json" }, { - "id": "native-tavily-cli-20260920", + "id": "native-catalog-retrieval-20260920", "kind": "native_cli_e2e", "component_ids": [ - "tavily-cli", - "codex", - "claude-code" + "qmd" ], - "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", + "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", "limitations": [ - "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", - "Claude global skill listing is not a Claude model-turn execution of every skill.", - "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", - "Search/Extract results do not independently establish their source claims or a complete research deliverable.", - "No native lifetime or exact provider-token savings counter is established.", - "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." + "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", + "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", + "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", + "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." ], - "path": "evidence/receipts/native-tavily-cli-20260920.json" + "path": "evidence/receipts/native-catalog-retrieval-20260920.json" }, { "id": "native-tavily-session-20260920", @@ -2815,127 +2357,60 @@ "path": "evidence/receipts/native-tavily-session-20260920.json" }, { - "id": "native-terminal-profiles-20260920", - "kind": "native_cli_e2e", + "id": "native-worker-cgroup-20260920", + "kind": "native_model_e2e", "component_ids": [ - "codex", "claude-code", - "qdrant", - "vllm" - ], - "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", - "limitations": [ - "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", - "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", - "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", - "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", - "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." - ], - "path": "evidence/receipts/native-terminal-profiles-20260920.json" - }, - { - "id": "native-token-ci-github-20260920", - "kind": "native_cli_e2e", - "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "systemd" ], - "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", + "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", + "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", + "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", + "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", + "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." ], - "path": "evidence/receipts/native-token-ci-github-20260920.json" + "path": "evidence/receipts/native-worker-cgroup-20260920.json" }, { - "id": "native-token-ci-local-20260920", + "id": "native-service-reboot-20260920", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "dagu", + "systemd" ], - "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", + "claim": "A signed disposable Ubuntu guest automatically resumed the same native Dagu run after an orderly kernel reboot, preserved its checkpoint and produced one local effect. A dedicated read-only serial observer and independent journal review confirmed completion before postboot SSH; owned cleanup passed.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "One orderly disposable guest reboot with a synthetic workload; not a physical PC, power loss, production disaster recovery, provider recovery or broker acceptance.", + "The unchanged official Dagu retry tests are a selected upstream subset. The project planner, its original 12-test oracle and the guest experiment are local synthetic integration coverage.", + "Source, disk and process continuity cover this owned guest only; no distributed exactly-once or arbitrary external side-effect guarantee.", + "Public text projections replace owned home prefixes and synthetic UUIDs and normalize CRLF. Original artifact/stream hashes and explicit projection rules are retained; projected bytes are not labelled raw-byte-identical.", + "The full auth-free guest archive contains three hidden bookkeeping files omitted by loose-file artifact upload. Independent inspection used the intact archive.", + "Both prior failed attempts remain failures; retrospective successful workload records did not override their missing acceptance evidence.", + "No model was called and no provider or lifetime token-saving measurement was made." ], - "path": "evidence/receipts/native-token-ci-local-20260920.json" + "path": "evidence/receipts/native-service-reboot-20260920.json" }, { - "id": "native-token-clean-prefix-20260920", + "id": "native-offhost-app-state-20260920", "kind": "native_cli_e2e", "component_ids": [ - "headroom", - "jcodemunch-mcp" - ], - "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", - "limitations": [ - "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", - "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", - "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", - "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", - "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", - "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", - "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", - "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." - ], - "path": "evidence/receipts/native-token-clean-prefix-20260920.json" - }, - { - "id": "native-token-focus-clients-20260920", - "path": "evidence/receipts/native-token-focus-clients-20260920.json", - "kind": "native_model_e2e", - "component_ids": [ - "codex", - "claude-code", - "context-mode", - "jcodemunch-mcp" - ], - "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", - "limitations": [ - "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", - "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", - "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", - "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", - "Raw private prompts, client streams, account identifiers and host paths are not published." - ] - }, - { - "id": "native-token-stack-final-20260920", - "kind": "native_model_e2e", - "component_ids": [ - "claude-code", - "codex", - "context-mode", - "jcodemunch-mcp", - "headroom", - "rtk", - "opentelemetry-collector-contrib", - "loki", - "prometheus" + "ai-memory", + "qdrant", + "restic" ], - "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", + "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", "limitations": [ - "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", - "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", - "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", - "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", - "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", - "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", - "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", - "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." + "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", + "Sequential native application snapshots do not establish an atomic cross-application transaction.", + "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", + "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", + "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", + "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", + "No model/provider/broker calls or causal token/cost savings measurement." ], - "path": "evidence/receipts/native-token-stack-final-20260920.json" + "path": "evidence/receipts/native-offhost-app-state-20260920.json" }, { "id": "native-ultracode-20260921", @@ -2957,480 +2432,849 @@ "path": "evidence/receipts/native-ultracode-20260921.json" }, { - "id": "native-worker-cgroup-20260920", - "kind": "native_model_e2e", + "id": "native-dashboard-access-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "systemd" + "dagu", + "qdrant", + "agentsview", + "grafana", + "prometheus", + "ntfy", + "agent-browser", + "omniroute" ], - "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", + "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", "limitations": [ - "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", - "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", - "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", - "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", - "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." + "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", + "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", + "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", + "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", + "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", + "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", + "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." ], - "path": "evidence/receipts/native-worker-cgroup-20260920.json" + "path": "evidence/receipts/native-dashboard-access-20260921.json" }, { - "id": "native-worker-containment-20260920", + "id": "full-stack-convergence-20260921", "kind": "native_cli_e2e", "component_ids": [ - "systemd", - "claude-code" + "agent-browser", + "agentsview", + "ai-memory", + "ccusage", + "claude-code", + "codex", + "context-mode", + "dagu", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "loki", + "omniroute", + "openresearch", + "prometheus", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "toon", + "vllm", + "worktrunk" ], - "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", + "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", "limitations": [ - "Deterministic cgroup proof is not successful native child crash/resume acceptance.", - "Earlier same-child continuation still required explicit direct descendant cleanup.", - "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." + "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", + "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", + "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", + "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", + "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", + "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", + "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", + "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." ], - "path": "evidence/receipts/native-worker-containment-20260920.json" + "path": "evidence/receipts/full-stack-convergence-20260921.json" }, { - "id": "native-worker-recovery-20260920", - "kind": "native_model_e2e", + "id": "memory-landscape-20260921", + "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "codex", "claude-code" ], - "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", + "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", "limitations": [ - "One synthetic local fixture and one physical WSL host, not arbitrary application state.", - "Actual native child identities and paths remain private; hashes bind retained streams.", - "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", - "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", - "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", - "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", - "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." + "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", + "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", + "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", + "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", + "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", + "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", + "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", + "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", + "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." ], - "path": "evidence/receipts/native-worker-recovery-20260920.json" + "path": "evidence/receipts/memory-landscape-20260921.json" }, { - "id": "native-worker-supervision-20260919", - "path": "blueprints/us-equities/worker-supervision/receipt.json", + "id": "memory-landscape-lifecycle-20260921", "kind": "native_cli_e2e", "component_ids": [ - "systemd" + "ai-memory", + "socraticode", + "qdrant", + "vllm", + "serena", + "qmd", + "codex", + "claude-code" ], - "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", + "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", "limitations": [ - "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", - "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", - "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", - "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", - "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", - "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", - "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", - "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", - "Hashes bind retained evidence bytes; they do not independently attest the execution.", - "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", - "Configured resource limits were inspected, not saturation-tested." - ] + "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", + "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", + "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", + "Exact memory session/lifetime savings are not returned and remain null.", + "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." + ], + "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" }, { - "id": "native-workflow-graceful-recovery-20260921", + "id": "alpaca-paper-e2e-20260921", "kind": "native_cli_e2e", "component_ids": [ + "alpaca-py", "claude-code" ], - "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", + "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", "limitations": [ - "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", - "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", - "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", - "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." + "One operational smoke trial, not profitable strategy or continuous trading acceptance.", + "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", + "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." ], - "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" + "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" }, { - "id": "native-workflow-writing-comparison-20260921", + "id": "nautilus-equity-replay-20260921", "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "nautilus-trader" ], - "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", + "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", "limitations": [ - "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", - "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", - "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." + "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", + "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", + "SPY/LEAN corporate-action parity and historical universe availability remain separate." ], - "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" + "path": "evidence/receipts/nautilus-equity-replay-20260921.json" }, { - "id": "native-wsl-restic-synthetic-20260920", + "id": "foundation-convergence-20260921", + "kind": "native_model_e2e", + "component_ids": [ + "codex", + "claude-code", + "context-mode", + "rtk", + "headroom", + "toon" + ], + "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", + "limitations": [ + "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", + "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", + "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", + "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", + "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." + ], + "path": "evidence/receipts/foundation-convergence-20260921.json" + }, + { + "id": "native-progress-capacity-20260921", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "loki", + "dagu" ], - "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", + "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", "limitations": [ - "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", - "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", - "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", - "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", - "No token, storage-efficiency or backup performance claim.", - "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", - "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", - "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", - "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", - "Ten offline oracle/guard tests are distinct from the actual native restic commands." + "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", + "No client restart, service restart or physical reboot was performed or verified.", + "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", + "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", + "No live provider inference, account change, new dependency or upstream version change for this repair." ], - "path": "blueprints/convergence-practice/wsl-restore/receipt.json" + "path": "observability/grand-dashboard/capacity-recovery-20260921.json" }, { - "id": "nautilus-equity-replay-20260921", + "id": "claude-upstream-checks-20260921", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "codex", + "codex-for-claude", + "context-mode", + "dagu", + "difftastic", + "gitleaks", + "grafana", + "headroom", + "jcodemunch-mcp", + "lean", + "loki", + "markitdown", + "mcporter", + "nautilus-trader", + "openresearch", + "opentelemetry-collector-contrib", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", + "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", "limitations": [ - "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", - "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", - "SPY/LEAN corporate-action parity and historical universe availability remain separate." + "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", + "Complete originals remain private; public excerpts are bounded and sanitized.", + "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." ], - "path": "evidence/receipts/nautilus-equity-replay-20260921.json" + "path": "evidence/receipts/claude-upstream-checks-20260921.json" }, { - "id": "new-wsl-embedding-model-20261002", + "id": "foundation-rd-20260921", "kind": "native_model_e2e", "component_ids": [ - "huggingface-hub-native" + "claude-code", + "codex", + "codex-for-claude", + "qmd" ], - "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02 and 2026-10-03, with the generation model swift-iq3s-s2o-64k resident, the preregistered comparison for the new WSL's embedding model gave the slot to E1: qwen3-embedding:0.6b (Q8_0, Ollama library manifest ac6da0dfba84a81fdbfbaf330198c33cd77c4cdfc53e8bc50eb581914a15621d) on Ollama 0.35.0 as qwen3-embedding-8k (num_ctx 8192). On MTEB 2.22.1's CQADupstackUnixRetrieval (test split: 47,382 documents, 1,072 queries) its nDCG@10 was 0.49827 against 0.41394 for EmbeddingGemma on the same server: E1 minus E2 0.084331, 95% paired bootstrap interval over queries 0.067738 to 0.100656 (10,000 resamples, seed 20260927). Nemotron-3-Embed-1B, which needs a second model server, scored 0.5014; E3 minus E1 was 0.003124 with an interval of -0.012194 to 0.018141 that includes zero, so by the second-server rule it does not take the slot. WeMM-Embedding-2B passed the fit gate but ran out of GPU memory in its full run and is out. The reranking condition was not run.", + "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", "limitations": [ - "One public retrieval task (CQADupstack Unix: English technical questions from a StackExchange forum), one workstation, one throwaway distribution, one run per arm: a local integration check, not an acceptance on the destination distribution.", - "Nemotron's tie holds for this task only; multilingual retrieval, longer documents and other domains were not measured.", - "The two Ollama arms are GGUF conversions served by the one model server; a difference from the reference weights is a difference of the systems, not of the models alone.", - "E1's and E2's prompts are MTEB's reference prompts as observed with a stub before the runs (amendment 4a): E1 sends the Qwen3 instruction before queries and nothing before documents; E2 sends EmbeddingGemma's query and document prompts.", - "Gate F reads the model server's listing: in window pb2 the card's memory in use fell between steps while the server kept listing the generation model entirely on the GPU, consistent with the Windows driver moving part of it off the card, so E3 passing gate F does not show co-residency. In window pb1 the readings matched the resident models, so E1's co-residency with the generation model is supported by both readings.", - "E4's first error text was lost: after its evaluation failed out of memory, the script's memory query raised the same sticky CUDA error and the outer handler replaced the text; the outcome is not in doubt, because only the evaluation's handler sets out_of_memory.", - "The reranking condition was not run: no installed retrieval owner can call an external reranker (QMD reranks in-process with its bundled model), and zerank-2 (7.49 GiB of weights) cannot be resident beside the generation model on this card.", - "Recorded, not deciding: evaluation time E1 1,166 s, E2 771 s, E3 460 s (E3 in-process, not comparable with the Ollama arms); resident sizes E1 2,857,191,341 bytes and E2 681,417,113 bytes.", - "manifests/stack.json has no Ollama or MTEB component; component_ids name huggingface-hub-native, the native route for the revision-pinned snapshots of E3 and E4, which the measurement downloaded through the huggingface_hub library at MTEB's registered revisions (its version is in the throwaway's freeze list, which was not retained).", - "The 31 MB prediction files and the run records stay private and are listed by sha256 in files.json; the published per-query nDCG@10 files reproduce the decision statistic.", - "With a server-wide context of 64,000 the embedder loaded at its full context and took 5.78 GB (Part A, A1b); the measured system sets the context per model (qwen3-embedding-8k, 8,192 tokens), never server-wide." + "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", + "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", + "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", + "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", + "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." ], - "path": "evidence/artifacts/new-wsl-local-models-20261002/part-b-receipt.json" + "path": "evidence/receipts/foundation-rd-20260921.json" }, { - "id": "new-wsl-local-generation-model-20261002", + "id": "claude-foundation-finalization-20260921", "kind": "native_model_e2e", "component_ids": [ + "claude-code", "codex", - "claude-code" + "agent-browser", + "repomix" ], - "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02, the preregistered comparison for the new WSL's local generation model gave the slot to S2o: Swift-1.5-Qwen3.8-27B IQ3_S (ukisai/Swift-1.5-Qwen3.8-27B-GSQ-RCO-GGUF at revision d74895bbe5db4bec1e0024e7cc87d59c02d7631a, file sha256 1333c6ea70ef348d4ac6d62732772e8ad6571ac5b3754c14ed54f1a0d904a786, 11,771,546,912 bytes) on Ollama 0.35.0 as swift-iq3s-s2o-64k (context 64,000). On the same 100 BFCL simple_python cases (inspect-evals 0.23.0 on Inspect AI 0.3.273) through the server's chat and responses surfaces, its first-pass valid tool calls were 200 of 200 against 175 of 200 for the control gpt-oss:20b: difference 0.125, 95% paired bootstrap interval over cases 0.065 to 0.19 (10,000 resamples, seed 20260927), not a tie. Both arms were entirely on the GPU with the embedder resident in the order of use, and both passed 10 of 10 client tasks (Codex 0.160.0 and Claude Code 2.1.287). Bonsai PTQ1_0, Bonsai PQ2_0 and Swift on PrismML's llama.cpp server failed the function gate (0 of 3 runs each: the server skips the Codex client's namespace tool type), and qwen3.8:27b was not entirely on the GPU at 64,000 tokens.", + "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", "limitations": [ - "One workstation, one throwaway distribution, one run per case and arm: a local integration check of the systems named, not an acceptance on the destination distribution.", - "First-pass tool-call validity on 100 simple public cases (BFCL simple_python) through two interfaces; nothing about coding quality, long tasks, throughput under concurrent requests or behaviour above 64,000 tokens.", - "The Anthropic-style messages surface was not evaluated through the package (Inspect AI 0.3.273 cannot read this thinking model's answer); it was exercised only by Claude Code in the client tasks, which both arms passed.", - "S2o was slower in these runs: 292 and 303 seconds for 100 cases on chat and responses against 100 and 139 for the control, and 43.1 against 108.9 output tokens per second on single long prompts that were not run as a speed comparison.", - "S2o leaves less GPU memory free: 21,579 of 24,564 MiB in use with the embedder resident while Windows applications held about 2,600 MiB; earlier the same day they held up to about 5,900 MiB, at which the same load would leave under one GB. Co-residency on a busier desktop and on the destination distribution is not measured.", - "The Ollama import is this measurement's system, not a route the publisher documents: the library qwen3.8:27b model's renderer, parser, parameters, template and licence lines with the Swift file as FROM. The publisher's own route (llama.cpp's server, here PrismML's fork) failed the function gate for a reason that lies in that server. The quantization's card says its quality tests used a 512-token context.", - "The arm that took the slot was added by the preregistration's extension (amendment 3) after the owner asked for the newest releases; the deciding measurement as the critic named it had two arms (qwen3.8:27b and gpt-oss:20b), the earlier result for gpt-oss:20b is kept as a historical result, and gpt-oss:20b ran A2 as the control under the same rules.", - "Three deviations are recorded (a void first window, the Codex client's model name with its tag, a reused label); none changed a case, a limit, the metric or the rule, and none was decided on an outcome.", - "Recorded, not deciding: the package's own score (S2o 97 and 95 of 100, the control 83 and 83) and the client tasks (10 of 10 for each arm).", - "manifests/stack.json has no Ollama, Inspect AI or PrismML llama.cpp component, so component_ids name the two clients that ran the client tasks (Codex also ran the function gate); they ran at Codex 0.160.0 and Claude Code 2.1.287, not at the stack's recorded 0.159.3 and 2.1.284.", - "Raw model outputs (the Inspect logs, the client run records, the server logs) stay private and are listed by sha256 in files.json; the published per-case validity files carry case ids, verdicts, reasons and timings, and the decision statistic reproduces from them.", - "The Swift file's licence is the publisher's own (Swift Open License v1.0, with the original Qwen parts under Apache-2.0); the Modelfile's LICENSE block is the library model's Apache-2.0 text. Recorded, not judged." + "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", + "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", + "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", + "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." ], - "path": "evidence/artifacts/new-wsl-local-models-20261002/part-a-receipt.json" + "path": "evidence/receipts/claude-foundation-finalization-20260921.json" }, { - "id": "nextjs-1638-qualification-20261001", + "id": "adaptive-paper-practice-20260921", "kind": "native_cli_e2e", "component_ids": [ - "nextjs" + "nautilus-trader", + "alpaca-py", + "claude-code", + "codex" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-10-01, the application-delivery recipe was qualified at Next.js 16.3.8 (tag v16.3.8, commit b0fad0d45eb4c4430fda5eeeb442e8a5af08a5f6, released 2026-09-30T16:13:46Z), whose release notes list seven security advisories, the most severe GHSA-cjq9-62q9-8jv4 (high: server-side request forgery in Image Optimization). The two-file patch (package.json and pnpm-lock.yaml, sha256 570ac44d237b6641a5087fe57b079aaf61dcb781b6496a721b0224dd17ea60d0) changes next, @next/env and the eight @next/swc-* lock entries, every other lock entry byte-identical. With Node v24.21.0 and pnpm 12.4.2 the frozen install, the peer check, the typecheck and the production build each exited 0 (recorded at 16:07:49Z), after a first frozen install at 12:13Z exited 1 with ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION for the ten packages published on 2026-09-30; no exclusion or policy change was made.", + "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", "limitations": [ - "Bounded recipe checks only: make verify with its PostgreSQL, API and browser stages was not run, so the 2026-09-20 receipts still qualify 16.3.5, not 16.3.6 or 16.3.8.", - "The pnpm store, node_modules and build cache were warm from the earlier attempt; no cold-store install is claimed.", - "This recipe's exposure to the seven advisories was not established; the move removes the vulnerable versions from its lock.", - "Labels 15 to 17 are the version prints of Node and pnpm and a git diff check; they are metadata, not acceptance.", - "No new-host install ran: that is unit U10 on the new distribution. Provider usage of the builder is unknown." + "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", + "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", + "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", + "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." ], - "path": "evidence/receipts/nextjs-1638-qualification-20261001.json" + "path": "evidence/receipts/adaptive-paper-practice-20260921.json" }, { - "id": "notification-types-20260929", + "id": "broad-universe-research-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "alpaca-py", + "duckdb", + "claude-code", + "codex" + ], + "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", + "limitations": [ + "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", + "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", + "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", + "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", + "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." + ], + "path": "evidence/receipts/broad-universe-research-20260921.json" + }, + { + "id": "ultracode-token-routing-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code", + "codex" + ], + "claim": "Claude Code 2.1.278 native Workflow stages re-routed to lean project agents cut the provider-returned first-request prompt from 42,396 tokens (default child) to 12,164 (named MCP grants behind ToolSearch) and 8,048 (source-scout) on one identical task; eight native review runs, two readiness audits, a builder run and probes plus one Codex cross-family review are retained as sanitized usage receipts; Haiku was not routed after an Opus-verified 9/14 versus 14/14 extraction trial; workflowSizeGuideline moved from small to unrestricted with a task sizing rule.", + "limitations": [ + "First-prompt figures come from one tiny task on one host and model; they bound a fixed spawn cost, not a savings rate.", + "The Haiku judgment rests on one packet and one Opus verifier.", + "The strict accepted envelope status was never returned in the deploying project; the commit gate was fix-and-commit after each review's findings were resolved.", + "Local suites are stubbed or synthetic; provider figures reach the receipts only as sanitized child-usage.mjs output, with raw transcripts outside Git.", + "Codex thread and turn identifiers were redacted from the cross-review record." + ], + "path": "evidence/receipts/ultracode-token-routing-20260921.json" + }, + { + "id": "portable-claude-native-qualification-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code", + "codex", + "prometheus" + ], + "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", + "limitations": [ + "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", + "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", + "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", + "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", + "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." + ], + "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" + }, + { + "id": "sota-convergence-20260922", + "kind": "historical_inventory", + "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "apple-container", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codebase-memory-mcp", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "fastapi", + "gitleaks", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "llama-cpp", + "loki", + "markitdown", + "mcp-inspector", + "mcporter", + "nextjs", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "playwright-cli", + "playwright-test", + "poppler", + "postgresql", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "react", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shanraisshan/claude-code-best-practice", + "shellcheck", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" + ], + "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", + "limitations": [ + "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", + "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", + "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", + "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." + ], + "path": "evidence/receipts/sota-convergence-20260922.json" + }, + { + "id": "claude-repository-evidence-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "alpaca-py", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "duckdb", + "edgartools", + "gitleaks", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "lean", + "loki", + "markitdown", + "mcp-inspector", + "mcporter", + "nautilus-trader", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "pandas", + "playwright-cli", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shellcheck", + "skfolio", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" + ], + "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", + "limitations": [ + "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", + "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", + "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", + "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", + "Superseded observations, including the author's own probe and invocation errors, remain recorded." + ], + "path": "evidence/receipts/claude-repository-evidence-20260921.json" + }, + { + "id": "github-automation-newpc-20260922", "kind": "native_cli_e2e", "component_ids": [ + "codex", "claude-code" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", + "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", "limitations": [ - "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", - "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", - "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", - "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", - "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", - "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", - "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", - "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", - "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", + "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", + "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", + "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", + "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", + "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." + ], + "path": "evidence/receipts/github-automation-newpc-20260922.json" + }, + { + "id": "exchange-calendars-native-check-20260922", + "kind": "native_cli_e2e", + "component_ids": [ + "exchange-calendars" + ], + "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", + "limitations": [ + "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", + "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", + "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", + "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", + "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." + ], + "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" + }, + { + "id": "adoption-macos-hosted-smoke-20260922", + "kind": "native_cli_e2e", + "component_ids": [ + "codex", + "claude-code", + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" + ], + "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", + "limitations": [ + "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", + "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", + "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", + "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", + "socraticode is the profile's documented unpinned skip and was not installed." + ], + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" + }, + { + "id": "catalog-freshness-20260923", + "kind": "upstream_provenance", + "component_ids": [ + "claude-code", + "codex", + "llama-cpp", + "mcp-inspector", + "openresearch", + "skfolio" + ], + "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", + "limitations": [ + "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", + "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", + "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", + "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." + ], + "path": "evidence/receipts/catalog-freshness-20260923.json" + }, + { + "id": "adoption-macos-hosted-smoke-20260923", + "kind": "native_cli_e2e", + "component_ids": [ + "codex", + "claude-code", + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" + ], + "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", + "limitations": [ + "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", + "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", + "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", + "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." ], - "path": "evidence/receipts/notification-types-20260929.json" + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" }, { - "id": "ns2604-e2e-20261004", - "kind": "native_model_e2e", + "id": "wsl-retrieval-20260920", + "kind": "historical_inventory", "component_ids": [ - "claude-code", - "codex", - "omniroute" + "ast-grep", + "qmd" ], - "claim": "The historical 2026-10-04 foundation E2E covered 15 units and 80 slots through native executor observations, independent model review and 22 adjudications. Final labels are READY 18, PARTIAL 31, FAIL 2, BY_DESIGN 12 and INTERIM 17, with zero unjudged slots. Readiness is (18 + 12) / 80 = 37.5%, rounded half up to 38%; all 22 executor/reviewer disagreements were adjudicated, with 14 keeping the reviewer's status and 8 taking the executor's. This publication independently checks and sanitizes the retained status chains; it does not repeat host or provider execution. The adjudication prompt as run, claude-opus-5-5 at max effort with evidence-reviewer run records and timestamps, and the separate 33-slot fix list are retained.", + "claim": "Incomplete historical WSL fixture reference: selected receipts report 22 source checks/six commands and 70 QMD lexical checks/17 commands. Offline byte and result consistency can be checked, but missing command argv/cwd, unrecovered raw logs and unsupported historical QMD installation prevent native E2E or adoption acceptance.", "limitations": [ - "Host state is as of 2026-10-04 19:10\u201320:10Z only; later adjudication and source merge timestamp 2026-10-04T20:26:16Z do not extend that observation window. Publication and repair perform artifact inspection and structural checks in the owned sandbox; they do not repeat native host probes.", - "Fixes are pending. The 33 PARTIAL/FAIL slots after adjudication are not accepted as ready: 25 repository-plan and 8 host fixes (evidence/artifacts/ns2604-e2e-20261004/fixes.json). Four INTERIM token slots (context-supply, command-output, output-compression, code-index) are held for PR #684, which has not merged. The two open token slots have separate fixes: ccusage (FAIL, plan) and statusline (PARTIAL, host).", - "This is not an upstream benchmark. Native executor observations, independent model judgments and adjudication are separate from upstream tests, structural checks, independent host replication and measured quality or token improvement.", - "The 17 INTERIM slots are held by design. They remain in the denominator and contribute zero to the readiness numerator; the 12 BY_DESIGN slots are intentional dispositions rather than proof that their tools executed.", - "Adjudication: claude-opus-5-5 at effort max (evidence-reviewer), prompt template as run in evidence/artifacts/ns2604-e2e-20261004/adjudication-prompt.md. Run wf_8bf450a9-d1e (17 agents) started 2026-10-04T20:06:45Z and completed 2026-10-04T20:20:30Z; run wf_cdbf70a0-02c (5 agents) started 2026-10-04T20:08:29Z and completed 2026-10-04T20:19:31Z.", - "Historical source command excerpts and raw conversations remain private. Public reasons are bounded to 60 words, fixes preserve the merge's 900-character bound before sanitization, and citations are limited to four per slot. Hashes establish byte identity, not success or adequacy of every native acceptance claim.", - "Reviewer records report the requested gateway model cx/gpt-6.1-sol-max and max effort; no resolved backend model identity is inferred. Independent model review is review of retained evidence, not independent execution on the host.", - "The coordinator registers all eight published files in manifests/evidence.json in the PR's final registry-only commit, and full repository validation passes at that head. Per-file scans and local receipt tests are structural evidence only." + "Historical reference only; not live verification, native E2E acceptance or adoption evidence. No new host/native/client acceptance follows from these artifacts.", + "Historical command facts omit argv and cwd. Exact raw-log locations are unavailable; no invocation was reconstructed or represented as observed.", + "The unchanged historical install receipt records npm --ignore-scripts --omit=optional. Future installation must use the current supported recipe with NODE_LLAMA_CPP_SKIP_DOWNLOAD=true and required dependency scripts enabled.", + "Both executed runner versions and the initial URI-checker failure are retained byte-for-byte. The future runner adds command provenance capture without changing past evidence.", + "Receipt-reported 22/70 checks and 6/17 commands describe selected local/synthetic fixtures. Five failed-attempt commands remain separate; no upstream-suite, semantic RAG, production, client or service acceptance.", + "Source currency remains September 20; offline completion and review do not refresh releases or native execution. Whole-task provider usage is unknown and no savings claim is made." ], - "path": "evidence/receipts/ns2604-e2e-20261004.json" + "path": "evidence/receipts/wsl-retrieval-20260920.json" }, { - "id": "omniroute-3851-npm-qualification-20260930", - "kind": "compatibility_attempt", + "id": "gitleaks-macos-memory-bound-20260924", + "kind": "native_cli_e2e", "component_ids": [ - "omniroute" + "gitleaks" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", + "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", "limitations": [ - "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", - "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", - "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", - "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", - "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", - "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", - "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", - "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", - "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." + "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", + "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", + "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", + "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", + "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", + "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", + "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." ], - "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" + "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" }, { - "id": "omniroute-claude-callsite-20260930", - "kind": "native_model_e2e", + "id": "env-freshness-wsl-ubuntu-main-20260924", + "kind": "artifact_measurement", "component_ids": [ - "claude-code", - "codex", - "omniroute" + "nautilus-trader", + "alpaca-py", + "duckdb", + "pandas", + "edgartools", + "exchange-calendars", + "vllm" ], - "claim": "A native Claude Opus5.5/Max coordinator discovered and read the project dispatcher, invoked the official Sol-Max Codex SDK worker through native Bash, and the retained original shows one unchanged fixture test with exit0.", + "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", "limitations": [ - "One bounded read-only callsite and existing arithmetic oracle; no universal quality or SDK winner claim.", - "Coordinator tool scope was Bash/Read/Skill for this acceptance; other coordinator tools and optional MCP services are not qualified.", - "Native Claude and external Codex SDK usage remain separate scopes; parent list-price cost is not complete provider billing.", - "The separate Claude SDK Devin bridge remains failed/unqualified; this native Claude-account coordinator run does not promote it.", - "Provider backend identity, overall task usage, failed/interrupted calls, remote cancellation and token savings remain unverified." + "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", + "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", + "One host; each PC publishes its own report under the same schema.", + "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." ], - "path": "evidence/receipts/omniroute-claude-callsite-20260930.json" + "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" }, { - "id": "omniroute-runtime-enhancements-20260930", + "id": "vllm-030-switch-20260925", "kind": "native_model_e2e", "component_ids": [ - "codex", - "omniroute", - "context-mode", - "serena", - "dagu" + "vllm", + "socraticode" ], - "claim": "A scoped native Codex SDK Sol-Max worker completed skill use, selected Context Mode/Serena MCP calls, one Astra-Max native judge and an unchanged oracle through OmniRoute in a successful bounded Dagu graph.", + "claim": "vLLM 0.30.0 now serves the production Nemotron-3-Embed-1B-BF16 embeddings on the NativeStack WSL2 RTX 4090 host. Qualified first on an owned instance against production 0.25.0 (identical model files, flags and route), then switched by a systemd drop-in that changes only the binary path; the live service returned identical embeddings and identical top-10 code-index results after the switch.", "limitations": [ - "One unchanged arithmetic fixture and bounded integration; no universal highest-quality model, framework or SDK ranking.", - "169 enabled skills were visible through native discovery. This run read using-superpowers and exercised three selected MCP calls; it does not qualify every installed skill, tool, language server, plugin or hook.", - "Native hook support and live web search are configured, but their execution is unmeasured here. No scheduler, schedule, hook or global account configuration was installed by this kit.", - "Native parent and child cumulative usage are separate scopes. Cached input and reasoning are subsets; observer response counters corroborate the same usage and must not be added. Failed/interrupted and complete provider usage, billing and token savings remain unknown.", - "Each observed completed stream also has an unclassified flow_error record. Native results completed; transport is not described as error-free, and requested model/provider labels are not backend identity attestation.", - "The separate Claude SDK Devin bridge retains its failed/unqualified status. Earlier native Claude-to-SDK acceptance is a historical separate callsite, not a rerun against this source.", - "The follow-up native Claude cooperation session was stopped after no confirmed SendMessage/final packet; no peer approval or new owner-contact count is claimed.", - "The isolated kit is a scoped private worker configuration. Live owners retain shared worker policy, host-wide catalogs/defaults and dashboard checkpoint ownership." + "One host (NativeStack, RTX 4090, WSL2 Windows driver 616.64) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", + "Retrieval equality covers 8 gate texts and 5 live code-index queries (top-10), not an aggregate retrieval-quality benchmark.", + "0.30.0 relies on its pinned-memory fallback for WSL (PR #56908); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", + "The 0.25.0 prefix is kept for rollback; the base unit still names it and only the drop-in points at 0.30.0." ], - "path": "evidence/receipts/omniroute-runtime-enhancements-20260930.json" + "path": "evidence/receipts/vllm-030-switch-20260925.json" }, { - "id": "omniroute-runtime-workers-20260930", - "kind": "native_model_e2e", + "id": "rtk-050-qualification-20260925", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "omniroute" + "rtk" ], - "claim": "The retained official Codex SDK Sol-Max worker passed one upstream coding fixture, native resume and fresh recovery through the selected OmniRoute Responses lane. Interrupted usage and Claude bridge qualification remain unknown/failed.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", "limitations": [ - "One arithmetic fixture and lifecycle acceptance; no universal SDK or model quality ranking.", - "Actual provider trials invoked the SDK from root, rather than through a Claude coordinator. Native project dispatch skill is supplied and structurally checked; its coordinator invocation remains unmeasured.", - "Native Codex SDK remains the incumbent. The separate frozen three-arm SDK gate remains unresolved.", - "Native gateway requested/returned model labels are not backend attestation.", - "All 136 skills are available in the owned project, with two bodies exercised; full role coverage and optional service acceptance remain incomplete.", - "Native Codex repeated in-process fixtures emit stdout/stderr ResourceWarnings; standalone per-invocation child exit is qualified separately.", - "Complete provider usage, spending, remote cancellation and token savings remain unknown.", - "Public record is sanitized selected actual return fields and independent observations; original private returned artifacts remain outside the checkout." + "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", + "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", + "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", + "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", + "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", + "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", + "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." ], - "path": "evidence/receipts/omniroute-runtime-workers-20260930.json" + "path": "evidence/receipts/rtk-050-qualification-20260925.json" }, { - "id": "omniroute-sdk-worker-0160-20261003", - "kind": "native_model_e2e", + "id": "markitdown-018-qualification-20260925", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "omniroute", - "context-mode" + "markitdown" ], - "claim": "The SDK 0.160.0 B3 review candidate addresses all five PR #628 bot findings and passed twelve of twelve twenty-five-test native loopback fixture invocations, 26 local Claude SDK tests, six observer tests and final Ruff checks. Each reported bug has a retained failing-before-repair command and a passing counterpart. B2 metadata preflight and the earlier builder/coordinator live observations remain historical; no B3 live model task ran. Writing dispatch, live keyed-shell/search qualification and backend effort remain unobserved.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", "limitations": [ - "Authored loopback SSE fixtures, local Claude SDK tests and observer tests are integration/synthetic checks, not unchanged upstream suites or provider-model trials.", - "The pre-B2 builder live task returned the correct data while two native shell attempts failed in its enclosing Codex sandbox and a Context Mode call failed with Transport closed. A separate coordinator, outside a nested Codex sandbox, observed read-only shell success at that candidate. The repaired bytes have no new live-model run; error-free MCP transport and writing (workspace-write) dispatch remain unqualified at 0.160.0.", - "Plugin disabling is the selected native feature gate. Tests observe direct app-server PID termination and absence of clone directories; descendant cleanup and global non-loopback egress are not observed.", - "Metadata preflight submits no inference. No skill was installed in the new private home and no --require-skill was used; inherited/project catalog discovery does not qualify every skill or tool.", - "Requested model/Max effort and live catalog entry are observed; gateway-forwarded effort, backend model identity, complete provider usage, cost, remote cancellation and token savings remain unknown.", - "September 30 receipts and original observations remain historical. This refresh does not rerun the historical coding oracle, Claude callsite, Astra judge, Dagu graph or unchanged upstream SDK suite.", - "Exactly pinned private SDK preflight/PID attributes require review on every pin move. Stable Python SDK and experimental, unsupported-for-production app-server are separate support boundaries.", - "Expected ResourceWarning messages and argparse rejection output remain in private fixture logs. Long-lived SDK pools, alternative approval modes, alternate binary, credential-variable path, workspace-write live execution and scheduled Dagu acceptance remain unqualified.", - "Initial Ruff failure exits are retained from native task returns, but exact full output/timing was not saved. Repository validators prove declared consistency, not the truth of provider or historical claims.", - "Earlier checkout and alternate-index validation failures are retained as before-B2 attempts. The coordinator force-added the project skill to the real index; B2 acceptance uses that actual checkout index. Historical source archive acceptance does not replace current checkout acceptance.", - "If the cleanup bound expires during retained startup or close, cleanup_status is unresolved and the CLI exits nonzero. Continued deferred cleanup is observed only while the embedding event loop remains running; no post-bound standalone cleanup or remote termination guarantee is made.", - "B3 repairs have local regression/configuration acceptance only: no live model tasks, keyed gateway shell trial, standalone search endpoint trial or native Claude connect fault injection. The native SDK retains its own shielded cleanup/transport bounds; wrapper grace does not override them." + "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", + "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", + "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", + "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", + "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", + "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", + "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", + "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." ], - "path": "evidence/receipts/omniroute-sdk-worker-0160-20261003.json" + "path": "evidence/receipts/markitdown-018-qualification-20260925.json" }, { - "id": "openresearch-0215-qualification-20261003", + "id": "ai-memory-240-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "openresearch" + "ai-memory" ], - "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", "limitations": [ - "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", - "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", + "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", + "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", + "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", + "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", + "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", + "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." ], - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" }, { - "id": "otelcol-contrib-0162-qualification-20261003", + "id": "mcporter-0141-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "opentelemetry-collector-contrib" + "mcporter" ], - "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", "limitations": [ - "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", - "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", + "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", + "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", + "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", + "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", + "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." ], - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" }, { - "id": "playwright-cli-0122-qualification-20261003", + "id": "ai-memory-241-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "playwright-cli" + "ai-memory" ], - "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", "limitations": [ - "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", - "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", - "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", + "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", + "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", + "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", + "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", + "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", + "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." ], - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" }, { - "id": "portable-claude-native-qualification-20260921", + "id": "headroom-039-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "prometheus" + "headroom" ], - "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, headroom-ai 0.39.0 was qualified against the pinned 0.37.0 and not switched; production stays on 0.37.0. Tag v0.39.0 is 66f426171bab32692cf93d2b656a8e4be9004186 and contains d971f7c3 (#3748; compare behind_by 0). Its manylinux_2_28_x86_64 wheel (14,199,952 bytes, sha256 8c7594012ce0dcd28202af471fb1bd08c6f226c8e10fc6a682b3fb233e809a74) matched PyPI JSON, the PyPI simple API and the GitHub release asset, and was installed with uv into the new prefix tools/headroom-ai-0.39.0; 555 of 555 headroom/ RECORD digests match the verified wheel and `headroom --version` printed 'headroom, version 0.39.0'. The unchanged upstream test file tests/test_transforms/test_content_detector_timestamp_search.py (blob 23b66a27) passed 6 of 6 on 0.39.0 and 4 of 6 on 0.37.0. Through `headroom mcp serve --proxy-url http://127.0.0.1:1` over stdio, 0.39.0 listed headroom_compress, headroom_retrieve and headroom_stats; compressed the 600-line ISO-timestamped fixture A 16820 -> 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", "limitations": [ - "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", - "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", - "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", - "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", - "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." + "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", + "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", + "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", + "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", + "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", + "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", + "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", + "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." ], - "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" + "path": "evidence/receipts/headroom-039-qualification-20260925.json" }, { - "id": "portable-cli-artifacts", - "kind": "native_cli_e2e", + "id": "vllm-030-switch-laptop-20260926", + "kind": "native_model_e2e", "component_ids": [ - "shellcheck", - "difftastic", - "markitdown", - "ast-grep", - "toon", - "repomix" + "vllm", + "socraticode", + "ai-memory" ], - "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", + "claim": "vLLM 0.30.0 was qualified on this laptop (WSL2, RTX 5090 Laptop GPU 24GB) as a drop-in candidate for the production Nemotron-3-Embed-1B-BF16 embedder (vLLM 0.25.0), then switched into production by a systemd --user drop-in that changes only the ExecStart binary path and PATH. Of the six qualification gates: (a) gate-text cosine, (c) batch invariance and (e) ai-memory vector reconstruction passed their pass bars; (b) mini-corpus retrieval and (d) live-code-index retrieval met top-10 SET identity on every query and trial (b: 40/40, d: 20/20 query-trials) but failed their strict top-10 ORDER bar in 3 of 4 trials each; (f) latency is report-only, with no pass bar. A prod-vs-prod control run (candidate never started) shows the same order-swap behavior already exists in production alone: gate b had 6 of 50 mismatched query-trials for the candidate (including an earlier, superseded run) against 10 of 80 for production compared with itself; gate d had 3 of 20 against 4 of 40; production against itself even had a worse single trial (6 of 10 identical) than any candidate trial. Gate (c)'s batch-invariance minimum cosine (0.9999562552851937) was bit-for-bit identical between production alone and the candidate, on the same minimizing text. The production switch itself re-checked only 30 gate texts (cosine 0.9999999999999998 before vs after) and confirmed dependents (ai-memory's vector stream, SocratiCode search); it did not re-run a post-switch top-10 retrieval check.", "limitations": [ - "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", - "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." + "One host (laptop, RTX 5090 Laptop GPU 24GB, WSL2) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", + "Retrieval equality covers 30 gate texts (a), a 50-paragraph mini-corpus over 10 queries (b), and 5 live code-index queries (d), not an aggregate retrieval-quality benchmark. Gates b and d met top-10 content-SET identity on every query and trial (b: 40/40 query-trials across the 4 recorded trials, plus full set overlap on one earlier superseded run; d: 20/20 query-trials) but did not meet strict top-10 ORDER identity on every trial (that earlier superseded run's own order count was 9 of 10). Counting every recorded run: gate b had 6 of 50 candidate query-trials with an order mismatch against 10 of 80 for a prod-vs-prod control (candidate never started, run twice -- an earlier, superseded control and the current one -- both included since only the second run's own prod_score diagnostic sub-field needed a fix, not its order counts); gate d had 3 of 20 against 4 of 40. Production compared with itself had a worse single trial (6 of 10 identical, i.e. 4 mismatched) than any candidate trial (worst: 7 of 10 identical, 3 mismatched), so this order-swap behavior is pre-existing production batching noise, not attributable to the 0.30.0 upgrade. The swap-gap range is 3.5e-05 to 8.2e-04 across all 23 recorded swaps (candidate run and both control runs combined), far smaller than the ~0.02-0.05 gaps between other adjacent ranks in the same rankings.", + "The reference receipt's own qualification-time number for this style of check (mini_corpus_top10_overlap, '10/10 on each of 10 queries') is a content-SET overlap claim, not a strict-order claim; it does not report whether its own order matched on every query, so gate (b)'s order tracking here is additional detail, not a comparison against a reported order result. The reference receipt's one reported ORDER number (production_switch.code_queries_identical_top10_order, '5/5') comes from its own post-switch production check with 5 live code queries, a different procedure from this run's own gate (d) qualification check (5 queries against the live SocratiCode index, run before any switch); the two are not directly comparable, and this run made no post-switch top-10 check of its own (see production_switch below: only 30 gate texts and a cosine value were re-checked after the switch) -- unlike the reference, which also re-checked 5 code queries' top-10 order after its own switch (that same code_queries_identical_top10_order, '5/5').", + "0.30.0 relies on its pinned-memory fallback for WSL (vllm-project/vllm PR #56908, the same warning the reference receipt's owned instance logged); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", + "The 0.25.0 unit is kept for rollback; only a drop-in override (nemotron-embed-agent-lab.service.d, ExecStart and PATH only) points production at 0.30.0.", + "A diagnostic-only bug in this run's own gate (b) script (prod_scores_by_idx had score and index reversed) made the order_diff_detail[].prod_score sub-field in every candidate-vs-prod gate (b) file (gate_b_result.json and gate_b_trial{1,2,3}.json) and in the first, superseded prod-vs-prod control unreliable; it did not affect any cosine value, top-10 set, or pass/fail boolean -- only that one diagnostic sub-field -- and was fixed before the second, current prod-vs-prod control run. See raw/ERRATUM-gate_b-order_diff_detail-prod_score-bug.txt.", + "results.json's own generated prose has two internal inconsistencies against its own structured fields, corrected in this receipt from the underlying per-trial gate files (raw/gate_b_result.json, gate_b_trial{1,2,3}.json, gate_d_result.json, gate_d_trial{1,2,3}.json): its gate (b) finding text lists strict-order counts as '9, 7, 9 and 10' where the adjacent structured array and the per-file queries_with_identical_order fields agree on '10, 9, 7 and 9' (same four numbers, wrong order in the prose only); its gate (d) finding text says strict order held on '3, 5, 4 and 4' of 5 queries where the adjacent structured array and the per-file queries_identical_count fields agree on '4, 5, 4 and 4'.", + "The laptop's vllm-0.30.0 prefix pre-existed this run (never pip-installed into by this task, per its own instructions), so no direct_url.json or install log exists on this host to independently re-hash its wheel; the pin identity below is the value the workstation's own switch receipt recorded for the same pinned release, reused for cross-host comparison, not independently re-verified here. What IS independently verified on this host: both production (0.25.0) and the candidate (0.30.0) point at the identical, single model directory (same absolute path in both /v1/models responses), and this host's own sha256 of that directory's model.safetensors is recorded below.", + "independent_review: an independent reviewer subagent checked this receipt against the retained raw files (recomputed the reported counts, re-hashed the model file, compared production's before/after flags) and re-ran no gate; that review produced every correction listed above." ], - "path": "evidence/receipts/portable-cli-artifacts.json" + "path": "evidence/receipts/vllm-030-switch-laptop-20260926.json" }, { - "path": "adoption/receipt.json", - "id": "portable-sdk-adoption-20260919", + "id": "codex-01571-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "duckdb" + "codex" ], - "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", "limitations": [ - "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", - "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", - "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", - "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", - "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", - "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", - "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." - ] + "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", + "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", + "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", + "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", + "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", + "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", + "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", + "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", + "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", + "Linux x86_64 only, one host; nothing here is macOS evidence." + ], + "path": "evidence/receipts/codex-01571-qualification-20260926.json" }, { - "id": "portable-userspace-install-20260921", + "id": "mcp-inspector-280-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon", - "codex", - "claude-code" + "mcp-inspector" ], - "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", "limitations": [ - "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", - "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", - "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", - "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", - "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", - "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", - "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", - "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", - "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." + "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", + "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", + "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", + "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", + "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." ], - "path": "evidence/receipts/portable-userspace-install-20260921.json" + "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" }, { "id": "prometheus-3150-qualification-20260926", @@ -3453,174 +3297,127 @@ "path": "evidence/receipts/prometheus-3150-qualification-20260926.json" }, { - "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", - "id": "qdrant-native-state-recovery-20260919", + "id": "tavily-research-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "qdrant", - "restic" + "tavily-cli" ], - "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", "limitations": [ - "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", - "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", - "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", - "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", - "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." - ] - }, - { - "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", - "id": "qmd-bm25-retrieval-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "qmd" + "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", + "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", + "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", + "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", + "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", + "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", + "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", + "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." ], - "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", - "limitations": [ - "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", - "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", - "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", - "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", - "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", - "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", - "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", - "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", - "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", - "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", - "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." - ] + "path": "evidence/receipts/tavily-research-qualification-20260926.json" }, { - "id": "restic-local-public-reference-20260919", - "kind": "native_cli_e2e", + "id": "local-inference-c2-serving-switch-20260926", + "kind": "native_model_e2e", "component_ids": [ - "restic" + "llama-cpp" ], - "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", "limitations": [ - "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", - "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", - "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", - "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", - "Credential loss recovery requires separately approved secure key escrow." + "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", + "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", + "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", + "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", + "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", + "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", + "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." ], - "path": "blueprints/us-equities/hosting/backup/receipt.json" + "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" }, { - "id": "rtk-050-qualification-20260925", - "kind": "native_cli_e2e", + "id": "claude-advisor-usage-scan-20260928", + "kind": "artifact_measurement", "component_ids": [ - "rtk" + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", + "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", "limitations": [ - "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", - "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", - "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", - "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", - "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", - "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", - "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", + "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", + "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", + "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", + "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", + "Whether ccusage or ecosystem-token-report count these entries was not checked." ], - "path": "evidence/receipts/rtk-050-qualification-20260925.json" + "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" }, { - "id": "rtk-051-qualification-20261004", + "id": "claude-host-practice-readback-20260928", "kind": "native_cli_e2e", "component_ids": [ - "rtk" - ], - "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed rtk 0.51.0 from the checksummed Linux release archive and returned rtk 0.51.0 with exit 0. rtk verify returned 151/151 inline self-tests with exit 0; 24 hook payloads matched 0.50.0 output and exits (16 rewritten, 0 differing), and 26 permission-deny hook decisions matched with no auto-allows. Direct git/proxy calls succeeded and the existing tracking database was read and later updated. This receipt republishes bounded sanitized facts from the historical host records; it is not a new host or model run.", - "limitations": [ - "No macOS execution; the Darwin archive is artifact-checked only. No upstream cargo test suite was run in these records; rtk verify is the native inline self-test, and the 115-test parser run (14 skipped) is local integration.", - "rtk gain, session and cc-economics are tool self-reports, not provider counts, invoice data or causal savings. Cumulative snapshots are not added together.", - "No fresh live-client acceptance or rtk init re-run was recorded. The --shell compatibility review is source-based; the host hook comparison covered only its 24 payloads and 26 deny entries. Existing exact-output exceptions and dated replay gates remain scoped to their original evidence.", - "gh attestation verification returned HTTP 404 (exit 1); no signature verification or source rebuild was recorded. Later upstream fixes and issue #4404 are follow-ups, not included in this stable pin.", - "NativeStack runs AgentsView 0.44.0 ahead of the repository pin. The 2026-09-27 qualification hold stands: synthetic_ccusage_parity failed, fresh_four_native_lanes is blocked, and the v0.44.0 MCP reported zero Codex counters. The recorded recipe rewire and qualification must pass in a separate follow-up before a repository pin move.", - "RTK replay is unavailable at 0.51.0: vendored child-usage.mjs and the test_token_measurement.py/test_skill_usage.py replay gates require exactly rtk 0.50.0. Skipped replay tests are not coverage; the kernel and gates remain unchanged.", - "The repair-round placeholder guard probes allowed the --shell form rtk test --shell sh 'cat ~/.ssh/config' (exit 0), while rtk proxy cat ~/.ssh/config was blocked (exit 2). These strings were guard input only; no credential reader was executed. This finding belongs to PR #685; the guard is unchanged in this pin move.", - "2026-10-04 control correction after PR #693 CI run 37226622626: v0.51.0 intentionally folds grep file lists (feac25d), so the former byte-unchanged grep control is superseded by counted prefix-plus-tail reconstruction of the exact native path set, byte-identical proxy recovery and a CR-filename verbatim guard fixture (3223a80). The diff half is unchanged. The repaired native fixture passes nine checks over 11 cases / 33 arms; this is local integration of the installed Linux CLI, not new host or upstream Cargo-suite acceptance. Agent-facing expansion of folded paths is unmeasured; an E2E observation of a wrong expanded path leads to adding grep -l/-rl to hook exclusions. Sources and retained red-then-green observations: docs/decisions/2026-10-04-rtk-file-list-control.md.", - "2026-10-04 PR #698 follow-up from the pre-rebase review head 45a7218c0 (rebased onto 38ac9aca1; no branch keeps it): the grep inverse now preserves native engine order, and a CR-free explicit-operand t6c sibling proves that the same grep -l shape folds without the 3223a80 guard signal. Native distinctness and the CR-case LF record count have isolating rejection controls with separate predicate-deletion red runs and restored green runs. The installed Linux CLI passes ten checks across 12 cases / 36 arms / 76 fixture commands plus one version command. Historical shell_sites line 1477 is retained; a dated appended entry corrects the direct-argv locator. Minimal sanitized original red/green outputs from job 035 and new job 042 outputs are retained under evidence/artifacts/rtk-051-file-list-control-20261004/ (README.md and native-controls.json), with the dated decision at docs/decisions/2026-10-04-rtk-file-list-control.md. This is local integration, not a WSL rerun, upstream Cargo-suite, new-host or native-model acceptance; model interpretation remains unmeasured." - ], - "path": "evidence/receipts/rtk-051-qualification-20261004.json" - }, - { - "id": "runtime-sdk-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "codex" + "claude-code", + "claude-hud", + "headroom", + "mcporter", + "jcodemunch-mcp", + "agent-browser", + "qmd" ], - "claim": "Retained coordinator results for the same-host Codex SDK/CLI 0.160.0 pair report strict-hash installation, matching bundled/npm-platform binaries and completed native-account SDK, gateway SDK and gateway CLI marker canaries. Sanitized outputs, native CLI usage, scripts, hashes, mtimes and discriminating replay controls are now retained; missing original SDK invocation/source and process start/end evidence limit this to a compatibility attempt. The separate A4 record adds fail-closed Linux package-resolution/executable-tree repairs, offline integration controls and a fresh isolated bootstrap of the shipped Codex pin; it does not upgrade the SDK/gateway canary evidence class.", + "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", "limitations": [ - "Existing-host compatibility observations and completed marker canaries only; incomplete original command/timing provenance prevents native_cli_e2e acceptance. Not new-host or model-quality acceptance.", - "Gateway backend model and effort were not read from the call log; configured/requested routes and efforts do not prove backend selection.", - "The shared host launcher, daemon and production prefix still run 0.159.3 until a separate coordinated switch.", - "The 0.159.3 queue, Hindsight and October 1 SDK receipts retain their original scope; they do not qualify 0.160.0.", - "Sanitized native canary stdout/stderr, CLI events/last message and their hashes are retained. SDK caller exit codes 0 are coordinator-verified, not fields in the supplied facts. Gateway backend billed usage and monetary cost remain unrecorded.", - "Original process start/end times and SDK outer executable/cwd are unrecorded. Source mtimes are filesystem observations only. The native heredoc is reconstructed from facts and the retained gateway example, not attested as the original source.", - "SDK last and total usage snapshots match for each canary and must be counted once; cached input and reasoning output are subsets, not additional tokens.", - "No unchanged upstream test suite, shared daemon restart, whole-system cleanup/recovery acceptance, package signature or provenance attestation verification is recorded here. The separate A4 bootstrap record retains local migration/publication fault injection and an isolated native installation.", - "The move is inside the seven-day cooldown recorded in docs/decisions/2026-09-25-workstation-sota-refresh.md, as the prior 0.159.2 and 0.159.3 moves were (docs/decisions/2026-09-27-model-currency.md).", - "This repository change records existing coordinator qualification; it performs no new model run or shared-host switch.", - "The CLI script prints the inner Codex exit but does not propagate it as its own final shell exit; the recorded inner exit 0 is supported by the coordinator facts and completed native events." - ], - "path": "evidence/receipts/runtime-sdk-20261003.json" - }, - { - "id": "runtime-tools", - "path": "evidence/receipts/runtime-tools.json", - "kind": "native_cli_e2e", - "component_ids": [ - "gitleaks", - "sandbox-runtime" + "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", + "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", + "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", + "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", + "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", + "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", + "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." ], - "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", - "limitations": [ - "No claim of full security certification.", - "Sandbox network denial configured but not separately exercised." - ] + "path": "evidence/receipts/claude-host-practice-readback-20260928.json" }, { - "id": "sec-catalyst-dataset-native-20260920", + "id": "socraticode-1150-qualification-20260927", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "socraticode" ], - "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", "limitations": [ - "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", - "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", - "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", - "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", - "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", - "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", - "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", - "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", - "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." + "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", + "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", + "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", + "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", + "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", + "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", + "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", + "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", + "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", + "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", + "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." ], - "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" + "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" }, { - "id": "sec-financial-data-20260919", - "kind": "compatibility_attempt", + "id": "ccusage-20026-qualification-20260927", + "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "ccusage" ], - "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", "limitations": [ - "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", - "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", - "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", - "Current API snapshots do not reconstruct historical point-in-time knowledge.", - "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", - "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." + "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", + "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", + "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", + "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", + "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", + "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", + "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", + "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", + "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", + "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", + "New hosts receive this pin only after the next release tag." ], - "path": "blueprints/us-equities/financial-data/receipt.json" + "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" }, { "id": "skills-listing-restore-20260928", @@ -3666,27 +3463,104 @@ "path": "evidence/receipts/skills-m4-host-removal-20260928.json" }, { - "id": "socraticode-1150-qualification-20260927", + "id": "claude-model-effort-probes-20260929", "kind": "native_cli_e2e", "component_ids": [ - "socraticode" + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", + "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", "limitations": [ - "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", - "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", - "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", - "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", - "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", - "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", - "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", - "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", - "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", - "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", - "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", + "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", + "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", + "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", + "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." ], - "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" + "path": "evidence/receipts/claude-model-effort-probes-20260929.json" + }, + { + "id": "claude-max-default-effort-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", + "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", + "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", + "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", + "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", + "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", + "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", + "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." + ], + "path": "evidence/receipts/claude-max-default-effort-20260929.json" + }, + { + "id": "claude-project-effort-flag-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", + "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", + "The Ultracode reminder is an indicator, not proof of workflow orchestration.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." + ], + "path": "evidence/receipts/claude-project-effort-flag-20260929.json" + }, + { + "id": "claude-spend-attribution-20260929", + "kind": "artifact_measurement", + "component_ids": [ + "claude-code", + "ccusage" + ], + "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", + "limitations": [ + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", + "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", + "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", + "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", + "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", + "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", + "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", + "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", + "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", + "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." + ], + "path": "evidence/receipts/claude-spend-attribution-20260929.json" + }, + { + "id": "wsl-terminal-defaults-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code", + "codex" + ], + "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, and 2.1.283 in a second distro; Codex 0.157.1; bash 5.2.21; Windows Terminal 1.24.11911.0) the repository now carries the terminal defaults that had been set by hand on the host. Merging the linux-wsl2 Claude Code overlay into the live settings with the repository's merge tool changed nothing (the merge equalled the live file), exactly one Notification group holds the bell command, and its matcher equals the overlay's (the acceptance script checks the matcher because the merge alone cannot see it). The rendered Codex template loads under `codex --strict-config` (the run stops at authentication, never at configuration); a wrong type for `[tui] notifications` and an unknown top-level key are refused, and an unknown key inside `[tui]` is not. The static `adoption_status.py --login-shell` model agreed with the real bash login search in all 512 combinations of three startup files over eight states, a FIFO made bash block (the model calls it unusable and unread), and a control that takes an empty file as absent disagreed in 26. In the second distro, the two per-project Claude profiles of the Windows Terminal settings dropped `suppressApplicationTitle` and gained the quiet bell, the audible-and-taskbar bell style and `COLORTERM` through the profile environment key, with every other profile and setting unchanged; the overlay merged into that distro's Claude settings changed only `$schema`, `hooks` and `preferredNotifChannel`, and its installed hook command printed exactly one BEL. The host practice repository's terminal-profile check now scans the live settings file and passed with 0 findings (the pre-change settings file fails it with 8 findings on the two per-project profiles), and its 22 single-defect controls each failed for exactly their rule.", + "limitations": [ + "One workstation and one Ubuntu 24.04 distro plus one second distro (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own evidence, and none of the new files is in the pinned release: a new host gets them only after a release carries them and the manifest is re-pinned.", + "No Windows Terminal tab was opened or measured after the second distro's profile change, and no session of that distro was started or observed after its overlay. Claude Code applies edits to `hooks` to a running session without a restart (settings reference, \"When edits take effect\"), so open sessions there should pick the overlay up; that was not observed, and an audible or taskbar bell for the alert path was not observed by the user in this work.", + "The profile example was checked as JSON against the policy. It declares no `guid`, so Windows Terminal derives a stable one from the folder and profile names (read in its source at the installed tag); it was not loaded into Windows Terminal or installed on any host. The host's deployed fragment is the practice repository's own file.", + "The `--login-shell` check reads file metadata only and models bash's login search from the source of bash 5.3 (shell.c execute_profile_file, builtins/evalfile.c) and the installed 5.2.21 on Linux; it does not run a login shell, read a startup file (so a non-empty file's hand-off is unknown, reported as null), or cover /etc/profile, ~/.bashrc, another shell, --noprofile, POSIX mode, an sh-mode login or macOS's bash 3.2. A special file is reported unusable: bash reads a device as empty and blocks on a FIFO, and both end the search; an unusable ~/.profile is reached but not read, so profile_read is false; HOME is the environment's, else the passwd entry's, else \"/\", the way bash falls back.", + "The Codex acceptance is a configuration load: no Codex notification was produced in this work, `async-question` does not exist at the macOS pin's tag (inert there) and Codex 0.155.1 was not run. Codex does not validate keys inside `[tui]`, so the repository's test pins that table's setting names. A `request_user_input` question notifies as `plan-mode-prompt` at both tags (tool_requests.rs L449-458), so `async-question` adds only the asynchronous questions 0.155.1 lacks.", + "The second distro's `tui` is `fullscreen` by its own setting; `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` was not set, as the upstream documentation makes it a reactive fix and no stale rendering was observed or measured.", + "The host practice repository has no remote (commits fcd291f, 396d1c1, 9500656, c14e8c3, 9f615ad and d0c7d9c); its check and controls are recorded here as results only. The Windows Terminal settings patch and the second distro's merge were host operations on private files, recorded as values.", + "The second distro's Claude Code is 2.1.283, one release before this host's. A scan of the installed binaries (this host's 2.1.282, 2.1.283 and 2.1.284, and that distro's 2.1.283) found the `notifications_disabled` and `terminalSequence` literals and `worker_permission_prompt` emitted from the same two team-inbox call sites in each (the second distro's binary is byte-identical to this host's 2.1.283 by SHA-256 prefix, and its occurrence counts by `grep -a -o` equal this host's scan), so the whole matcher is live there. The changelog dates `terminalSequence` to 2.1.141 and has no entry for `notifications_disabled`, which the settings reference documents. The hook was run in that distro.", + "The merge de-duplicates hooks by command anywhere in the event, so it never changes the matcher of a Notification hook that already runs the bell command: after a later matcher change the old group must be edited or removed first. The acceptance script checks the group count and the matcher for that reason, and a unit test proves it refuses a catch-all group and an older matcher.", + "The Codex `[tui] notifications` list is in the template that a macOS host also renders. Codex keeps its own per-terminal channel there, so needed kinds still notify natively and the turn-complete one stops; at the macOS pin `async-question` does not exist and is inert. This was decided and documented, and not observed on a Mac.", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): codex_tui_strict_check.py counts a run as loaded only with Codex's session banner and exits 1 unless the template loaded and both configuration controls were refused; overlay_noop_check.py also requires disableAllHooks not to be true and labels its verdict as a check of the user settings file only; login_shell_bash_truth.py and the 512-combination test now also compare first_read; the platform page's advice about profiles.defaults was corrected (Windows Terminal ranks a profile's own value, then profiles.defaults, then a fragment's profile). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + ], + "path": "evidence/receipts/wsl-terminal-defaults-20260929.json" }, { "id": "socraticode-1160-qualification-20260929", @@ -3710,152 +3584,112 @@ "path": "evidence/receipts/socraticode-1160-qualification-20260929.json" }, { - "id": "sota-convergence-20260922", - "kind": "historical_inventory", + "id": "omniroute-3851-npm-qualification-20260930", + "kind": "compatibility_attempt", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "apple-container", - "ast-grep", - "beads", - "ccusage", - "claude-code", - "claude-hud", - "codebase-memory-mcp", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "fastapi", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "llama-cpp", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nextjs", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "playwright-cli", - "playwright-test", - "poppler", - "postgresql", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "react", - "repomix", - "restic", - "rtk", - "sandbox-runtime", - "serena", - "shanraisshan/claude-code-best-practice", - "shellcheck", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "omniroute" ], - "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", "limitations": [ - "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", - "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", - "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", - "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." + "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", + "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", + "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", + "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", + "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", + "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", + "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", + "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", + "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." ], - "path": "evidence/receipts/sota-convergence-20260922.json" + "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" }, { - "id": "syft-1540-qualification-20261003", + "id": "codex-01592-qualification-20260930", "kind": "native_cli_e2e", "component_ids": [ - "syft" + "codex" ], - "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", "limitations": [ - "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", - "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", - "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", + "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", + "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", + "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", + "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", + "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", + "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", + "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", + "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", + "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", + "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", + "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", + "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", + "Linux x86_64 only, one host; nothing here is macOS evidence." ], - "path": "evidence/receipts/syft-1540-qualification-20261003.json" + "path": "evidence/receipts/codex-01592-qualification-20260930.json" }, { - "path": "blueprints/us-equities/supply-chain/receipt.json", - "id": "syft-sdk-inventory-20260919", + "id": "notification-types-20260929", "kind": "native_cli_e2e", "component_ids": [ - "syft" + "claude-code" ], - "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", "limitations": [ - "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", - "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", - "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", - "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", - "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", - "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", - "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", - "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", - "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", - "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." - ] + "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", + "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", + "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", + "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", + "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", + "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", + "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", + "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", + "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + ], + "path": "evidence/receipts/notification-types-20260929.json" }, { - "id": "synthetic-catalyst-contract-20260920", + "id": "login-shell-contract-20260929", "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "claude-code", + "codex" ], - "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", "limitations": [ - "Protocol thresholds are exploratory choices, not fitted or proven optimal.", - "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", - "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", - "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", - "No provider calls, broker orders, new model turn or net token-savings measurement." + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", + "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", + "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", + "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", + "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", + "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", + "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", + "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", + "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." ], - "path": "blueprints/us-equities/catalyst-experiment/receipt.json" + "path": "evidence/receipts/login-shell-contract-20260929.json" }, { - "id": "tavily-research-qualification-20260926", - "kind": "native_cli_e2e", + "id": "cross-family-review-terminal-lane-20260930", + "kind": "native_model_e2e", "component_ids": [ - "tavily-cli" + "codex", + "omniroute", + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", + "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", "limitations": [ - "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", - "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", - "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", - "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", - "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", - "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", - "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", - "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", + "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", + "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", + "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", + "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", + "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", + "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." ], - "path": "evidence/receipts/tavily-research-qualification-20260926.json" + "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" }, { "id": "terminal-experience-20260928", @@ -3882,480 +3716,497 @@ "path": "evidence/receipts/terminal-experience-20260928.json" }, { - "id": "token-native-retained-functional-20260920", - "path": "evidence/receipts/token-native-retained-functional-20260920.json", - "kind": "native_cli_e2e", + "id": "codex-shell-snapshot-cleanup-20260930", + "kind": "artifact_measurement", "component_ids": [ - "context-hub", - "headroom", - "mcp-inspector", - "promptfoo", - "worktrunk" + "codex" ], - "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", + "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", "limitations": [ - "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", - "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", - "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", - "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", - "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", - "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." - ] + "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", + "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", + "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", + "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." + ], + "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" }, { - "id": "token-practice-artifacts-20260920", + "id": "agent-browser-lna-20260930", "kind": "artifact_measurement", "component_ids": [ "agent-browser", - "ast-grep", - "edgartools", - "markitdown", - "qmd", - "repomix", - "rtk", - "socraticode", - "syft", - "toon" + "playwright-test" ], - "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", + "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", "limitations": [ - "Counts describe retained original host artifacts. This public aggregate omits the private originals; CI validates aggregate integrity, not an independent recount of those private bytes.", - "Most pairs select or transform information lossily. Shorter output does not establish equivalent answer quality or lower complete task usage.", - "Pairs overlap, including shared HTML sources and retrieval services. Do not sum them or attribute the same difference independently to dependencies.", - "Exact provider savings remain null. Tokenizer counts are not provider billing, subscription savings or causal per-repository effects.", - "The Syft table preserves checked package name/version/type columns while omitting other SBOM metadata; this is a view selection, not equivalent full SBOM content." + "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", + "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", + "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", + "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." ], - "path": "evidence/receipts/token-practice-artifacts-20260920.json" + "path": "evidence/receipts/agent-browser-lna-20260930.json" }, { - "id": "token-practice-catalog-toon-20260920", + "id": "guard-k3-verification-20260930", "kind": "artifact_measurement", "component_ids": [ - "toon" + "claude-code" ], - "claim": "A reversible full-catalog TOON conversion had a smaller native heuristic estimate but a larger exact token count than compact JSON; the guard retained compact JSON.", + "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", "limitations": [ - "This is one later artifact comparison, separate from the ten original token-practice pairs. Do not sum it with cumulative native counters or provider usage.", - "Native tokenx estimates and exact o200k_base counts use different estimators and JSON representations; they are not interchangeable savings metrics.", - "The public aggregate omits the private captured output files. Published hashes establish identity, not independent CI recount of the private bytes.", - "Exact provider savings remain unknown. The successful strict round trip establishes data equivalence for this conversion only.", - "Command templates replace host-specific source and output locations with portable placeholders." + "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", + "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", + "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", + "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", + "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1068,7 +1064,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.80.0", + "version": "0.79.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1083,21 +1079,20 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "worktrunk-0800-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" ], - "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", + "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.162.0", + "version": "0.161.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1117,15 +1112,13 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "otelcol-contrib-0162-qualification-20261003" + "claude-repository-evidence-20260921" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" + "https://github.com/open-telemetry/opentelemetry-collector-contrib" ], - "freshness": "Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The recorded scratch version and validate commands exited 0; no host service was switched. Prior 0.161.0 receipts retain their original scope. The dated upstream metadata is in catalogs/landscape/upstream-snapshot.json." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "prometheus", @@ -1233,7 +1226,7 @@ "upstream_sources": [ "https://github.com/grafana/grafana" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "alertmanager", @@ -1408,10 +1401,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.54.0", + "version": "1.52.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", + "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1420,14 +1413,13 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921", - "syft-1540-qualification-20261003" + "claude-repository-evidence-20260921" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.54.0" + "https://github.com/anchore/syft/releases/tag/v1.52.0" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." + "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." }, { "id": "alpaca-py", @@ -1690,7 +1682,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.327", + "version": "1.108.319", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1703,7 +1695,7 @@ } } ], - "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1716,14 +1708,13 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "jcodemunch-1108327-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", - "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", + "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", + "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 9bcbc77f59edd80424e3fc5fbc5c3e206d664d65 Mon Sep 17 00:00:00 2001 From: Scout Date: Mon, 5 Oct 2026 04:06:10 -0400 Subject: [PATCH 37/50] Reapply this branch's manifests/evidence.json manifests/stack.json edits on the merge base (hot-file protocol: every hot-file edit in the last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 5916 ++++++++++++++++++++------------------- manifests/stack.json | 81 +- 2 files changed, 3125 insertions(+), 2872 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 3952640a2..0b6581fed 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -2,518 +2,791 @@ "schema_version": 1, "receipts": [ { - "id": "memory-lifecycle-probe-20260921", + "id": "adaptive-paper-practice-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "nautilus-trader", + "alpaca-py", + "claude-code", + "codex" ], - "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", + "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", "limitations": [ - "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", - "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", - "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", - "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", - "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", - "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." + "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", + "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", + "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", + "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." ], - "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" + "path": "evidence/receipts/adaptive-paper-practice-20260921.json" }, { - "id": "catalog-runtime-review-20260921", - "kind": "native_model_e2e", + "id": "adoption-macos-hosted-smoke-20260922", + "kind": "native_cli_e2e", "component_ids": [ "codex", "claude-code", - "dagu" + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" ], - "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", + "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", "limitations": [ - "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", - "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", - "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." + "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", + "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", + "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", + "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", + "socraticode is the profile's documented unpinned skip and was not installed." ], - "path": "evidence/receipts/catalog-runtime-review-20260921.json" + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" }, { - "id": "catalog-clean-install-20260921", + "id": "adoption-macos-hosted-smoke-20260923", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "codex", + "claude-code", + "context-mode", + "ai-memory", + "mcporter", + "llama-cpp", + "qdrant" ], - "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", + "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", "limitations": [ - "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", - "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", - "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." + "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", + "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", + "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", + "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." ], - "path": "evidence/receipts/catalog-clean-install-20260921.json" + "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" }, { - "id": "dashboard-gap-resolution-20260921", - "kind": "native_cli_e2e", + "id": "agent-browser-lna-20260930", + "kind": "artifact_measurement", "component_ids": [ - "ai-memory", - "codex", - "claude-code", - "agentsview", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo", - "vllm" + "agent-browser", + "playwright-test" ], - "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", + "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", "limitations": [ - "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", - "Fresh PreCompact event and active Desktop session end remain unforced.", - "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", - "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", - "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", - "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." + "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", + "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", + "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", + "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." ], - "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" + "path": "evidence/receipts/agent-browser-lna-20260930.json" }, { - "id": "dashboard-render-e2e-20260921", + "id": "ai-memory-240-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qdrant", - "socraticode", - "serena", - "agentsview", - "dagu", - "omniroute", - "agent-browser", - "grafana", - "prometheus", - "alertmanager", - "ntfy", - "promptfoo" + "ai-memory" ], - "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", "limitations": [ - "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", - "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", - "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", - "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", - "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", - "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", - "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", + "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", + "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", + "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", + "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", + "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", + "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." ], - "path": "evidence/receipts/dashboard-render-e2e-20260921.json" + "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" }, { - "id": "hf-memory-models-20260921", + "id": "ai-memory-241-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "vllm", - "grafana" + "ai-memory" ], - "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", + "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", "limitations": [ - "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", - "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", - "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", - "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", - "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", - "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." + "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", + "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", + "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", + "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", + "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", + "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", + "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", + "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." ], - "path": "evidence/receipts/hf-memory-models-20260921.json" + "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" }, { - "id": "native-memory-rag-alignment-20260921", + "path": "blueprints/us-equities/state-recovery/memory/receipt.json", + "id": "ai-memory-native-state-recovery-20260919", "kind": "native_cli_e2e", "component_ids": [ "ai-memory", - "socraticode", - "qdrant", - "qmd", - "vllm", - "grafana", - "loki" + "restic" ], - "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", + "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", "limitations": [ - "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", - "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", - "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", - "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", - "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", - "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", - "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." - ], - "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" + "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", + "38 pages table rows include historical versions, not 38 current pages.", + "Native backup excludes raw/, model caches, logs and external native session transcripts.", + "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", + "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", + "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." + ] }, { - "id": "native-returned-results-20260921", + "path": "blueprints/us-equities/order-contract/receipt.json", + "id": "alpaca-offline-order-contract-20260919", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "rtk", - "context-mode", - "qmd", - "serena", - "ai-memory", - "socraticode", - "qdrant", - "agentsview", - "grafana", - "loki", - "prometheus", - "dagu", - "ntfy", - "omniroute", - "agent-browser", - "promptfoo", - "headroom", - "jcodemunch-mcp" + "alpaca-py" ], - "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", + "claim": "Installed alpaca-py request models silently dropped synthetic advanced fields; this explicit broker-disconnected basic-intent boundary rejected those inputs and eight additional negative cases while preserving canonical decimal strings.", "limitations": [ - "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", - "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", - "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", - "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", - "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", - "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", - "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", - "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", - "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." - ], - "path": "evidence/receipts/native-returned-results-20260921.json" + "Local contract is not wired into unrelated SDK calls or existing workers; explicit future adapter adoption is required.", + "No broker account, key, asset lookup, risk approval, live/paper order or provider wire behavior was exercised.", + "Whole-share basic create-intent subset only; advanced, replacement, cancellation, retries, order journals and reconciliation remain gated.", + "Input representation cap and symbol/client-ID syntax are local conservative policies, not provider or risk authorization.", + "Python SDK float conversion is observed; the canonical exact decimal envelope is deliberately not serialized through those float fields.", + "JavaScript advanced support is pinned-source evidence only; no alternative SDK was installed or executed.", + "Python audit events and the Linux namespace substantiate this scoped probe, not a universal sandbox or macOS acceptance.", + "Canonical content hashes do not establish client-ID uniqueness, deduplication or safe retry semantics.", + "No token-saving claim or model inference belongs to this deterministic task." + ] }, { - "id": "native-workflow-writing-comparison-20260921", + "id": "alpaca-paper-e2e-20260921", "kind": "native_cli_e2e", "component_ids": [ + "alpaca-py", "claude-code" ], - "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", + "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", "limitations": [ - "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", - "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", - "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." + "One operational smoke trial, not profitable strategy or continuous trading acceptance.", + "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", + "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." ], - "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" + "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" }, { - "id": "native-workflow-graceful-recovery-20260921", - "kind": "native_cli_e2e", + "id": "artifact-reductions", + "path": "evidence/receipts/artifact-reductions.json", + "kind": "artifact_measurement", "component_ids": [ - "claude-code" + "rtk", + "socraticode", + "openresearch", + "context-mode" ], - "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", + "claim": "Recorded exact selected-text reductions, distinct from model usage.", "limitations": [ - "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", - "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", - "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", - "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." - ], - "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" + "Lossy selections compare retained text to full-file/paper counterfactuals.", + "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." + ] }, { - "id": "portable-userspace-install-20260921", + "id": "broad-universe-research-20260921", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon", - "codex", - "claude-code" + "alpaca-py", + "duckdb", + "claude-code", + "codex" ], - "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", + "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", "limitations": [ - "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", - "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", - "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", - "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", - "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", - "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", - "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", - "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", - "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." + "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", + "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", + "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", + "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", + "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." ], - "path": "evidence/receipts/portable-userspace-install-20260921.json" + "path": "evidence/receipts/broad-universe-research-20260921.json" }, { - "id": "claude-selective-context-pilot-20260921", - "kind": "native_model_e2e", + "id": "canary-proof-verification-20261001", + "kind": "artifact_measurement", "component_ids": [ "claude-code", - "context-mode" + "codex", + "systemd" ], - "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", + "claim": "The canary proof tool (tools/credentials/canary_proof.py, 1,834 lines, with the contained scan worker tools/credentials/canary_scan_worker.py, 2,114 lines) passed its synthetic acceptance on the workstation on 2026-10-01 on main with the K4 guard: its unit suite ran 143 tests, OK, with none skipped (including 12 cases that start transient systemd user scopes); its mutation runner killed 138 of 138 mutants by failures of their named permanent tests after 90 passing unmutated runs; and the credential, guard, Codex worker-lane and pre-commit suites ran 531 tests with one failure by design (the installed host copy of the guard). The tool plants a unique synthetic canary, lets named consumers use it through the key runner, and searches the named sinks with ripgrep in a worker that runs in a finite systemd user scope; its classifier refuses unless every required check has a fresh, complete result bound to the run. Reviews: a read-only GPT-6 verification found seven paths to a false clean verdict and four high findings, and an Opus build review found one blocking gap in the contract's acceptance cases; one repair round by a GPT-6 runtime worker fixed them, each with a permanent test and a mutant; an Opus re-check confirmed 37 of 42 dispositions and found one more false-clean path (a Git object store with no HEAD, refs or .git name, reached directly) and a record-validation defect, which one bounded fix round closed with tests and mutants. No end-to-end proof has run: it is the new distribution's acceptance after its guard install.", "limitations": [ - "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", - "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", - "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", - "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", - "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", - "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", - "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", - "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." + "Synthetic acceptance only: every sink, canary, Git store, SQLite database and journal in these runs is a fixture the tests build under a temporary directory; no real consumer, transcript, log, journal or credential was used, and no proof claim is made before the end-to-end run.", + "Containment evidence is workstation scope enforcement: the real-scope classes start transient systemd user scopes on this host (12 cases, all passing); hosted CI runners skip them where no user scope exists.", + "Scanner: ripgrep 14.1.0 is the executed version; the runtime also accepts 15.2.0 on a source-reviewed output grammar that no run has executed.", + "Size: the implementation (3,948 coordinator and worker lines) and the permanent test file (3,632 lines) exceed the contract's ceilings (1,800 and 2,800); the coordinator accepted the deviation for the required coverage and containment logic, and the reviews' dead-code findings were removed.", + "Residuals from the Opus re-check, recorded in the decision record: a completed but too-early or stale final is labelled requested_incomplete; the WAL/SHM-without-valid-main guard, Walk.covered's exclusion, time, special-file and symlinked-parent branches, and several O12 changes have no test of their own; three mutants are missing (END count/aux, --text, a count-based Git reconcile); bind_scope's refusal paths and the real scope_populated parser are untested; the scan's exit code still comes from events it does not validate.", + "Evidence classes differ: the unit, mutation and suite runs were made by the coordinator on the final head outside any sandbox; the reviews are read-only cross-family reads, not proofs." ], - "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" + "path": "evidence/receipts/canary-proof-verification-20261001.json" }, { - "id": "native-dashboard-data-20260921", + "id": "catalog-clean-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qmd", - "qdrant", - "agentsview", - "grafana", - "loki", - "rtk", - "context-mode", - "headroom", - "jcodemunch-mcp", - "promptfoo", - "serena", - "systemd" + "codex" ], - "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", + "claim": "Native uv recreated the 36-distribution research SDK lock in a fresh prefix on the existing WSL host; package consistency, exact inventory, imports, SQL and 55 existing data fixtures passed.", "limitations": [ - "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", - "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", - "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", - "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", - "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", - "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", - "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", - "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", - "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." + "Same-host isolated-prefix evidence, not a new WSL distribution or complete foundation profile installation.", + "Initial broad suite: 766 tests, 763 passed, one missing-HOME environment error, two skips. Targeted HOME-preserving rerun passed; original failure retained.", + "Prerequisite audit found selected commands missing from its PATH; native sign-ins, GPU/services/memory/client integration and brokers were not qualified." ], - "path": "evidence/receipts/native-dashboard-data-20260921.json" + "path": "evidence/receipts/catalog-clean-install-20260921.json" }, { - "id": "foundation-closure-20260921", - "kind": "native_cli_e2e", + "id": "catalog-freshness-20260923", + "kind": "upstream_provenance", "component_ids": [ "claude-code", "codex", - "affaan-m/ECC", - "context-mode" + "llama-cpp", + "mcp-inspector", + "openresearch", + "skfolio" ], - "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", + "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", "limitations": [ - "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", - "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", - "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", - "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", - "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", - "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", - "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", - "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." + "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", + "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", + "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", + "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." ], - "path": "evidence/receipts/foundation-closure-20260921.json" + "path": "evidence/receipts/catalog-freshness-20260923.json" }, { - "id": "native-quality-defaults-20260920", - "kind": "native_cli_e2e", + "id": "catalog-runtime-review-20260921", + "kind": "native_model_e2e", "component_ids": [ "codex", - "claude-code" + "claude-code", + "dagu" ], - "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", + "claim": "One native Claude Opus 5 catalog review completed for the frozen 20-layer baseline; original Dagu branches failed and Codex returned capacity failure. This is bounded advisory review, not comparative repository qualification.", "limitations": [ - "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", - "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", - "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", - "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", - "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." + "No completed Codex verdict or cross-family agreement; all failed attempts and separate usage categories retained.", + "Final Claude pass used native CLI separately after the Dagu attempt; no successful full DAG run is claimed.", + "Frozen base precedes the subsequent candidate-quality and HTML patch; review does not establish universal superiority or new-PC acceptance." ], - "path": "evidence/receipts/native-quality-defaults-20260920.json" + "path": "evidence/receipts/catalog-runtime-review-20260921.json" }, { - "id": "native-terminal-profiles-20260920", + "id": "ccusage-20026-qualification-20260927", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "qdrant", - "vllm" + "ccusage" ], - "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", "limitations": [ - "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", - "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", - "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", - "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", - "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." + "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", + "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", + "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", + "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", + "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", + "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", + "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", + "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", + "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", + "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", + "New hosts receive this pin only after the next release tag." ], - "path": "evidence/receipts/native-terminal-profiles-20260920.json" + "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" }, { - "id": "native-claude-profile-20260920", - "kind": "native_cli_e2e", + "id": "claude-advisor-usage-scan-20260928", + "kind": "artifact_measurement", + "component_ids": [ + "claude-code" + ], + "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", + "limitations": [ + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", + "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", + "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", + "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", + "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", + "Whether ccusage or ecosystem-token-report count these entries was not checked." + ], + "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" + }, + { + "id": "claude-foundation-finalization-20260921", + "kind": "native_model_e2e", "component_ids": [ "claude-code", "codex", - "affaan-m/ECC", - "context-mode", - "rtk" + "agent-browser", + "repomix" ], - "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", + "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", "limitations": [ - "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", - "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", - "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", - "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", - "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", - "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", - "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", - "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", - "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." + "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", + "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", + "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", + "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." ], - "path": "evidence/receipts/native-claude-profile-20260920.json" + "path": "evidence/receipts/claude-foundation-finalization-20260921.json" }, { - "id": "native-offhost-restic-20260920", + "id": "claude-host-practice-readback-20260928", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "claude-code", + "claude-hud", + "headroom", + "mcporter", + "jcodemunch-mcp", + "agent-browser", + "qmd" ], - "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", + "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", "limitations": [ - "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", - "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", - "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", - "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", - "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", - "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." + "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", + "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", + "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", + "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", + "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", + "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", + "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." ], - "path": "evidence/receipts/native-offhost-restic-20260920.json" + "path": "evidence/receipts/claude-host-practice-readback-20260928.json" }, { - "id": "native-dagu-retry-tests-20260920", + "id": "claude-hud-0100-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "dagu" + "claude-hud" ], - "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", "limitations": [ - "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", - "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", - "No broker/provider operations or token savings were measured.", - "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" }, { - "id": "native-token-stack-final-20260920", - "kind": "native_model_e2e", + "id": "claude-hud-0100-qualification-20261004", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", + "claude-hud" + ], + "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed claude-hud 0.10.0 from tag v0.10.0 through native Claude plugin commands after an initial marketplace-source mismatch failed. Native marketplace remove/add and plugin install succeeded; plugin list showed version 0.10.0 enabled at user scope. Direct and configured statusline commands rendered a sample payload with exit 0. This is historical plugin and sample-render evidence, not a new interactive terminal session or model run.", + "limitations": [ + "No macOS execution and no upstream test suite run. There are no release assets for this tag; the supported installation remains a native Claude Code plugin, not a tarball bootstrap kind.", + "First marketplace add failed with exit 1 due to the old source entry; native remove/add/install recovered it. Sample statusline rendering does not establish a fresh interactive Claude session or provider usage.", + "The host note reports a five-second refresh effect, but these retained records do not include a new interactive terminal observation. Plugin details reported approximately zero always-on tokens; this is a native projection, not measured provider counts." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json" + }, + { + "id": "claude-max-default-effort-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", + "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", + "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", + "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", + "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", + "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", + "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", + "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." + ], + "path": "evidence/receipts/claude-max-default-effort-20260929.json" + }, + { + "id": "claude-model-effort-probes-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", + "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", + "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", + "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", + "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." + ], + "path": "evidence/receipts/claude-model-effort-probes-20260929.json" + }, + { + "id": "claude-project-effort-flag-20260929", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-code" + ], + "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", + "limitations": [ + "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", + "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", + "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", + "The Ultracode reminder is an indicator, not proof of workflow orchestration.", + "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." + ], + "path": "evidence/receipts/claude-project-effort-flag-20260929.json" + }, + { + "id": "claude-repository-evidence-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "alpaca-py", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codex", + "codex-for-claude", + "context-hub", "context-mode", - "jcodemunch-mcp", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "duckdb", + "edgartools", + "gitleaks", + "grafana", "headroom", - "rtk", - "opentelemetry-collector-contrib", + "huggingface-hub-native", + "jcodemunch-mcp", + "lean", "loki", - "prometheus" + "markitdown", + "mcp-inspector", + "mcporter", + "nautilus-trader", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "pandas", + "playwright-cli", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shellcheck", + "skfolio", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", + "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", "limitations": [ - "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", - "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", - "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", - "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", - "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", - "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", - "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", - "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." + "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", + "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", + "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", + "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", + "Superseded observations, including the author's own probe and invocation errors, remain recorded." ], - "path": "evidence/receipts/native-token-stack-final-20260920.json" + "path": "evidence/receipts/claude-repository-evidence-20260921.json" }, { - "id": "native-rag", - "path": "evidence/receipts/native-rag.json", + "id": "claude-selective-context-pilot-20260921", "kind": "native_model_e2e", "component_ids": [ - "codex", "claude-code", - "socraticode", - "qdrant", - "vllm", - "huggingface-hub-native" + "context-mode" ], - "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", + "claim": "Six amended native Claude coding attempts passed shared visible, held-out and scope checks. All three selective-policy attempts chose native computation; observed aggregate usage was 2.42% higher than the native policy, without a Context Mode treatment. One earlier rejected integration attempt remains in campaign task totals.", "limitations": [ - "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", - "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." - ] + "Synthetic local integration pilot on one accepted coding fixture; not an upstream benchmark, whole-stack savings rate or universal model comparison.", + "Three AB/BA/AB pairs partly counterbalance order; native cache warmth is uncontrolled and models have no fixed seed. No Context Mode calls occurred, so the tool's causal token or latency effect is unidentified.", + "Hooks are disabled equally per invocation and a strict Context Mode-only MCP configuration is used. This controlled pilot is not normal-hook full-stack E2E.", + "Usage means final native-reported cumulative modelUsage counted once per fresh task. Ordinary input, cache creation, cache reads and output are disjoint here; thinking is included in output.", + "Coordinator, independent review, acceptance execution, reporting and any unreported provider requests are outside these task usage totals. Wall time covers the native subprocess only.", + "Native list-price cost estimates are preserved in original usage fields; subscription billing and money saved are unknown.", + "Private raw transcripts, session identifiers, commands and local paths are not published. Artifact hashes bind retained evidence but are not independent provider attestation.", + "Initial protocol failed its workflow/scope contract despite passing product and final file-scope checks; that attempt is excluded only from amended quality-equivalent pairs and retained in all-attempt totals." + ], + "path": "evidence/receipts/claude-selective-context-pilot-20260921.json" }, { - "id": "native-memory", - "path": "evidence/receipts/native-memory.json", - "kind": "native_model_e2e", + "id": "claude-spend-attribution-20260929", + "kind": "artifact_measurement", + "component_ids": [ + "claude-code", + "ccusage" + ], + "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", + "limitations": [ + "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", + "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", + "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", + "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", + "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", + "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", + "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", + "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", + "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", + "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." + ], + "path": "evidence/receipts/claude-spend-attribution-20260929.json" + }, + { + "id": "claude-spend-window-20261004", + "kind": "artifact_measurement", "component_ids": [ + "claude-code", + "ccusage", + "context-mode" + ], + "claim": "Retained Claude-only ccusage daily costs rise from $2,823.79 and $2,427.25 on October 1/2 to $5,940.56 on October 3. The supplied executor window comparison reproduces exactly from count-only scanner outputs: IET per 24 h rises 2.121 times, counted call rows 2.419 times, and subagents started 2.824 times, while mean context per call falls from 271,790 to 216,230 tokens. The unfiltered retained session-view export is $12,404.88 and its workflow share is 61.402%; removing 17 rows with pre-10-03 last activity leaves $11,151.92, with coordinator-tree shares 63.296% and 33.787%. These are session-selection views, not spend since 10-03. Net pre-first-call attachment growth excluding UI is about 2.9 KB (0.8K rough tokens), rather than the positive-only 4.3 KB (1.2K) estimate. These are scoped observations, not subscription charges or a quality comparison. Adding the retained advisor-cohort estimate gives 830.270M and 1,777.960M IET per 24 h (2.141 times); all 689 A and 1,209 B advisor iterations in those cohorts used Fable. Fable is $2,092.87, or 35.230% of priced Claude dollars on 10-03. The user subsequently selected an Opus 5.5 advisor.", + "limitations": [ + "API-equivalent prices are not the subscription meter. ccusage leaves claude-sonnet-5-5 unpriced; its dollars therefore do not price every counted Claude model.", + "ccusage days are local time and Prometheus days are UTC. These scopes and the scanner windows must not be summed or equated.", + "Prometheus keeps one week; this retained export starts with the UTC day 2026-09-27 and ends with 2026-10-03.", + "The attr byte shares use unfitted weights, so they show direction only; receipt context shares exclude UI records before normalization.", + "The hook_success records are UI-only and are not counted as context. Pre-first-call attachment sizes are serialized metadata bytes, not exact model input or tokenization.", + "NativeStack only, because NativeStack2604's telemetry has no listener. This scope is the coordinator's stated observation boundary, not a new listener check.", + "10-04 is a partial day. The scanner ends at 14:00Z; no full-day projection is a measured total.", + "This is a re-derivation of retained native outputs and scanner aggregates, not a new provider/model run, an upstream acceptance test, or a quality/savings A/B.", + "window_compare.py includes synthetic zero-usage rows in its call counts and uses per-field maximum deduplication. Its subagent calls-per-file statistic spans each selected file, whereas its call and IET windows filter call timestamps.", + "Window hook text is not retained in the aggregate inputs. Historical hook-text estimates are reported as estimates; current installed carrier and upstream static hook sizes are distinct observations and do not establish historical hook outputs.", + "The unfiltered session export includes pre-10-03 activity: 17 rows worth $1,252.96 have lastActivity before 2026-10-03T04:00Z. The raw and activity-selected shares have different denominators. Filtering lastActivity does not restrict the dates of every token in a session total; neither view is established as spend since 10-03.", + "The reproduction artifact extends the supplied analysis with advisor-cohort rows. Original executor output is unchanged. Its private raw output includes source identifiers; only sanitized aggregates are retained here.", + "Advisor iterations are absent from calls.tsv and retained only as per-file tot values in files.jsonl. Grouping them by file first_ts reproduces the reviewed cohorts, but files can cross window boundaries. Executor-plus-advisor-cohort IET is an estimate with mixed timestamp scopes, not an exact call-window total; advisor iterations have no recorded effort here.", + "IET applies the same coefficients to every model: input 1, cache read 0.1, five-minute and unclassified cache writes 1.25, one-hour cache writes 2, and output 5, with thinking already in output. There is no model-specific base-price multiplier. Advisor aggregates lack cache-write duration splits and weight all cache writes at 1.25. Thus IET model shares and window ratios are relative-index measures, not dollar shares or actual spend ratios; Fable dollars from ccusage remain separate. Historical Fable usage precedes the new Opus advisor decision." + ], + "path": "evidence/receipts/claude-spend-window-20261004.json" + }, + { + "id": "claude-upstream-checks-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "agent-browser", + "agentsview", "ai-memory", + "alertmanager", + "ast-grep", + "beads", + "ccusage", + "claude-code", "codex", - "claude-code" + "codex-for-claude", + "context-mode", + "dagu", + "difftastic", + "gitleaks", + "grafana", + "headroom", + "jcodemunch-mcp", + "lean", + "loki", + "markitdown", + "mcporter", + "nautilus-trader", + "openresearch", + "opentelemetry-collector-contrib", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", + "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", "limitations": [ - "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", - "No historical archive backfill or LLM/embedding consolidation pipeline enabled." - ] + "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", + "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", + "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", + "Complete originals remain private; public excerpts are bounded and sanitized.", + "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." + ], + "path": "evidence/receipts/claude-upstream-checks-20260921.json" }, { - "id": "native-context-memory", - "path": "evidence/receipts/native-context-memory.json", - "kind": "native_model_e2e", + "id": "codex-01571-qualification-20260926", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", + "limitations": [ + "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", + "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", + "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", + "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", + "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", + "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", + "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", + "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", + "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", + "Linux x86_64 only, one host; nothing here is macOS evidence." + ], + "path": "evidence/receipts/codex-01571-qualification-20260926.json" + }, + { + "id": "codex-01592-qualification-20260930", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", + "limitations": [ + "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", + "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", + "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", + "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", + "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", + "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", + "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", + "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", + "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", + "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", + "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", + "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", + "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", + "Linux x86_64 only, one host; nothing here is macOS evidence." + ], + "path": "evidence/receipts/codex-01592-qualification-20260930.json" + }, + { + "id": "codex-01593-hindsight-native-memory-20261001", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "Fresh native Codex automatic capture and independent recollection from the selected Hindsight bank passed in both headless exec and daemon-backed interactive resume/queue paths.", + "limitations": [ + "Two invented canaries and their record budgets are explicitly synthetic, not project policy, market data or trading acceptance.", + "This is supported native command/API execution with synthetic inputs and independent observation, not an executed upstream Docker or Cargo test suite.", + "Headless exec and daemon-backed TUI are distinct paths; each has its own fresh provider-backed observations below.", + "Knowledge-page search completed but did not contain either canary. Native Hindsight reflect supplied the correct values; page population or cron refresh is not qualified here.", + "Backend seed/survey completion was not established. Native status reported synced=false with active operations; the coordinator separately owns seed-job recovery.", + "Native model token usage excludes Hindsight backend extraction/reflection usage. Backend usage and monetary cost are unknown.", + "No production-quality or token-efficiency comparison is claimed, and no unrelated session or authentication store was read." + ], + "path": "evidence/receipts/codex-01593-hindsight-native-memory-20261001.json" + }, + { + "id": "codex-01593-native-queue-20261001", + "kind": "native_cli_e2e", + "component_ids": [ + "codex" + ], + "claim": "Fresh provider-backed native queue delivery succeeded while the owned daemon-backed thread was idle, while a preceding turn was busy, and after its TUI disconnected and resumed. Three official Hindsight hook definitions were individually trusted through the native UI.", + "limitations": [ + "Synthetic messaging inputs qualify these native operations, not production task quality or the whole ecosystem.", + "No upstream Cargo test suite was run; upstream test sources were reviewed and native commands were exercised.", + "No daemon restart was attempted during live qualification, and no unrelated session was inspected or interrupted.", + "Queue delivery to a concurrently running embedded receiver, cross-family bridge delivery, cross-account isolation, remote hosts, and Hindsight retrieval/retention are outside this receipt.", + "Hindsight capture remained disabled during hook trust. Hook trust is not memory acceptance.", + "Provider monetary cost is unknown. Native usage counters do not establish improvement against another configuration." + ], + "path": "evidence/receipts/codex-01593-native-queue-20261001.json" + }, + { + "id": "codex-desktop-live-20260920", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", "context-mode", + "jcodemunch-mcp", "serena", - "rtk" + "ai-memory", + "socraticode", + "rtk", + "headroom", + "qmd", + "loki", + "prometheus" ], - "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", + "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", "limitations": [ - "Earlier Serena/RTK run uses its original CLI version.", - "PreCompact was not induced; current Desktop catalog is distinct from child native clients." - ] + "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", + "Tools without native savings ledgers remain unavailable, not zero.", + "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", + "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", + "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", + "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", + "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", + "No fresh Prometheus turn sample in the selected window; no three-way observation join." + ], + "path": "evidence/receipts/codex-desktop-live-20260920.json" }, { - "id": "runtime-tools", - "path": "evidence/receipts/runtime-tools.json", + "id": "codex-session-environment-20260920", "kind": "native_cli_e2e", "component_ids": [ - "gitleaks", - "sandbox-runtime" + "codex", + "context-mode", + "jcodemunch-mcp", + "serena", + "ai-memory", + "socraticode" ], - "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", + "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", "limitations": [ - "No claim of full security certification.", - "Sandbox network denial configured but not separately exercised." - ] + "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", + "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", + "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", + "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", + "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", + "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", + "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." + ], + "path": "evidence/receipts/codex-session-environment-20260920.json" }, { - "id": "artifact-reductions", - "path": "evidence/receipts/artifact-reductions.json", + "id": "codex-shell-snapshot-cleanup-20260930", "kind": "artifact_measurement", "component_ids": [ - "rtk", - "socraticode", - "openresearch", - "context-mode" + "codex" ], - "claim": "Recorded exact selected-text reductions, distinct from model usage.", + "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", "limitations": [ - "Lossy selections compare retained text to full-file/paper counterfactuals.", - "Public source fixture replaces personal path literals; historical original hashes/counters remain distinct from public fixture recount." - ] + "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", + "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", + "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", + "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." + ], + "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" }, { "id": "component-history", @@ -564,61 +837,116 @@ ] }, { - "id": "native-cli-gaps", - "path": "evidence/receipts/native-cli-gaps.json", + "id": "cross-family-review-terminal-lane-20260930", "kind": "native_model_e2e", "component_ids": [ - "qmd", - "codebase-memory-mcp", - "agent-browser" + "codex", + "omniroute", + "claude-code" ], - "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", + "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", "limitations": [ - "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", - "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." - ] + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", + "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", + "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", + "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", + "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", + "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", + "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." + ], + "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" }, { - "id": "worktrunk-list", - "path": "evidence/receipts/worktrunk-list.json", + "id": "current-session-observation-20260920", "kind": "native_cli_e2e", "component_ids": [ - "worktrunk" + "agentsview", + "ai-memory", + "alertmanager", + "ccusage", + "claude-hud", + "context-mode", + "grafana", + "headroom", + "jcodemunch-mcp", + "loki", + "mcporter", + "ntfy", + "opentelemetry-collector-contrib", + "otel-tui", + "prometheus", + "rtk", + "serena", + "socraticode" ], - "claim": "Native wt list enumerated the actual publication worktree set.", + "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", "limitations": [ - "Model-free repository inventory, not multi-agent correctness." - ] + "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", + "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", + "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", + "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", + "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", + "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", + "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", + "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." + ], + "path": "evidence/receipts/current-session-observation-20260920.json" }, { - "id": "desktop-direct-rag", - "kind": "native_model_e2e", + "id": "dashboard-gap-resolution-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "socraticode", - "qdrant", - "vllm", - "ai-memory" + "ai-memory", + "codex", + "claude-code", + "agentsview", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo", + "vllm" ], - "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", + "claim": "Resolved concrete native dashboard gaps: automatic Claude and Codex memory consolidation, scoped archive refresh, passwordless gateway desktop access, current Claude telemetry, native ntfy template formatting and published NVIDIA retrieval example execution.", "limitations": [ - "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", - "No whole-task provider usage/savings attribution is claimed." + "Bounded current-host native operations and local integration checks; not universal SOTA or complete-foundation certification.", + "Fresh PreCompact event and active Desktop session end remain unforced.", + "Next genuine post-deployment ntfy webhook remains unobserved; native renderer replay and deployed template are verified separately.", + "Promptfoo ranks all four published pairs; local source-derived assertion, not MTEB or held-out quality evaluation. Direct script usage and consolidation usage remain unknown.", + "Native consumed/cache counters and model-scoped observation windows are not lifetime savings.", + "Read-only memory wiki/global browser FTS and compatible MiniLM profile remain upstream boundaries." ], - "path": "evidence/receipts/desktop-direct-rag.json" + "path": "evidence/receipts/dashboard-gap-resolution-20260921.json" }, { - "id": "vllm-compatibility", - "kind": "compatibility_attempt", + "id": "dashboard-render-e2e-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "vllm", - "socraticode" + "ai-memory", + "qdrant", + "socraticode", + "serena", + "agentsview", + "dagu", + "omniroute", + "agent-browser", + "grafana", + "prometheus", + "alertmanager", + "ntfy", + "promptfoo" ], - "claim": "Latest vLLM0.29.0 native install succeeded but GPU startup failed on WSL; publisher-validated0.25.0 restored and direct retrieval passed.", + "claim": "Inspected rendered screenshots for13 installed repository interfaces, compared supported native operations, refreshed stale graph, repaired unreadable Grafana memory panels and retained actual limitations.", "limitations": [ - "This is a host-specific failure, not a claim0.29is universally unusable.", - "The resolver success does not establish GPU/runtime compatibility." + "ai-memory model-based consolidation remains disabled; native Codex provider is available but not activated by this UI review.", + "Bundled ai-memory web search is global FTS, not project-scoped. No richer official admin SPA exists in reviewed release/current-main.", + "Old deployment memory marked stale via supported memory_feedback; body not silently rewritten.", + "OmniRoute CLI initialized local encryption-key file during read command; no key exposed; coordinator restricted file mode to 0600.", + "One wrong System text selector, initial blank ntfy image, recursive browser observation, Dagu preset-only link, Symbols filename no-match and MCP-disabled OmniRoute command retained.", + "FreeLLMAPI optional Windows route remains unavailable; no alert suppression.", + "Historical Promptfoo fixture is not model-quality evidence. No new jobs, notifications or inference created to populate screens." ], - "path": "evidence/receipts/vllm-compatibility.json" + "path": "evidence/receipts/dashboard-render-e2e-20260921.json" }, { "id": "desktop-cli-workflows", @@ -637,72 +965,20 @@ "path": "evidence/receipts/desktop-cli-workflows.json" }, { - "id": "portable-cli-artifacts", - "kind": "native_cli_e2e", - "component_ids": [ - "shellcheck", - "difftastic", - "markitdown", - "ast-grep", - "toon", - "repomix" - ], - "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", - "limitations": [ - "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", - "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." - ], - "path": "evidence/receipts/portable-cli-artifacts.json" - }, - { - "id": "native-observability", - "kind": "native_cli_e2e", - "component_ids": [ - "codex", - "claude-code", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana", - "alertmanager", - "ntfy" - ], - "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", - "limitations": [ - "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", - "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", - "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", - "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", - "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", - "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." - ], - "path": "observability/receipt.json" - }, - { - "id": "native-observability-followup", + "id": "desktop-direct-rag", "kind": "native_model_e2e", "component_ids": [ - "codex", - "context-mode", - "ai-memory", "socraticode", - "agent-browser", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana" + "qdrant", + "vllm", + "ai-memory" ], - "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", + "claim": "The running Desktop task directly retrieved the relevant code through SocratiCode after tool rediscovery; direct scoped ai-memory page retrieval also succeeded.", "limitations": [ - "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", - "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", - "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", - "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", - "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", - "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." + "This does not establish Context Mode direct discovery; its current-task bridge remains separate.", + "No whole-task provider usage/savings attribution is claimed." ], - "path": "observability/followup-receipt.json" + "path": "evidence/receipts/desktop-direct-rag.json" }, { "id": "desktop-restart-acceptance", @@ -730,817 +1006,746 @@ "path": "observability/restart-receipt.json" }, { - "id": "sec-financial-data-20260919", - "kind": "compatibility_attempt", + "id": "env-freshness-wsl-ubuntu-main-20260924", + "kind": "artifact_measurement", "component_ids": [ - "duckdb" + "nautilus-trader", + "alpaca-py", + "duckdb", + "pandas", + "edgartools", + "exchange-calendars", + "vllm" ], - "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", + "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", "limitations": [ - "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", - "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", - "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", - "Current API snapshots do not reconstruct historical point-in-time knowledge.", - "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", - "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." + "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", + "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", + "One host; each PC publishes its own report under the same schema.", + "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." ], - "path": "blueprints/us-equities/financial-data/receipt.json" + "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" }, { - "id": "restic-local-public-reference-20260919", + "id": "exchange-calendars-native-check-20260922", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "exchange-calendars" ], - "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", + "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", "limitations": [ - "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", - "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", - "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", - "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", - "Credential loss recovery requires separately approved secure key escrow." + "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", + "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", + "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", + "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", + "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." ], - "path": "blueprints/us-equities/hosting/backup/receipt.json" + "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" }, { - "id": "native-research-runtime-20260919", - "kind": "native_model_e2e", + "id": "foundation-catalog-ui-20260920", + "kind": "artifact_measurement", "component_ids": [ - "claude-code", - "dagu", - "lean", - "duckdb", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "agent-browser" ], - "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", + "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", "limitations": [ - "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", - "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", - "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", - "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", - "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", - "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", - "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", - "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." + "Source pin/publication URLs pending parent final source commit and regeneration.", + "No provider/broker execution or broad regression rerun performed.", + "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." ], - "path": "blueprints/us-equities/research-runtime/receipt.json" + "path": "evidence/receipts/foundation-catalog-ui-20260920.json" }, { - "path": "blueprints/us-equities/state-recovery/memory/receipt.json", - "id": "ai-memory-native-state-recovery-20260919", + "id": "foundation-closure-20260921", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "restic" + "claude-code", + "codex", + "affaan-m/ECC", + "context-mode" ], - "claim": "A native ai-memory online SQLite backup and wiki archive survived encrypted Restic backup/restore and isolated native application restore, preserving 324 archived files and verified SQLite/FTS state.", + "claim": "Dated community and SDK source recheck retained the native foundation; independent configuration/source review confirmed existing terminal profiles and selected ECC hashes. Authenticated native Claude displayed context, six connected MCP servers, HUD and zero then nonzero usage around a real inherited-tool review. Manual compaction was exercised separately.", "limitations": [ - "The SQLite snapshot is consistent; wiki and config are archived afterward without a demonstrated global DB/wiki write lock.", - "38 pages table rows include historical versions, not 38 current pages.", - "Native backup excludes raw/, model caches, logs and external native session transcripts.", - "Restored SQLite/store/FTS accepted; a replacement HTTP/MCP memory server was not launched or selected by live clients.", - "Local source, encrypted repository and password share a host; off-host durability and independent key escrow are not established.", - "No automatic schedule, retention enforcement, model inference, broker action or provider token savings." - ] - }, - { - "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", - "id": "qdrant-native-state-recovery-20260919", - "kind": "native_cli_e2e", - "component_ids": [ - "qdrant", - "restic" + "Dated bounded baseline, not exhaustive landscape saturation, comparative superiority or full sixteen-layer lifecycle E2E.", + "No new package installation or global account/model/permission change. Unchanged upstream installation and behavior evidence retains its prior scope.", + "Source/currentness review is not native SDK acceptance. Existing worker recovery does not qualify another role, SDK, host crash, distributed effects or provider cancellation.", + "Manual compaction and selected continuity checks do not establish automatic compaction, every retained fact or general recovery reliability.", + "Context and HUD numbers are estimates; usage display includes rounded auxiliary requests. Complete session/provider usage and causal savings remain unknown.", + "The named restricted starter reviewer remains conditional; this native review used inherited tools with a no-edit instruction, not OS-enforced read-only access.", + "Model reviewers independently inspected bounded files. Supported findings were resolved; agreement and artifact hashes are not substitutes for behavioral acceptance.", + "Private native session logs retained outside Git. Public exports normalize paths; screen observations are coordinator records, not all contained in the context export. Windows dropdown interaction was not tested." ], - "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", - "limitations": [ - "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", - "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", - "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", - "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", - "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." - ] + "path": "evidence/receipts/foundation-closure-20260921.json" }, { - "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", - "id": "qmd-bm25-retrieval-20260919", - "kind": "native_cli_e2e", + "id": "foundation-convergence-20260921", + "kind": "native_model_e2e", "component_ids": [ - "qmd" + "codex", + "claude-code", + "context-mode", + "rtk", + "headroom", + "toon" ], - "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", + "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", "limitations": [ - "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", - "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", - "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", - "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", - "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", - "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", - "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", - "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", - "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", - "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", - "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." - ] + "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", + "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", + "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", + "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", + "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." + ], + "path": "evidence/receipts/foundation-convergence-20260921.json" }, { - "path": "blueprints/us-equities/convergence-review/receipt.json", - "id": "native-claude-convergence-review-20260919", - "kind": "native_model_e2e", + "id": "foundation-native-20260920", + "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "qmd", + "qdrant", + "vllm", + "socraticode", + "serena", + "context-mode", + "jcodemunch-mcp", + "rtk", + "headroom", + "repomix", + "toon", + "codex", "claude-code", "opentelemetry-collector-contrib", "prometheus", - "loki" + "loki", + "omniroute" ], - "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", + "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", "limitations": [ - "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", - "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", - "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", - "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", - "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", - "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." - ] + "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", + "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", + "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", + "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", + "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", + "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", + "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", + "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", + "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." + ], + "path": "evidence/receipts/foundation-native-20260920.json" }, { - "path": "blueprints/us-equities/supply-chain/receipt.json", - "id": "syft-sdk-inventory-20260919", - "kind": "native_cli_e2e", + "id": "foundation-rd-20260921", + "kind": "native_model_e2e", "component_ids": [ - "syft" + "claude-code", + "codex", + "codex-for-claude", + "qmd" ], - "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", + "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", "limitations": [ - "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", - "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", - "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", - "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", - "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", - "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", - "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", - "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", - "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", - "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." - ] + "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", + "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", + "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", + "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", + "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." + ], + "path": "evidence/receipts/foundation-rd-20260921.json" }, { - "path": "adoption/receipt.json", - "id": "portable-sdk-adoption-20260919", + "id": "full-stack-convergence-20260921", "kind": "native_cli_e2e", "component_ids": [ + "agent-browser", + "agentsview", + "ai-memory", + "ccusage", + "claude-code", "codex", - "duckdb" + "context-mode", + "dagu", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "loki", + "omniroute", + "openresearch", + "prometheus", + "qdrant", + "qmd", + "repomix", + "rtk", + "serena", + "socraticode", + "toon", + "vllm", + "worktrunk" ], - "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", + "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", "limitations": [ - "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", - "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", - "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", - "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", - "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", - "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", - "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." - ] + "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", + "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", + "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", + "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", + "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", + "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", + "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", + "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." + ], + "path": "evidence/receipts/full-stack-convergence-20260921.json" }, { - "path": "adoption/paired/receipt.json", - "id": "native-paired-adoption-20260919", - "kind": "native_model_e2e", + "id": "github-automation-newpc-20260922", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code", - "duckdb", - "dagu", - "lean", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "claude-code" ], - "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", + "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", "limitations": [ - "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", - "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", - "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", - "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", - "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", - "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", - "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", - "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." - ] + "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", + "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", + "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", + "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", + "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", + "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." + ], + "path": "evidence/receipts/github-automation-newpc-20260922.json" }, { - "path": "blueprints/us-equities/architecture/receipt.json", - "id": "native-architecture-review-20260919", - "kind": "native_model_e2e", + "id": "gitleaks-macos-memory-bound-20260924", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "opentelemetry-collector-contrib", - "prometheus", - "loki" + "gitleaks" ], - "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", + "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", "limitations": [ - "The models reviewed supplied evidence and did not independently inspect primary sources. Their critiques are advisory and were adjudicated; agreement does not establish correctness or trading performance.", - "This is a native architecture-review task, not another LEAN/Dagu backtest run, full MCP/RAG acceptance, broker integration, hosted deployment or universal SOTA census.", - "The44,214 combined native reported tokens exclude coordinator and source-research workers. They are usage, not causal tokens saved or a billing measurement across identical tokenizers.", - "Astra cached input is included in input and reasoning output in output. Claude thinking is included in output; duplicate per-model/iteration/stream views are not added again.", - "Native model selection and terminal usage are not independent provider attestation. Full account/session/process identifiers and raw event streams remain private.", - "The offline Alpaca observation detects synthetic field loss only; no client/network/order, valid advanced-order fixture, entitlement or execution adapter was tested.", - "New machines must reproduce their own selected native profile and sign-in; these local WSL receipts do not establish macOS or unattended-host acceptance." - ] + "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", + "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", + "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", + "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", + "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", + "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", + "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." + ], + "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" }, { - "path": "blueprints/us-equities/execution-realism/receipt.json", - "id": "native-lean-execution-sensitivity-20260919", - "kind": "native_cli_e2e", + "id": "guard-k3-verification-20260930", + "kind": "artifact_measurement", "component_ids": [ - "lean" + "claude-code" ], - "claim": "Native LEAN completed three fixed-order historical simulations with distinct upstream fee/slippage assumptions; serialized fill cash reconciles to native rounded summaries and all mounted engine/data input hashes remained unchanged.", + "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", "limitations": [ - "Exact arithmetic over serialized native event values; exported five-decimal fill prices and cent-rounded summaries do not expose all internal precision.", - "Illustrative fees and slippage are assumptions, not calibrated market or Alpaca execution observations.", - "Full-quantity market fills remain assumed; participation, partial fills, impact, latency, queueing, cancellation and broker reconciliation remain unaccepted.", - "Bundled five-day data do not establish PIT/corporate-action/universe quality or investment returns.", - "The normal dotnet build/restore route timed out twice; only the installed native C# compiler route is accepted.", - "Mounted input hashes do not prove every file was read; successful request logs list 13 paths plus possible separately read metadata.", - "No broker connection, account entitlement, deployment, strategy promotion, provider usage or token saving is established." - ] + "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", + "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", + "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", + "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", "limitations": [ - "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", - "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", - "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", - "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", - "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", - "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", - "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", - "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", - "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", - "Isolated fixture, not the live memory store or all client hooks.", - "TTL is default-search visibility until sweep, not immediate access revocation.", - "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." - ] + "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", + "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", + "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", + "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", + "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", + "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", + "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", + "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." + ], + "path": "evidence/receipts/headroom-039-qualification-20260925.json" }, { - "id": "native-exact-nanosecond-replay-20260919", - "path": "blueprints/us-equities/nanosecond-replay/receipt.json", + "id": "hf-memory-models-20260921", "kind": "native_cli_e2e", "component_ids": [ - "duckdb", - "pandas" + "ai-memory", + "socraticode", + "vllm", + "grafana" ], - "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", + "claim": "Verified the installed current Nemotron3Embed1B HF revision, executed NVIDIA's exact native retrieval example and supported OpenAI-compatible route, exposed model identities in Grafana and opened the official model/benchmark dashboards. MiniLM compatibility and stronger unqualified candidates remain explicit.", "limitations": [ - "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", - "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", - "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", - "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", - "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", - "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", - "No broker, trading strategy, actual feed or net token-saving acceptance." - ] + "Current deployed code-RAG model and upstream example acceptance, not universalSOTA or a rerun of public benchmarks.", + "Nemotron8B and EmbeddingGemma are candidates, not installed models. No paid HF endpoint or cloud worker was deployed.", + "ai-memory retains its older symmetric MiniLM compatibility profile. Source review found the generic MCP query call bypasses task-specific query encoding in both inspected revisions.", + "Four upstream examples establish bounded integration. Production retrieval/latency comparison, long-context qualification and exact token savings are not established.", + "Native HF warnings are preserved:33additional local metadata files for Nemotron and27uninstalled remote files for MiniLM. No strict full-directory mirror claim.", + "HF model cards and raw vector/browser outputs remain private; public projections preserve source pins and hashes while excluding host paths and generated browser identifiers." + ], + "path": "evidence/receipts/hf-memory-models-20260921.json" }, { - "id": "native-worker-supervision-20260919", - "path": "blueprints/us-equities/worker-supervision/receipt.json", + "id": "jcodemunch-1108327-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "systemd" + "jcodemunch-mcp" ], - "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", "limitations": [ - "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", - "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", - "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", - "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", - "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", - "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", - "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", - "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", - "Hashes bind retained evidence bytes; they do not independently attest the execution.", - "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", - "Configured resource limits were inspected, not saturation-tested." - ] + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" }, { - "id": "native-grand-dashboard-20260919", - "path": "observability/grand-dashboard/receipt.json", - "kind": "native_cli_e2e", + "id": "local-inference-c2-serving-switch-20260926", + "kind": "native_model_e2e", "component_ids": [ - "grafana", - "loki", - "prometheus", - "dagu" + "llama-cpp" ], - "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", "limitations": [ - "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", - "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", - "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", - "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", - "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", - "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", - "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", - "Recorded worker/decision state is not a live process registry.", - "No broker execution, exact-once accounting, universal coverage or net token savings.", - "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." - ] + "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", + "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", + "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", + "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", + "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", + "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", + "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." + ], + "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" }, { - "id": "native-convergence-review-20260919", - "path": "blueprints/us-equities/convergence-program/review-receipt.json", - "kind": "native_model_e2e", + "id": "login-shell-contract-20260929", + "kind": "native_cli_e2e", "component_ids": [ - "codex", "claude-code", - "dagu" + "codex" ], - "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", "limitations": [ - "Models checked packet/report consistency, not original sources or underlying native artifacts.", - "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", - "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", - "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", - "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", - "Usage belongs to this pair only; not whole-goal consumption or causal savings." - ] + "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", + "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", + "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", + "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", + "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", + "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", + "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", + "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", + "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + ], + "path": "evidence/receipts/login-shell-contract-20260929.json" }, { - "id": "native-historical-leverage-stress-20260919", - "path": "blueprints/us-equities/historical-simulation/receipt.json", + "id": "mac-memory-patch-20260920", + "path": "evidence/receipts/mac-memory-patch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "lean" + "ai-memory" ], - "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", + "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", "limitations": [ - "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", - "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", - "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", - "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", - "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", - "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", - "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", - "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", - "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", - "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", - "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", - "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", - "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", - "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", - "No paper/live orders or automatic promotion." + "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", + "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", + "No provider or whole-task token savings measurement." ] }, { - "id": "native-chronological-controls-20260919", + "id": "mac-native-application-migration-20260920", "kind": "native_cli_e2e", "component_ids": [ - "skfolio", - "pandas", - "lean" + "fastapi", + "postgresql" ], - "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", + "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", "limitations": [ - "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", - "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", - "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", - "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", - "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", - "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", - "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", - "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." + "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", + "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", + "No model calls; whole-task provider usage unknown." ], - "path": "blueprints/us-equities/research-evaluation/receipt.json" + "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" }, { - "id": "native-edgartools-catalyst-20260919", + "id": "mac-native-container-storage-20260920", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "apple-container", + "postgresql" ], - "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", + "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", "limitations": [ - "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", - "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", - "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", - "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", - "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", - "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", - "Native text/byte counts are not provider token savings.", - "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." + "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", + "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", + "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", + "Images remain cached; only owned empty failed container, test database container and test volume were removed.", + "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." ], - "path": "blueprints/us-equities/catalyst-provenance/receipt.json" + "path": "blueprints/convergence-practice/container-storage/receipt.json" }, { - "id": "native-simulation-research-dashboard-20260919", + "id": "mac-native-document-ingestion-20260920", "kind": "native_cli_e2e", "component_ids": [ - "grafana", - "loki" + "poppler" ], - "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", + "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", "limitations": [ - "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", - "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", - "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", - "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", - "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", - "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", - "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." + "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", + "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", + "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", + "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", + "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." ], - "path": "blueprints/us-equities/simulation-research/receipt.json" + "path": "blueprints/convergence-practice/document-ingestion/receipt.json" }, { - "id": "native-sec-access-resolution-20260919", + "id": "markitdown-018-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "markitdown" ], - "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", "limitations": [ - "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", - "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", - "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", - "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", - "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", - "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", - "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", - "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." + "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", + "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", + "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", + "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", + "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", + "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", + "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", + "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." ], - "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" + "path": "evidence/receipts/markitdown-018-qualification-20260925.json" }, { - "id": "native-sec-new-host-20260924", + "id": "mcp-inspector-280-qualification-20260926", "kind": "native_cli_e2e", "component_ids": [ - "edgartools" + "mcp-inspector" ], - "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", "limitations": [ - "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", - "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", - "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", - "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", - "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", - "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", - "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." + "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", + "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", + "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", + "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", + "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." ], - "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", - "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" + "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" }, { - "id": "sec-catalyst-dataset-native-20260920", + "id": "mcp-inspector-290-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "edgartools", - "duckdb" + "mcp-inspector" ], - "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", "limitations": [ - "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", - "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", - "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", - "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", - "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", - "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", - "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", - "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", - "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" }, { - "id": "native-corporate-actions-20260920", + "id": "mcporter-0141-qualification-20260925", "kind": "native_cli_e2e", "component_ids": [ - "lean" + "mcporter" ], - "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", "limitations": [ - "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", - "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", - "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", - "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", - "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", - "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." + "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", + "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", + "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", + "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", + "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", + "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." ], - "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" + "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" }, { - "id": "native-alpaca-historical-20260920", - "kind": "native_cli_e2e", + "id": "mcporter-0142-qualification-20261003", + "kind": "compatibility_attempt", "component_ids": [ - "alpaca-py", - "lean" + "mcporter" ], - "claim": "Native Alpaca-py0.44.0 GET transport acquired25 AAPL SIP/raw daily bars and2 corporate actions over5 HTTP200 pages. Terminal pagination and private artifacts verified;25 raw closes and both numeric action values match the frozen LEAN probe. Dividend currency and original historical availability remain unestablished.", + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", "limitations": [ - "One retrospective AAPL sample only; no all-equities universe, delisting completeness, intraday mover coverage or original point-in-time availability.", - "Cash amount and split ratio numerically match; missing dividend currency prevents fully qualified cash-unit reconciliation. No holdings, dividend cash posting, total return, financing or strategy performance modeled.", - "Historical SIP response does not establish real-time access, unlimited history, Elite margin/order entitlement or broker execution. No orders or account resets.", - "Five bounded authenticated GET requests; no IEX downgrade, retries after access refusal, paid data or SDK upgrade.", - "Prior LEAN direct probe passed, but its separate upstream NUnit host aborted before executing tests; this wave does not repair or supersede that failure.", - "No new model task or whole-task causal token-savings experiment in this wave." + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "blueprints/us-equities/authenticated-data/native-receipt.json" + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" }, { - "id": "native-security-identity-20260920", + "id": "mcporter-0142-qualification-20261004", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "duckdb" + "mcporter" ], - "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", + "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed mcporter 0.14.2 and returned version 0.14.2 with exit 0. Registry provenance matched openclaw/mcporter release.yml at v0.14.2, and a scratch npm audit verified 43 registry signatures and 15 attestations. Ad-hoc stdio jcodemunch session statistics and context-mode ctx_stats calls returned exit 0. Configured-daemon calls failed on a stale rendezvous and were not recovered. This receipt republishes sanitized historical host observations, not a new host execution.", "limitations": [ - "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", - "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", - "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", - "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", - "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", - "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", - "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", - "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." + "No macOS execution and no upstream test suite run. The npm tarball hash is artifact evidence and does not pin the transitive dependency tree or rolldown platform binding.", + "Configured-server list/call failures are retained. The stale daemon was not recovered and keep-alive transport acceptance is not claimed; dist/daemon/client.js was recorded byte-identical across 0.14.1 and 0.14.2.", + "npm audit signatures --global failed with EAUDITGLOBAL (exit 1); only the later scratch-project audit succeeded. The ad-hoc MCP statistics are self-reports, not provider counts or savings.", + "The Mac keeps its separately qualified MCPorter 0.13.13 pin until a Mac qualifies 0.14.2. The platform-independent tarball artifact check is not Mac execution or Mac qualification." ], - "path": "blueprints/us-equities/identity-readiness/native-receipt.json" + "path": "evidence/receipts/mcporter-0142-qualification-20261004.json" }, { - "id": "token-practice-artifacts-20260920", - "kind": "artifact_measurement", + "id": "memory-landscape-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "ast-grep", - "edgartools", - "markitdown", - "qmd", - "repomix", - "rtk", - "socraticode", - "syft", - "toon" + "ai-memory", + "codex", + "claude-code" ], - "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", + "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", "limitations": [ - "Counts describe retained original host artifacts. This public aggregate omits the private originals; CI validates aggregate integrity, not an independent recount of those private bytes.", - "Most pairs select or transform information lossily. Shorter output does not establish equivalent answer quality or lower complete task usage.", - "Pairs overlap, including shared HTML sources and retrieval services. Do not sum them or attribute the same difference independently to dependencies.", - "Exact provider savings remain null. Tokenizer counts are not provider billing, subscription savings or causal per-repository effects.", - "The Syft table preserves checked package name/version/type columns while omitting other SBOM metadata; this is a view selection, not equivalent full SBOM content." + "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", + "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", + "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", + "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", + "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", + "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", + "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", + "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", + "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." ], - "path": "evidence/receipts/token-practice-artifacts-20260920.json" + "path": "evidence/receipts/memory-landscape-20260921.json" }, { - "id": "token-practice-native-pairs-20260920", - "kind": "native_model_e2e", + "id": "memory-landscape-lifecycle-20260921", + "kind": "native_cli_e2e", "component_ids": [ + "ai-memory", + "socraticode", + "qdrant", + "vllm", + "serena", + "qmd", "codex", - "claude-code", - "context-mode" + "claude-code" ], - "claim": "Four native coding trials passed shared visible, hidden and file-scope acceptance gates; one fixed-order Context Mode non-use/explicit-use pair per client produced mixed observed task-usage differences.", + "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", "limitations": [ - "One baseline-first pair per client is not randomized, repeated or cache-matched. Native cache warmth and plugin tool availability were not fully controlled.", - "Observed differences are not causal per-repository savings, a whole-stack saving rate or evidence that either model is generally better.", - "Codex cached input and reasoning output are subsets. Claude ordinary input, cache creation, cache reads and output are separate categories; thinking is included in output.", - "Final cumulative session counters are used once. Coordinator, reviewers, audit tooling and report production are outside these four task totals.", - "Billed cost is unknown. Token counts and cached reads do not establish subscription charges or money saved.", - "Private transcripts, session identifiers and commands are not published. Hashes bind retained evidence, not independent attestation of provider execution." + "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", + "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", + "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", + "Exact memory session/lifetime savings are not returned and remain null.", + "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." ], - "path": "evidence/receipts/token-practice-native-pairs-20260920.json" + "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" }, { - "id": "token-practice-coverage-20260920", - "kind": "historical_inventory", + "id": "memory-lifecycle-probe-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "ast-grep", - "ccusage", - "claude-code", - "claude-hud", - "codebase-memory-mcp", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "davila7/claude-code-templates", - "difftastic", - "gitleaks", - "headroom", - "huggingface-hub-native", - "markitdown", - "mcp-inspector", - "mcporter", - "openresearch", - "playwright-cli", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "rtk", - "sandbox-runtime", - "serena", - "shanraisshan/claude-code-best-practice", - "shellcheck", - "socraticode", - "toon", - "vllm", - "worktrunk", - "opentelemetry-collector-contrib", - "prometheus", - "loki", - "grafana", - "alertmanager", - "ntfy", - "duckdb", - "restic", - "dagu", - "lean", - "syft", - "alpaca-py", - "systemd", - "pandas", - "skfolio", - "edgartools" + "ai-memory" ], - "claim": "A dated 52-component audit distinguishes native artifact/task pairs, bounded functionality, current queries, configuration validation, historical-only evidence, host failures and non-executable guidance.", + "claim": "A frozen three-note lexical fixture passed 28 content checks across 41 completed CLI invocations and two owned server lifecycles. Both ai-memory 2.3.2 and Basic Memory 0.23.2 reflected writes, reads, updates and current-search deletion. ai-memory restart and native backup, and Basic Memory text-index rebuild, passed within their distinct scopes.", "limitations": [ - "This historical coverage inventory records the dated audit only; it is not 52 fresh end-to-end passes or new-host acceptance.", - "Seventy captured operations include four retained failed attempts; successful corrections do not erase the initial OTel environment and Dagu environment-filter failures.", - "Two Linux Playwright invocations failed with ENOENT; the Windows installation does not establish Linux availability.", - "Guidance repositories are not executable tools. Current state, backup and cache queries or configuration validation do not prove complete lifecycle behavior.", - "Native RTK, TOON, Context Mode and Headroom counters have different scopes and estimators. They cannot be summed with artifact differences or provider usage.", - "Exact causal per-component provider saving values remain unknown rather than zero." + "First ai-memory attempt failed the no-model-download constraint. A corrected run explicitly set its documented none embedding provider. No completed model files were found after stopping; transferred network bytes were not measured.", + "The already passing Basic Memory lane was reused, not rerun. Its source was pinned but dependencies resolved during installation rather than from an upstream lock; resolved package versions are retained.", + "ai-memory restore/reindex were not executed because their process guard checks sibling processes. Earlier separate restore receipts retain their own scope. Basic Memory reindex is not a lost-database restore.", + "Deletion checks do not establish erasure from version history, Git, logs or backups. No semantic-quality, cross-project isolation, hooks, live-client E2E, concurrency, timing advantage or universal winner is established.", + "This is the existing WSL host using isolated synthetic stores. No new physical-PC or fresh-WSL acceptance is implied; installed ai-memory binary/source equivalence was not rebuilt.", + "Public artifacts replace personal executable paths, normalize publication whitespace and withhold backup archive bytes. Original/public hashes and safe backup inventories retain provenance." ], - "path": "evidence/receipts/token-practice-coverage-20260920.json" + "path": "evidence/receipts/memory-lifecycle-probe-20260921.json" }, { - "id": "token-practice-catalog-toon-20260920", - "kind": "artifact_measurement", + "id": "native-ai-memory-maintenance-20260920", + "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "toon" + "ai-memory" ], - "claim": "A reversible full-catalog TOON conversion had a smaller native heuristic estimate but a larger exact token count than compact JSON; the guard retained compact JSON.", + "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", "limitations": [ - "This is one later artifact comparison, separate from the ten original token-practice pairs. Do not sum it with cumulative native counters or provider usage.", - "Native tokenx estimates and exact o200k_base counts use different estimators and JSON representations; they are not interchangeable savings metrics.", - "The public aggregate omits the private captured output files. Published hashes establish identity, not independent CI recount of the private bytes.", - "Exact provider savings remain unknown. The successful strict round trip establishes data equivalence for this conversion only.", - "Command templates replace host-specific source and output locations with portable placeholders." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", + "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", + "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", + "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", + "Forward-only migrations may require restoring the retained private backup to downgrade." ], - "path": "evidence/receipts/token-practice-catalog-toon-20260920.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "token-practice-native-counters-20260920", - "kind": "historical_inventory", + "id": "native-alpaca-historical-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "context-mode", - "headroom", - "rtk", - "toon" + "alpaca-py", + "lean" ], - "claim": "Dated native counter snapshots retain RTK output, the capped Headroom ledger result, per-conversion TOON estimates and three separate Context Mode runtime scopes without treating them as exact provider savings.", + "claim": "Native Alpaca-py0.44.0 GET transport acquired25 AAPL SIP/raw daily bars and2 corporate actions over5 HTTP200 pages. Terminal pagination and private artifacts verified;25 raw closes and both numeric action values match the frozen LEAN probe. Dividend currency and original historical availability remain unestablished.", "limitations": [ - "This historical snapshot is a dated report only, not a live dashboard or new-host execution acceptance.", - "RTK counters estimate retained command history and default to 90-day retention; selected-project values are a subset of the global result. Do not add snapshots or assume a forever ledger.", - "Headroom 0.37.0 caps the report at 30 days despite naming a field lifetime; zero ledger calls do not establish zero offline guard use or provider usage.", - "Context Mode uses byte/event heuristics and separate runtime state. Illustrative cost estimates are not bills, and persisted files must not be added to a direct MCP connection snapshot.", - "TOON statistics are tokenx heuristics for one conversion, not a native cumulative ledger. The compact-JSON exact counterexample is represented by the separate catalog receipt and must not be counted twice.", - "Raw private files, host paths, full command outputs and session identifiers are omitted. Sanitized fields and aggregate hashes do not independently attest provider activity." + "One retrospective AAPL sample only; no all-equities universe, delisting completeness, intraday mover coverage or original point-in-time availability.", + "Cash amount and split ratio numerically match; missing dividend currency prevents fully qualified cash-unit reconciliation. No holdings, dividend cash posting, total return, financing or strategy performance modeled.", + "Historical SIP response does not establish real-time access, unlimited history, Elite margin/order entitlement or broker execution. No orders or account resets.", + "Five bounded authenticated GET requests; no IEX downgrade, retries after access refusal, paid data or SDK upgrade.", + "Prior LEAN direct probe passed, but its separate upstream NUnit host aborted before executing tests; this wave does not repair or supersede that failure.", + "No new model task or whole-task causal token-savings experiment in this wave." ], - "path": "evidence/receipts/token-practice-native-counters-20260920.json" + "path": "blueprints/us-equities/authenticated-data/native-receipt.json" }, { - "id": "token-practice-gap-followup-20260920", + "id": "native-application-delivery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "playwright-cli", - "agentsview", - "ccusage", - "claude-hud", - "openresearch", - "codex-for-claude", - "codex" + "nextjs", + "react", + "fastapi", + "postgresql" ], - "claim": "Six separately scoped follow-ups exercised a pinned Linux browser fixture, a single-session archive query, offline usage parsing, a synthetic HUD renderer, public-paper retrieval and one read-only native bridge backend task.", + "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", "limitations": [ - "These later bounded results do not turn the earlier dated 52-component audit into 52 full end-to-end passes. Individual scopes below remain authoritative.", - "Three failed attempts remain: file-protocol navigation rejection, implicit archive auto-start message failure and archive restart-lock failure. Successful recovery does not erase them.", - "Playwright used an existing Chrome installation and a fixture-only loopback HTTP endpoint. Its Playwright dependencies are alpha builds; no default browser download or arbitrary-site acceptance was tested.", - "The archive was restricted to one explicit project session. Full private transcripts, authentication material and session identifiers are omitted; automatic archive discovery did not pass.", - "HUD acceptance is a synthetic renderer fixture, not a live interactive account display. OpenResearch acceptance is public-paper retrieval, not an agent research workflow or research-quality assessment.", - "The ccusage reports overlap and must not be added. Upstream parser categories and totals are not bills or a matched provider savings comparison. The first date-only query returned an empty window.", - "The bridge trial is additional observed provider usage, not savings. It used one backend task without an outer Claude interaction or matched baseline; cached input is a subset of native input.", - "Tracked source remained unchanged; native MCP startup created untracked metadata. All owned temporary services were stopped. Public aggregate hashes bind retained evidence but do not independently reproduce private logs." + "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", + "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", + "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", + "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", + "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", + "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", + "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", + "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." ], - "path": "evidence/receipts/token-practice-gap-followup-20260920.json" + "path": "blueprints/convergence-practice/application-delivery/receipt.json" }, { - "id": "native-lifecycle-sample-20260920", - "kind": "native_cli_e2e", + "path": "blueprints/us-equities/architecture/receipt.json", + "id": "native-architecture-review-20260919", + "kind": "native_model_e2e", "component_ids": [ - "edgartools", - "duckdb" + "codex", + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", + "claim": "Native GPT-6 Astra and Claude Opus 5 independently reviewed the same bounded twelve-fact architecture packet, returned structurally checked source-ID-linked critiques without model tool calls, and their usage reconciled to local monitoring.", "limitations": [ - "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", - "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", - "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", - "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", - "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", - "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." - ], - "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" + "The models reviewed supplied evidence and did not independently inspect primary sources. Their critiques are advisory and were adjudicated; agreement does not establish correctness or trading performance.", + "This is a native architecture-review task, not another LEAN/Dagu backtest run, full MCP/RAG acceptance, broker integration, hosted deployment or universal SOTA census.", + "The44,214 combined native reported tokens exclude coordinator and source-research workers. They are usage, not causal tokens saved or a billing measurement across identical tokenizers.", + "Astra cached input is included in input and reasoning output in output. Claude thinking is included in output; duplicate per-model/iteration/stream views are not added again.", + "Native model selection and terminal usage are not independent provider attestation. Full account/session/process identifiers and raw event streams remain private.", + "The offline Alpaca observation detects synthetic field loss only; no client/network/order, valid advanced-order fixture, entitlement or execution adapter was tested.", + "New machines must reproduce their own selected native profile and sign-in; these local WSL receipts do not establish macOS or unattended-host acceptance." + ] }, { - "id": "synthetic-catalyst-contract-20260920", + "id": "native-catalog-retrieval-20260920", "kind": "native_cli_e2e", "component_ids": [ - "duckdb" + "qmd" ], - "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", + "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", "limitations": [ - "Protocol thresholds are exploratory choices, not fitted or proven optimal.", - "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", - "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", - "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", - "No provider calls, broker orders, new model turn or net token-savings measurement." + "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", + "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", + "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", + "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." ], - "path": "blueprints/us-equities/catalyst-experiment/receipt.json" + "path": "evidence/receipts/native-catalog-retrieval-20260920.json" }, { - "id": "native-research-efficiency-20260920", - "kind": "native_model_e2e", + "id": "native-chronological-controls-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "qmd" + "skfolio", + "pandas", + "lean" ], - "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", + "claim": "Native skfolio 1.2.9 produced 20 chronological development folds and one reserved 2021Q1 evaluation with 21 frozen selections and 6605 retained candidate records. All training label exits precede their evaluation cutoff; nine bundled LEAN source hashes remained unchanged. This is a raw-price label study, not new LEAN execution or portfolio P&L.", "limitations": [ - "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", - "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", - "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", - "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", - "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", - "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", - "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", - "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", - "Local supervision does not prove provider-side cancellation; no run timed out.", - "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." + "Selected ETF sample, not point-in-time equity universe, catalyst/extreme-mover strategy or proof of data rights/original availability.", + "Raw prices include ex-dividend moves but omit distributions; price labels are not total returns. Studied factor rows have constant split factor 1 and map intervals preserve each symbol.", + "Fixed 20bp round-trip cost proxy per invested episode does not model fills, commissions, funding, turnover netting, liquidity or capacity. No cash/position/fee/dividend reconciliation or new LEAN engine execution.", + "Arithmetic five-session labels are not compounded/annualized portfolio performance. Only 11 complete reserved episodes per candidate; no statistical alpha, safety, superiority or promotion claim.", + "Reserved 2021Q1 means held separate for this protocol, not globally unseen historical data. It is now inspected evidence; subsequent reuse cannot be called untouched.", + "Development labels can cross 63-session fold boundaries within development, while earlier selections use only completed prior labels. A six-row gap plus interval assertions does not prove independent samples.", + "Input hashes establish byte identity, not independent source attestation. Annual counts/aligned calendars do not prove complete market coverage.", + "Native acceptance is this Linux/WSL Python 3.13.15 environment. macOS and fresh hosts still need their own dependency and execution acceptance." ], - "path": "blueprints/us-equities/research-efficiency/native-receipt.json" + "path": "blueprints/us-equities/research-evaluation/receipt.json" }, { "id": "native-ci-security-20260920", @@ -1572,88 +1777,92 @@ "path": "blueprints/convergence-practice/native-worker/receipt.json" }, { - "id": "upstream-native-tools-20260920", - "path": "evidence/receipts/upstream-native-tools-20260920.json", - "kind": "native_cli_e2e", + "path": "blueprints/us-equities/convergence-review/receipt.json", + "id": "native-claude-convergence-review-20260919", + "kind": "native_model_e2e", "component_ids": [ - "beads", - "skills-ref", - "otel-tui" + "claude-code", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Three supplemental upstream tools installed on the source Linux/WSL host: Beads persisted task claims and dependency transitions, skills-ref validated and rendered a selected skill, and otel-tui ingested and displayed one synthetic loopback trace.", + "claim": "Native Claude Opus 5 produced a bounded architecture critique with no exposed tools; all four native usage categories matched retained Prometheus and Loki observations. Model reasoning errors are explicitly adjudicated.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "Bounded native CLI/TUI acceptance on Linux/WSL; no new native Codex or Claude provider task was run for these additions.", - "Beads used one owned Git fixture with embedded Dolt, explicit task scope, skipped agent-instruction generation and skipped hooks. It does not replace ai-memory.", - "skills-ref is upstream's reference/demo implementation; successful portable-format validation does not certify production client extensions or tool semantics.", - "otel-tui received one synthetic local trace; no production or native-provider telemetry session was evaluated and no persistent exporter was installed.", - "None of these three tools exposes a verified cumulative token-savings counter. Exact causal lifetime provider savings remain null.", - "Public command forms substitute portable variables for private host paths; private raw operation logs are not published." + "The model reviewed a supplied nine-fact packet; it did not independently inspect sources or verify the entire ecosystem.", + "The generated report contains identified reasoning errors; README adjudication records corrections and rejects unsupported conclusions.", + "19,370 tokens is actual usage for this invocation, not tokens saved or complete coordinator/worker task usage. Thinking tokens are a subset of output.", + "No new paired native Astra-to-Claude execution: native Linux account allowance/sign-in remains unresolved; Desktop worker availability is separate.", + "Telemetry correlation uses a unique native process instance, timestamp and usage values; private instance/session identifiers and raw logs are not published.", + "No inference rerun, broker action, paid hosting, external alerting or universal SOTA/completeness claim." + ] + }, + { + "id": "native-claude-hud-interactive-20260920", + "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", + "kind": "compatibility_attempt", + "component_ids": [ + "claude-hud" ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", + "limitations": [ + "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", + "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", + "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." + ] }, { - "id": "native-ai-memory-maintenance-20260920", - "path": "evidence/receipts/native-ai-memory-maintenance-20260920.json", + "id": "native-claude-profile-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "claude-code", + "codex", + "affaan-m/ECC", + "context-mode", + "rtk" ], - "claim": "Official ai-memory 2.3.2 release installed on the source Linux/WSL host over 2.3.1 after a private upstream backup; active service executable, native status, scoped search and configured direct MCP status verified.", + "claim": "Native Claude2.1.278 installer repair, persistent scoped defaults, pinned global ECC skill discovery and independent native Codex SDK/Claude reviews passed within their recorded scopes. A local launcher regression preserves native stdout; the global instruction artifact is smaller after reviewed safeguards were restored.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "No new provider/model task was run. Existing dated client acceptance remains tied to its original version and scope.", - "Private memory contents, counts, backup, paths and raw native/MCP responses are excluded from this publication.", - "Native client configuration, service unit, lifecycle hooks, managed routing/skills, project scope and provider settings were preserved.", - "This maintenance update does not demonstrate token savings; exact causal lifetime provider savings remain null.", - "Forward-only migrations may require restoring the retained private backup to downgrade." + "The two reviewers independently reviewed concrete files; model agreement is not correctness or a comparative benchmark.", + "Usage covers those two native reviews only. Coordinator, other research workers and setup usage are excluded; no whole-workflow savings is established.", + "Codex cached input is a subset of input; reasoning is inside output. Claude cache creation/read are separate categories. Client cost estimates are not bills.", + "Claude reported19turns for an invocation requesting max-turns12; no hard spending ceiling or exact turn-count enforcement claim follows.", + "The terminal profile launched the native client but interactive first-run subscription sign-in remains. /context, /usage, /compact and live HUD were not qualified.", + "Doctor installation diagnostics are clean. Its whitespace diagnostic is retained for the accepted embedding profile requiring query: and passage: prefixes with trailing spaces; those values were not trimmed.", + "Windows Terminal settings preservation was structurally checked; launching the named dropdown profile through Windows UI was not independently observed.", + "Selected skill file installation and native discovery do not establish improved task performance or activate the full ECC bundle.", + "Original model streams and host settings remain private; public outputs are explicitly selected and path-normalized projections." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "evidence/receipts/native-claude-profile-20260920.json" }, { - "id": "native-linux-zizmor-20260920", - "path": "evidence/receipts/native-linux-zizmor-20260920.json", - "kind": "native_cli_e2e", + "id": "native-claude-session-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "zizmor" + "claude-code" ], - "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", + "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", "limitations": [ - "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", - "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", - "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", - "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", - "No provider task was run and zizmor supplies no verified lifetime token-savings counter." + "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", + "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", + "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", + "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." ], - "host_scope": { - "profile": "source-host-linux-wsl", - "platform": "Linux/WSL", - "identity": "Private source-host identity omitted", - "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." - } + "path": "evidence/receipts/native-claude-session-recovery-20260920.json" }, { - "id": "native-dagu-job-recovery-20260920", - "kind": "native_cli_e2e", + "id": "native-cli-gaps", + "path": "evidence/receipts/native-cli-gaps.json", + "kind": "native_model_e2e", "component_ids": [ - "dagu" + "qmd", + "codebase-memory-mcp", + "agent-browser" ], - "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", + "claim": "Claude executed document, static graph and isolated local browser workflows; Codex attempt quota-blocked before tool use.", "limitations": [ - "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", - "Initial native schema failure and earlier Mac success are retained; no savings comparison." - ], - "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" + "Codex counterpart pending restored allowance; earlier core Codex proof remains separate.", + "Claude final126-word handoff exceeded requested120; runtime acceptance passed, fullinstructionadherence false." + ] }, { "id": "native-codex-session-recovery-20260920", @@ -1670,708 +1879,845 @@ "path": "evidence/receipts/native-codex-session-recovery-20260920.json" }, { - "id": "native-gpu-patch-20260920", + "id": "native-context-memory", + "path": "evidence/receipts/native-context-memory.json", "kind": "native_model_e2e", "component_ids": [ - "llama-cpp" + "codex", + "claude-code", + "context-mode", + "serena", + "rtk" ], - "claim": "One pinned Qwen3.8-27B Q4_K_M local CUDA partial-offload repair passed independent source review and all12 original planner tests on WSL RTX4090.", + "claim": "Native Context Mode/Serena/explicit RTK calls passed; fresh both-client Context Mode+memory startup passed on updated clients.", "limitations": [ - "One visible fixture, one trial, configured32GPUlayers; exact layer placement count unavailable at native log verbosity.", - "Generation took179.191seconds near the180second cap. This is not an interactive default or frontier-model comparison.", - "Minimum whole-device sampled freeVRAM8223MiB includes other allocations; not an isolated process-peak benchmark.", - "Native model and archives were downloaded and hash-verified; archive attestations verified. CUDA licensing reviewed for local use, not redistribution.", - "No host recovery, concurrent serving, provider billing or whole-task savings qualification." - ], - "path": "evidence/receipts/native-gpu-patch-20260920.json" + "Earlier Serena/RTK run uses its original CLI version.", + "PreCompact was not induced; current Desktop catalog is distinct from child native clients." + ] }, { - "id": "native-claude-session-recovery-20260920", + "id": "native-convergence-review-20260919", + "path": "blueprints/us-equities/convergence-program/review-receipt.json", "kind": "native_model_e2e", "component_ids": [ - "claude-code" + "codex", + "claude-code", + "dagu" ], - "claim": "One native Claude Opus5 session on WSL was interrupted during an owned pending Bash wait and resumed under the same native session ID to finalize one unchanged checkpoint.", + "claim": "Native Dagu completed Astra SDK then tool-free Claude review with 37,151 reported tokens and matching exported Astra observation.", "limitations": [ - "One synthetic task with explicit Opus5/Ultracode; no general model, child-agent or cross-host guarantee.", - "Native SIGINT and owned-process retirement do not prove remote provider cancellation or billing cessation.", - "The two terminal usage views reconcile to30441tokens; resumed cumulative modelUsage is not an additional total. Native retries, billing and enclosing coordinator/reviewer usage remain unknown.", - "The executed runner is frozen separately from later private-log boundary and cleanup hardening; no new model attempt was run for those fixes." - ], - "path": "evidence/receipts/native-claude-session-recovery-20260920.json" + "Models checked packet/report consistency, not original sources or underlying native artifacts.", + "Both models overgeneralized memory ingestion-time as_of to the packet review date; see coordinator adjudication.", + "Prior accepted historical backtests remain valid within their scope; this engineering packet contains no new strategy validation.", + "No broker orders, provider cancellation, remote host, net savings or universally final SOTA selection established.", + "Models checked packet consistency; source acceptance and interpretive corrections were independently reviewed.", + "Usage belongs to this pair only; not whole-goal consumption or causal savings." + ] }, { - "id": "token-native-retained-functional-20260920", - "path": "evidence/receipts/token-native-retained-functional-20260920.json", + "id": "native-corporate-actions-20260920", "kind": "native_cli_e2e", "component_ids": [ - "context-hub", - "headroom", - "mcp-inspector", - "promptfoo", - "worktrunk" + "lean" ], - "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", + "claim": "Native LEAN factor, mapping, scaling and event APIs verified 25 AAPL sessions, one dividend and one split from frozen bundled data. Direct probe accepted; upstream NUnit host aborted before executing any tests. No strategy, position accounting or historical-availability claim.", "limitations": [ - "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", - "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", - "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", - "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", - "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", - "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." - ] + "Retrospective bundled AAPL sample only; no as-known universe, delisting completeness, extreme-mover coverage or alpha evidence.", + "Current map/factor files have no original first-observed timestamps; basis at or before decision does not prove metadata availability then.", + "Adjusted mode uses full-file factors; ScaledRaw fixes an explicit endDateTime basis. TotalReturn factor alone does not produce a total-return series.", + "Native dividend 0.82 uses raw pre-split share units. No holdings, dividend cash posting, financing, execution or P&L modeled.", + "Upstream NUnit tests attempted but 0 executed; the broader assembly fixture/Python environment is unresolved.", + "Authenticated Alpaca historical fetch remains deferred; no paid service, broker order, new dataset or SDK upgrade." + ], + "path": "blueprints/us-equities/corporate-action-readiness/receipt.json" }, { - "id": "native-jcodemunch-20260920", - "path": "evidence/receipts/native-jcodemunch-20260920.json", + "id": "native-dagu-job-recovery-20260920", "kind": "native_cli_e2e", "component_ids": [ - "jcodemunch-mcp" + "dagu" ], - "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", + "claim": "Native Dagu2.16.6 cancelled and retried only an unfinished final step on Mac and WSL, retaining one unchanged checkpoint and passing the12test oracle before and after.", "limitations": [ - "Single bounded code-reading task, not a native provider A/B trial.", - "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", - "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", - "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", - "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", - "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", - "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." - ] + "Deterministic synthetic job recovery only; no model/provider interruption, host reboot or independent-host restore qualification.", + "Initial native schema failure and earlier Mac success are retained; no savings comparison." + ], + "path": "evidence/receipts/native-dagu-job-recovery-20260920.json" }, { - "id": "native-headroom-mcp-20260920", - "path": "evidence/receipts/native-headroom-mcp-20260920.json", + "id": "native-dagu-retry-tests-20260920", "kind": "native_cli_e2e", "component_ids": [ - "headroom" + "dagu" ], - "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", + "claim": "The unchanged official Dagu retry tests passed on a fresh hosted runner with the exact source archive and required Go toolchain; independent review reconciled all source and artifact hashes and the platform job.", "limitations": [ - "Owned synthetic acceptance artifacts demonstrate artifact reduction, not lifetime production or provider-token savings", - "MCP summary is not a lossless replacement of the original; its exact full retrieval consumes the original token count", - "Upstream Headroom CLI has no compress subcommand; on-demand compression/retrieval is exposed through MCP or SDK", - "No automatic agent-traffic interception was configured", - "Global native upstream savings ledger remains0; isolated fixture ledger is not merged into it", - "No new provider task or automatic native-client traffic interception is established by this direct MCP fixture." - ] + "Selected upstream retry tests only, not the entire Dagu test suite, a production workload or actual guest reboot recovery.", + "The same workflow's later guest job failed before boot because our QEMU launcher placed the serial property on the wrong option. Overall workflow failure is retained separately from this successful upstream test job.", + "No broker/provider operations or token savings were measured.", + "The public reports are explicitly projected: CI home paths, two upstream UI-route path families and synthetic test UUIDs are replaced with placeholders. Independent source/artifact hashes below refer to the untouched original download; publication.json records both raw and public hashes." + ], + "path": "evidence/receipts/native-dagu-retry-tests-20260920.json" }, { - "id": "native-token-focus-clients-20260920", - "path": "evidence/receipts/native-token-focus-clients-20260920.json", - "kind": "native_model_e2e", + "id": "native-dashboard-access-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "jcodemunch-mcp" + "dagu", + "qdrant", + "agentsview", + "grafana", + "prometheus", + "ntfy", + "agent-browser", + "omniroute" ], - "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", + "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", "limitations": [ - "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", - "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", - "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", - "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", - "Raw private prompts, client streams, account identifiers and host paths are not published." - ] + "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", + "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", + "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", + "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", + "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", + "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", + "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." + ], + "path": "evidence/receipts/native-dashboard-access-20260921.json" }, { - "id": "native-sandbox-network-20260920", - "path": "evidence/receipts/native-sandbox-network-20260920.json", + "id": "native-dashboard-data-20260921", "kind": "native_cli_e2e", "component_ids": [ - "sandbox-runtime" + "ai-memory", + "socraticode", + "qmd", + "qdrant", + "agentsview", + "grafana", + "loki", + "rtk", + "context-mode", + "headroom", + "jcodemunch-mcp", + "promptfoo", + "serena", + "systemd" ], - "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", + "claim": "Useful native dashboard data was qualified on the current host: existing memory pages/search, semantic code retrieval and generated graph, scoped lexical retrieval, selected native session imports, unchanged Promptfoo fixture HTML, and a populated Grafana home. A naturally triggered native timer published actual metadata to Loki; independent reconciliation matched seven separate savings scopes, three memory inventories and 68 dated coverage records.", "limitations": [ - "HTTP proxy path tested on this Linux/WSL host", - "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", - "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", - "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." - ] + "Current-host native command/API/browser integration acceptance, not the upstream projects' full test suites, exhaustive landscape saturation, physical reboot or another-PC acceptance.", + "The Grafana panels, metadata adapter, token report and offline guards are local integration code. Component memory, graph, archive and evaluation views are their upstream interfaces or unchanged generated artifacts.", + "Native token estimates overlap and use different formulas/windows. Context Mode retained events and session bytes are different bases. Desktop retained counters are stale; causal provider savings and universal per-repository lifetime savings remain unknown.", + "ai-memory CLI counters are database-wide; project scope is established separately by native UI/MCP retrieval. QMD intentionally uses BM25 with zero vectors. Qdrant points must not be counted again as dense plus sparse vectors.", + "AgentsView contains explicitly imported snapshots of one Codex and two Claude sessions, not continuous ingestion. SocratiCode graph HTML is an explicit snapshot, not a continuously regenerated graph.", + "Promptfoo imported and exported two existing passing local echo assertions. No new evaluation or provider/model-quality measurement was made. The initial version inspection timed out; its default-profile byte preservation was not measured.", + "Serena's future launch configuration is corrected, but existing MCP processes cannot hot-enable its dashboard. Normal MCP/client reload is required; no current Serena dashboard or forced restart is claimed.", + "Raw native streams and private configurations remain local. Public artifacts are labeled metadata projections or exact safe native outputs, with original byte/hash bindings. Exit codes for some earlier service/archive commands are coordinator tool observations.", + "Independent review found and resolved malformed receipt metadata handling. Failed-source supersession is covered by local offline guards; a failed live generation was not injected. Reviewer agreement alone is not acceptance evidence." + ], + "path": "evidence/receipts/native-dashboard-data-20260921.json" }, { - "id": "native-claude-hud-interactive-20260920", - "path": "evidence/receipts/native-claude-hud-interactive-20260920.json", - "kind": "compatibility_attempt", + "id": "native-edgartools-catalyst-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "claude-hud" + "edgartools" ], - "claim": "A bounded real native Claude terminal launch reached onboarding before the conversation UI, so configured interactive HUD rendering remains unverified despite existing native authentication.", + "claim": "EdgarTools 5.58.0 installed in an environment of 42 version-pinned packages; native local index/context and one pinned real 8-K HTML parser accepted. Official SEC metadata request observed 403; no fresh SEC dataset or historical point-in-time strategy data accepted.", "limitations": [ - "The earlier synthetic HUD renderer acceptance remains valid only for its fixture; it is not live interactive rendering.", - "No model prompt, login route, account action, permission override, model change or statusLine change was used to bypass onboarding.", - "This is an unresolved interactive boundary, not an installation failure or a successful live HUD claim." - ] + "The official SEC network branch stopped after one observed403; changing empty proxy configuration was a local pre-request correction, not an access bypass.", + "Upstream quarterly-index metadata filtering does not cap downloaded rows or capture immutable raw index bytes.", + "catalyst.py is custom contract glue with offline behavior acceptance; its direct SEC acquisition was not run after the native403.", + "First observation means the completion time in a specific run, not globally earliest observation across all prior runs.", + "The real pinned historical8-K HTML fixture lacks acceptance metadata and stays quarantined before and after local observation.", + "Synthetic index fixtures establish parser/gate behavior, not market-data acquisition, a candidate universe, prediction quality or profit.", + "Native text/byte counts are not provider token savings.", + "Version-frozen dependencies are not wheel-hash-locked and a new platform must repeat acceptance." + ], + "path": "blueprints/us-equities/catalyst-provenance/receipt.json" }, { - "id": "native-application-delivery-20260920", + "id": "native-exact-nanosecond-replay-20260919", + "path": "blueprints/us-equities/nanosecond-replay/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "nextjs", - "react", - "fastapi", - "postgresql" + "duckdb", + "pandas" ], - "claim": "On Mac arm64, a locked Next16.3.5/React19.3.0 production UI and FastAPI0.141.1 API created and updated a typed run in real PostgreSQL18.6; API validation/conflict/transaction negatives, browser workflow and exact record persistence after database and application restart passed.", + "claim": "Synthetic exact UTC nanosecond event/revision and universe eligibility survived native pandas parsing, DuckDB BIGINT/Parquet and pinned-hash replay; no market-data or broker adapter acceptance.", "limitations": [ - "Mac arm64 local synthetic vertical slice only. No WSL/cloud/application production, authenticated users, broker or trading qualification.", - "The native PostgreSQL source build omits ICU, readline, zlib and TLS; uses UTF-8/C locale, loopback TCP, no Unix socket and local trust authentication. Not a production database profile.", - "PostgreSQL named-volume container storage was separately tested by the coordinator. This application receipt uses native PostgreSQL; it does not claim the failed bind-mounted container passed.", - "Initial HTTPX tests passed with upstream deprecation; final tests use verified Pydantic httpx2. One upstream Starlette/AnyIO alias deprecation remains.", - "Initial CLI browser observation logged missing favicon404; the application icon was added. Final CLI observation has zero console errors or warnings.", - "The original oracle freeze is retained. Dedicated test-database guarding and unique synthetic browser titles were added before the final freeze without weakening quality assertions.", - "No model/provider calls were made by the application or qualification commands. Whole coordinator/worker usage is unknown; no token-saving claim.", - "No production load test, external ingestion, pagination beyond100 rows, independent-host restore or deployment was qualified." - ], - "path": "blueprints/convergence-practice/application-delivery/receipt.json" + "Synthetic clocks and symbols only; no authenticated source availability, entitlement, symbol mapping, historical +200% dataset, strategy, margin or broker connectivity.", + "Signed int64 UTC nanoseconds exclude the NaT sentinel; finer-than-nanosecond timestamps reject.", + "Sequence is comparable only inside the declared source/logical-event scope; no global cross-feed sequence or measured latency claim.", + "Native JSON encodes output nanoseconds and source sequence as decimal strings; original input JSON integers require lossless parsing.", + "Trusted manifest digest is caller-held; permissions deter edits but do not provide immutable/off-host storage.", + "Synthetic opaque-text fixture, not provider-origin availability, market ticks or a price contract.", + "No broker, trading strategy, actual feed or net token-saving acceptance." + ] }, { - "id": "mac-native-document-ingestion-20260920", - "kind": "native_cli_e2e", + "id": "native-gpu-patch-20260920", + "kind": "native_model_e2e", "component_ids": [ - "poppler" + "llama-cpp" ], - "claim": "Mac native Poppler26.09.0 preserved exact text across3 permitted PDF pages,24 table data cells,8 source/page-grounded positive queries and4 absent answers. A stricter source-list guard passed a second native extraction with the same frozen corpus and oracle.", + "claim": "One pinned Qwen3.8-27B Q4_K_M local CUDA partial-offload repair passed independent source review and all12 original planner tests on WSL RTX4090.", "limitations": [ - "Three-page designed born-digital corpus; no general PDF/OCR/semantic-search quality, held-out evaluation or WSL acceptance.", - "Table geometry is explicit, not automatic detection; latest source build uses verified compatible existing libraries, not an all-dependency upgrade.", - "Historical attempt1 and both frozen implementations are retained. Current accepted attempt2 followed source-boundary hardening; corpus, layout and oracle unchanged.", - "Poppler source checksum matched independent metadata; detached signature was not verified. No parser binary redistributed.", - "Deterministic runner made no model calls; coordinator/research usage is unknown, no provider savings claimed." + "One visible fixture, one trial, configured32GPUlayers; exact layer placement count unavailable at native log verbosity.", + "Generation took179.191seconds near the180second cap. This is not an interactive default or frontier-model comparison.", + "Minimum whole-device sampled freeVRAM8223MiB includes other allocations; not an isolated process-peak benchmark.", + "Native model and archives were downloaded and hash-verified; archive attestations verified. CUDA licensing reviewed for local use, not redistribution.", + "No host recovery, concurrent serving, provider billing or whole-task savings qualification." ], - "path": "blueprints/convergence-practice/document-ingestion/receipt.json" + "path": "evidence/receipts/native-gpu-patch-20260920.json" }, { - "id": "native-wsl-restic-synthetic-20260920", + "id": "native-grand-dashboard-20260919", + "path": "observability/grand-dashboard/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "restic" + "grafana", + "loki", + "prometheus", + "dagu" ], - "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", + "claim": "Native local dashboard displays current-generation public research checkpoints with live service/usage telemetry; generation deletion/readdition, timer and browser acceptance retained. The follow-up verifies passwordless local Viewer access and bounded native Dagu history.", "limitations": [ - "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", - "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", - "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", - "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", - "No token, storage-efficiency or backup performance claim.", - "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", - "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", - "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", - "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", - "Ten offline oracle/guard tests are distinct from the actual native restic commands." - ], - "path": "blueprints/convergence-practice/wsl-restore/receipt.json" + "Worker/decision/gate rows are coordinator checkpoints, not live process discovery.", + "A recent emission does not establish recent source review; table checkpoint dates and linked source receipts remain authoritative.", + "Live telemetry omits bodies and allowlists attributes; correlation identifiers remain in private local storage.", + "Generation replacement is native query behavior, not a claim of transactional multi-stream Loki ingestion.", + "Same-host Linux/WSL timer depends on active user manager/backends; Mac and always-on remote hosting unaccepted.", + "Display rounds currency/percent fields to two decimals; exact simulation results remain in source receipt.", + "No financial execution, exact-once audit, full monitoring coverage or causal token savings established.", + "Recorded worker/decision state is not a live process registry.", + "No broker execution, exact-once accounting, universal coverage or net token savings.", + "Anonymous Viewer is loopback-only and can query permitted local organization telemetry; Dagu operator authentication and native provider sign-in remain required for their protected actions." + ] }, { - "id": "mac-native-container-storage-20260920", - "kind": "native_cli_e2e", + "id": "native-harness-defaults-20260920", + "kind": "artifact_measurement", "component_ids": [ - "apple-container", - "postgresql" + "codex", + "claude-code" ], - "claim": "Apple container1.4.1 boots pinned PostgreSQL18.6 with a native ext4 volume; the inserted row survives a native container stop/start. Owned fixtures were removed after verification.", + "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", "limitations": [ - "Synthetic single-row local persistence, not production durability, performance or crash/reboot recovery.", - "Trust authentication confined to this synthetic private container network with no published port; not a production authentication recipe.", - "Named ext4 volumes passed; Documents bind mounts remain unqualified. No macOS privacy policy or security attribute was changed.", - "Images remain cached; only owned empty failed container, test database container and test volume were removed.", - "Initial image selection/digest/license provenance belongs to the separately recorded application-delivery source review." + "Saved instruction bytes are not proof that every future model decision will follow them.", + "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", + "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." ], - "path": "blueprints/convergence-practice/container-storage/receipt.json" + "path": "evidence/receipts/native-harness-defaults-20260920.json" }, { - "id": "mac-native-application-migration-20260920", + "id": "native-headroom-mcp-20260920", + "path": "evidence/receipts/native-headroom-mcp-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "fastapi", - "postgresql" + "headroom" ], - "claim": "Native Alembic migration0001 upgraded a new empty PostgreSQL18.6 fixture, downgraded to base with both application tables removed, and upgraded again with exact schema names restored.", + "claim": "Official Headroom 0.37.0 MCP extra installed in an isolated Python 3.13 tool environment; direct compression, exact retrieval and scoped native statistics passed on owned synthetic artifacts while the prior exact-recovery guard remained available.", "limitations": [ - "New synthetic empty Mac database only; destructive downgrade deliberately drops application tables. This is schema reversibility, not retention of user data.", - "No production migration, rolling deployment, load or another host acceptance. The existing application data was not changed.", - "No model calls; whole-task provider usage unknown." - ], - "path": "blueprints/convergence-practice/application-delivery/migration-rollback.json" + "Owned synthetic acceptance artifacts demonstrate artifact reduction, not lifetime production or provider-token savings", + "MCP summary is not a lossless replacement of the original; its exact full retrieval consumes the original token count", + "Upstream Headroom CLI has no compress subcommand; on-demand compression/retrieval is exposed through MCP or SDK", + "No automatic agent-traffic interception was configured", + "Global native upstream savings ledger remains0; isolated fixture ledger is not merged into it", + "No new provider task or automatic native-client traffic interception is established by this direct MCP fixture." + ] }, { - "id": "velanext-native-quality-tools-20260920", + "id": "native-historical-leverage-stress-20260919", + "path": "blueprints/us-equities/historical-simulation/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "gitleaks", - "worktrunk" + "lean" ], - "claim": "On VelaNext, exact gitleaks8.30.1 detected one inert test credential and accepted the clean control with redacted reports. Worktrunk0.78.0 created/listed/removed owned worktrees while refusing dirty removal without loss.", + "claim": "Six frozen local LEAN simulations completed: five invested scenarios finished flat with native fill/fee/dividend cash reconciliation; an over-limit scenario received one native buying-power rejection and zero fills. Native default margin liquidations are retained, not suppressed.", "limitations": [ - "Isolated synthetic Linux/WSL fixtures; no arbitrary repository safety/security certification or Mac acceptance inferred.", - "Original executed runner and attempt retained. Second attempt follows exact-pin/archive/binary/version binding and timeout-evidence hardening;20 offline guards passed on Mac and WSL.", - "GitHub attestation endpoints returned404. Publisher checksum, GitHub archive digest and exact pinned license checks passed; no attestation claim.", - "No accounts, shared services, project hooks or model calls changed by qualification. Global promotion, when performed, is separate host deployment evidence.", - "Whole coordinator/worker provider usage is unknown; no token or monetary savings claim." - ], - "path": "blueprints/convergence-practice/wsl-native-tools/receipt.json" + "Known 2020 crash development interval selected for stress; no untouched holdout, alpha estimate, automatic winner selection or profitability claim.", + "One SPY instrument; no historical +200% mover/catalyst census, full point-in-time eligible universe, delisting or strategy-factor acceptance.", + "Every discretionary intent used native next-session MarketOnOpen. Hourly-data fills are recorded at 10:00 New York with bar-open proxies; no exact 09:30 auction/tick/queue/depth or latency acceptance.", + "Native default margin calls use same-event market fills and trade-bar fallback warnings. Their timing is an engine stress behavior, not a calibrated broker risk/liquidation model.", + "2% sizing buffer and 2x SecurityMarginModel are declared simulation assumptions; actual gross can rise above 2x after losses. No present Alpaca account or leverage eligibility was queried.", + "Drawdown/gross metrics use 725 hourly callback observations after engine processing. Intrabar risk and pre-liquidation risk can be worse; margin callback values are retained separately.", + "Raw-data dividends are included. Source feed, corporate-action completeness, original availability and contemporary entitlement are not authenticated by bundled file hashes.", + "No financing/borrow interest configured. The engine reads an interest-rate reference file for its own calculations; this does not establish financing-inclusive cash PnL.", + "All fills assume full quantity. Fixed $1/order and 20 basis points are illustrative stresses, not estimated broker fees or attainable liquidity.", + "Stderr contains three margin-liquidation log entries in each 2x case and the expected insufficient-buying-power rejection in over_limit; exit zero is not described as empty stderr.", + "Cash reconciliation is exact over exported values with a one-cent comparison tolerance; omitted internal precision is not recovered.", + "Hashes establish byte identity, not independent attestation. Native integration is this local fixture around upstream APIs, not an unchanged upstream sample.", + "Known crash-period engineering stress, not holdout alpha or a historical extreme-mover strategy.", + "Hourly MOO proxies and default margin liquidation are not calibrated tick/broker fills; financing was not modeled.", + "No paper/live orders or automatic promotion." + ] }, { - "id": "mac-memory-patch-20260920", - "path": "evidence/receipts/mac-memory-patch-20260920.json", + "id": "native-jcodemunch-20260920", + "path": "evidence/receipts/native-jcodemunch-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "jcodemunch-mcp" ], - "claim": "Mac arm64 synthetic2.3.1\u21922.3.2 migration, scoped exact reads/FTS, reserved and Unicode paths, restart and no-capture checks passed.", + "claim": "Official jCodeMunch 1.108.319 installed and a deliberately scoped local code index returned the exact requested function; the complete search-plus-source response was measured against both whole-file and existing focused-source baselines.", "limitations": [ - "Separate synthetic store and explicit no-model policy only; no production migration claimed by this receipt.", - "OS filesystem/network confinement was not established; failed restricted-sandbox attempt retained. Native execution succeeded without security overrides; Gatekeeper assessment rejected the ad-hoc distribution.", - "No provider or whole-task token savings measurement." + "Single bounded code-reading task, not a native provider A/B trial.", + "Whole-file comparison is beneficial; focused existing source extraction is cheaper for this known symbol, shown separately.", + "Lifetime upstream estimate includes repeat validation calls and must not be deduplicated into causal lifetime provider savings.", + "receipt CLI explicitly scanned only an empty owned transcript directory; no historical client transcript traversal.", + "No client hooks, paid models, cloud keys, watchers or automatic index expansion enabled.", + "Upstream dual-use license retained; this acceptance does not establish eligibility for commercial deployment.", + "Native client registration and later provider task acceptance are separate evidence; these direct MCP operations do not establish both-client task acceptance." ] }, { - "path": "evidence/receipts/wsl-application-20260920.json", - "id": "wsl-application-20260920", + "path": "blueprints/us-equities/execution-realism/receipt.json", + "id": "native-lean-execution-sensitivity-20260919", "kind": "native_cli_e2e", "component_ids": [ - "nextjs", - "react", - "fastapi", - "postgresql", - "playwright-test" + "lean" ], - "claim": "Clean isolated WSL runtime restored the same locked application, passed12 API checks, migration reversal, schema/types, production build and real browser flow; exact row/history persisted after PostgreSQL/API/Next restart.", + "claim": "Native LEAN completed three fixed-order historical simulations with distinct upstream fee/slippage assumptions; serialized fill cash reconciles to native rounded summaries and all mounted engine/data input hashes remained unchanged.", "limitations": [ - "Synthetic loopback application; no production deployment, user authentication or another-host acceptance.", - "Official exact Ubuntu packages were extracted task-only with signed metadata/SHA verification; no package scripts or system database changes.", - "Historical application inputs remain frozen; Makelevel/TIME_WAIT recipe fixes were qualified separately with five real make/socket tests on Mac and WSL.", - "No model calls by application commands; whole-task usage remains unknown." + "Exact arithmetic over serialized native event values; exported five-decimal fill prices and cent-rounded summaries do not expose all internal precision.", + "Illustrative fees and slippage are assumptions, not calibrated market or Alpaca execution observations.", + "Full-quantity market fills remain assumed; participation, partial fills, impact, latency, queueing, cancellation and broker reconciliation remain unaccepted.", + "Bundled five-day data do not establish PIT/corporate-action/universe quality or investment returns.", + "The normal dotnet build/restore route timed out twice; only the installed native C# compiler route is accepted.", + "Mounted input hashes do not prove every file was read; successful request logs list 13 paths plus possible separately read metadata.", + "No broker connection, account entitlement, deployment, strategy promotion, provider usage or token saving is established." ] }, { - "id": "wsl-transport-recovery-20260920", + "id": "native-lifecycle-sample-20260920", "kind": "native_cli_e2e", "component_ids": [ - "dagu" + "edgartools", + "duckdb" ], - "claim": "An owned nonmultiplexed SSH client was terminated; fresh reconnect observed the same native Dagu job running with one unchanged checkpoint, then native completion without stop or retry.", + "claim": "Six HTTP200 public documents support three distinct lifecycle claims. Native offline EdgarTools parsing and DuckDB preserve source anchors and exact observation cutoffs:0 historical,0 before first observation,1 at first and3 at last; historical replay remains0. Original availability, permanent identity and historical universe eligibility remain unestablished.", "limitations": [ - "Controlled client termination and a deliberately detached deterministic job; not a real network outage, host restart, model-session recovery or distributed exactly-once guarantee.", - "First harness attempt misclassified native SSH exit255 and stopped the job; its narrower same-run finalizer retry is retained separately from corrected survival acceptance.", - "Original12-test oracle passed before and after; observed owned processes/listener retired; whole-task provider usage remains unknown." + "Three hand-selected cases and six source documents only; not complete historical coverage or an outcome-selected mover dataset.", + "Retrospective publisher claims are distinct from when this runtime observed the document. Local available_ns equals observed_ns; original provider revisions and historical as-known eligibility remain unknown.", + "Distinct company-stock and ETF documentary scopes support ordered META ticker reuse; no permanent identity crosswalk, continuous ownership intervals or cause of the prior quarantined zero-activity bar.", + "Twitter suspension and a Form25 notification do not establish a precise legal delisting instant. Native SEC acceptance text is timezone-naive; its timezone and UTC instant remain unknown.", + "Custom bounded transport/qualification adapters call installed upstream APIs. This receipt is not an upstream project benchmark or general filing parser acceptance.", + "No new Alpaca requests, broker orders, account resets, paid resources, price/outcome scan or empirical strategy result. Native provider comparison is a separate receipt." ], - "path": "evidence/receipts/wsl-transport-recovery-20260920.json" + "path": "blueprints/us-equities/lifecycle-sample/native-receipt.json" }, { - "id": "wsl-document-ingestion-20260920", + "id": "native-linux-zizmor-20260920", + "path": "evidence/receipts/native-linux-zizmor-20260920.json", "kind": "native_cli_e2e", "component_ids": [ - "poppler" + "zizmor" ], - "claim": "Native Poppler26.09.0 built in a clean WSL prefix and passed the frozen3-page,24-cell,8-positive/4-absent document protocol; four extraction/retrieval artifacts exactly match Mac output.", + "claim": "zizmor 1.30.1 installed in an isolated tool environment on the source Linux/WSL host; offline repository workflow scan returned zero findings, while an inert unsafe fixture returned the expected diagnostics and exit code.", "limitations": [ - "Designed born-digital Latin fixture with explicit table geometry; no OCR, inferred layout, general semantic retrieval or broad upstream corpus qualification.", - "Exact source signature, signed package extraction and native dependency checks preceded execution; failed first public-key lookup remains recorded.", - "No global package/service/client change or model/GPU invocation; whole-task provider usage unknown." + "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host.", + "Offline regular-persona static analysis only; no online credential-backed checks or workflow execution.", + "The official uv package-index installation was used. The installed binary was separately hashed; no independent downloaded wheel archive verification was performed in this host follow-up.", + "Earlier Mac and disposable GitHub CI acceptance receipts retain their original host scope.", + "No provider task was run and zizmor supplies no verified lifetime token-savings counter." ], - "path": "evidence/receipts/wsl-document-ingestion-20260920.json" + "host_scope": { + "profile": "source-host-linux-wsl", + "platform": "Linux/WSL", + "identity": "Private source-host identity omitted", + "import_limit": "Recorded source-host Linux/WSL execution only; importing this receipt does not qualify installation or behavior on macOS, VelaNext or another host." + } }, { - "id": "wsl-memory-maintenance-20260920", + "id": "native-memory", + "path": "evidence/receipts/native-memory.json", + "kind": "native_model_e2e", + "component_ids": [ + "ai-memory", + "codex", + "claude-code" + ], + "claim": "A scoped durable page was retrieved by both clients; native lifecycle observations and cross-client handoff recorded.", + "limitations": [ + "Historical bounded acceptance; capture sanitization does not make memory prose trusted.", + "No historical archive backfill or LLM/embedding consolidation pipeline enabled." + ] + }, + { + "id": "native-memory-lifecycle-20260919", + "path": "blueprints/us-equities/memory-lifecycle/receipt.json", "kind": "native_cli_e2e", "component_ids": [ "ai-memory" ], - "claim": "Official Linux ai-memory2.3.2 passed65 synthetic native checks across exact scope, Unicode/reserved paths, restart, upstream HTTP backup and native restore; four owned processes exited0.", + "claim": "A disposable, network-isolated native ai-memory fixture passed 23 lifecycle/routing checks across 31 MCP calls; exact-path TTL behavior and explicit sweep limits retained.", "limitations": [ - "Isolated fresh synthetic store and39 MCP tool calls; not production activation, native-client integration or prior-version migration.", - "Automatic capture, embeddings, generation, watcher and autowire disabled; no OS-confinement claim.", - "Native backup/restore both exit0; complete private logs retained, fixture model calls0 and whole-task provider usage unknown." - ], - "path": "evidence/receipts/wsl-memory-maintenance-20260920.json" + "No live store or client hooks were exercised; this does not certify all current Codex/Claude sessions.", + "Project routing is not authentication or tenant authorization. This fixture deliberately permits creating its two projects.", + "An already expired pinned page is hidden from default query, but exact-path read and include_expired can read it until explicit sweep; TTL alone is not immediate access revocation.", + "as_of selects ingestion-time versions; it is not real-world/market valid time and does not reproduce historical BM25 ranking.", + "Deletion removes current and as_of query results. Git checkpoints and backups can retain historical content; secure erasure was not tested.", + "31 calls are a small deterministic fixture, not a memory retrieval-quality benchmark or an application-level answer evaluation.", + "No provider inference, write-path LLM, semantic embedding, scheduler, secure multi-tenant access, restart durability, or net provider token saving was measured.", + "Tests cover an already-expired timestamp and a future timestamp, not passage of a short TTL across the wall-clock boundary.", + "Linux/WSL Bubblewrap recipe; macOS and Windows native execution require separately accepted isolation.", + "Isolated fixture, not the live memory store or all client hooks.", + "TTL is default-search visibility until sweep, not immediate access revocation.", + "Ingestion-time as_of is not market availability; no retrieval quality or net savings claim." + ] }, { - "id": "token-practice-confirmation-20260920", - "kind": "historical_inventory", + "id": "native-memory-rag-alignment-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "context-mode", - "headroom", - "jcodemunch-mcp" + "ai-memory", + "socraticode", + "qdrant", + "qmd", + "vllm", + "grafana", + "loki" ], - "claim": "Dated direct upstream counter outputs, current release metadata, independent artifact rechecks and reconciled recorded monitoring support explicit baseline selection without claiming causal lifetime provider savings.", + "claim": "Activated upstream local semantic memory with verified model pins and isolated backup restore; corrected native code retrieval scope, regenerated the upstream graph, and observed current memory/RAG metadata through native Loki and Grafana.", "limitations": [ - "Historical source-host observations only; not live acceptance on the reader's PC.", - "Upstream retained-history estimates, exact artifact counts and provider consumption are different quantities and must not be summed.", - "Artifact and client rechecks inspected existing retained inputs and streams; no new model task or reinstall was performed in this confirmation.", - "Public native fields are allowlisted unchanged from private outputs; host paths, process identifiers and account details are omitted.", - "Latest monitoring queries returned no matching observations in their six-hour window; this does not mean zero usage or newly confirmed savings.", - "Latest-release equality was checked only for the four selected token tools; accepted specialist compatibility pins are separate." + "Dated installed/native qualification, not universal SOTA superiority or execution of every upstream test suite.", + "One semantic-memory query and one code-search relevance repair; no broad retrieval benchmark, provider-billed token savings or fresh Claude semantic run.", + "Browser wiki search remains FTS5. LLM consolidation remains disabled. 52 latest pages include one ordinary decision and 51 System pages, not 52 curated decisions.", + "Embedding rows can retain superseded versions: initial native status reported52, later observation54, while latest-page count52 and missing-vector count0 persisted.", + "Graph generation is explicit and its snapshot does not refresh with the index watcher. Search/layout/impact/PNG controls and Qdrant snapshot restore/ANN benchmarks were not functionally qualified here.", + "vLLM0.25.0 remains the verified WSL-compatible embedding runtime; current0.29.0 is not adopted after the retained GPU compatibility failure.", + "Local adapter regression tests and SQLite comparisons are integration evidence, separate from upstream project tests. Private raw pages, database files, identifiers and credentials are not published." ], - "path": "evidence/receipts/token-practice-confirmation-20260920.json" + "path": "evidence/receipts/native-memory-rag-alignment-20260921.json" }, { - "id": "native-token-clean-prefix-20260920", + "id": "native-nautilus-ci-20260920", "kind": "native_cli_e2e", "component_ids": [ - "headroom", - "jcodemunch-mcp" + "nautilus-trader" ], - "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", + "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", "limitations": [ - "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", - "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", - "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", - "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", - "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", - "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", - "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", - "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." + "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", + "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", + "Network namespace and available-interface observations are not measured counts of attempted external transports." ], - "path": "evidence/receipts/native-token-clean-prefix-20260920.json" + "path": "evidence/receipts/native-nautilus-ci-20260920.json" }, { - "id": "current-session-observation-20260920", + "id": "native-nautilus-v2-20260920", "kind": "native_cli_e2e", "component_ids": [ - "agentsview", - "ai-memory", - "alertmanager", - "ccusage", - "claude-hud", - "context-mode", - "grafana", - "headroom", - "jcodemunch-mcp", - "loki", - "mcporter", - "ntfy", - "opentelemetry-collector-contrib", - "otel-tui", - "prometheus", - "rtk", - "serena", - "socraticode" + "nautilus-trader" ], - "claim": "The recorded Desktop parent task used loaded MCP tools and explicit native commands; independent exact-parent Loki events and retained hook/RTK metadata confirm bounded live observation, while the older Context Mode connection and task-level metrics attribution retain explicit limits.", + "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", "limitations": [ - "Single dated Desktop parent task only; these results do not mean every selected repository is continuously active or certify another PC.", - "Native CLI statistics prove the queried upstream command is responding; they do not prove automatic prompt compression or a new complete functional trial for Headroom and jCodeMunch.", - "The existing directly loaded Context Mode connection rejects project-file reads; the separate supported native bridge succeeded without restarting this task or widening access policy.", - "Some ai-memory lifecycle bodies identify outer exec wrappers as unknown; Context Mode event-row and metadata counters differ. Neither is a complete per-tool native transcript.", - "Exact-parent Loki delivery is confirmed. Current Prometheus/Loki task consumption equality and exact causal lifetime provider tokens saved remain unestablished.", - "Root tool-return hashes and metadata timestamps corroborate delivery and outcomes within their stated boundaries; no public raw prompts, account identifiers or task ID are included.", - "Native estimates include verification operations, overlap across scopes and have retention limits. Response-consumption examples, cache subsets and native savings estimates must not be added.", - "Loki initially returned503 before returning200; the failure is retained. Optional viewers and separate native Claude/Windows profiles are not relabeled as active in this Desktop task." + "Release candidate, not production/live-capital acceptance.", + "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", + "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", + "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", + "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", + "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", + "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." ], - "path": "evidence/receipts/current-session-observation-20260920.json" + "path": "evidence/receipts/native-nautilus-v2-20260920.json" }, { - "id": "foundation-native-20260920", + "id": "native-observability", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "qmd", - "qdrant", - "vllm", - "socraticode", - "serena", - "context-mode", - "jcodemunch-mcp", - "rtk", - "headroom", - "repomix", - "toon", "codex", "claude-code", + "agent-browser", "opentelemetry-collector-contrib", "prometheus", "loki", - "omniroute" + "grafana", + "alertmanager", + "ntfy" ], - "claim": "The installed memory/RAG foundation was checked and Serena language coverage repaired; a clean pinned Linux OmniRoute installation passed scoped service, persistence and plaintext restore checks. Native client retrieval and gateway inference are reported separately, including failed compression fidelity and account-quota results.", + "claim": "Both native clients completed real tasks with collected usage; six native observation services, SDK result ingestion, dashboard, retained queries and local firing/resolved notifications were exercised.", "limitations": [ - "Dated Linux/WSL foundation acceptance is not a universal SOTA ranking, proof that every tool runs in this Desktop task, or acceptance on another PC.", - "OmniRoute gateway inference is not accepted in this wave: Claude returned429 and the connected Codex accounts reached their configured quota threshold. No repeated quota retries or model substitutions were made.", - "OmniRoute3.8.50 native encrypted restore ignores encrypted .enc files. Independent decryption succeeded; only the separate native plaintext restore path was proved.", - "RTK/lite compression previews failed preservation of a required value. Exact session-dedup passed a repeated-history preview; global router compression remains disabled pending successful real inference comparison.", - "Native estimates, overlapping lifetime/project counters, preview token differences, response cache counters and provider consumption are distinct and must not be added.", - "The already-loaded Desktop Serena connection does not reload language settings automatically. Fresh native server contexts picked up the Python/TypeScript repair.", - "No exact causal lifetime provider tokens saved is established. Provider quotas and metadata limitations remain explicit.", - "Claude's required answer content passed, but final text was not JSON-only. Native Codex usage matched Loki and Prometheus; the initial native Claude usage matched all six Loki requests while Prometheus missed the first two requests.", - "A separate fresh Claude run waited for upstream telemetry initialization and matched native/Loki/Prometheus consumption35537 in all four categories. This establishes the bounded observed-run recipe, not retrospective repair of the first run or a default client change." + "Existing Desktop process was not restarted or hot-reloaded; fresh Desktop discovery/export requires its own observed acceptance.", + "SDK native turn histogram was not observed, including a bounded flush experiment. Separate file-receiver accounting imported bounded summaries of two completed native SDK receipts; no further model inference was run after adding the publication helper.", + "Text selection counts are exact for stored artifacts and o200k_base, not provider billing or net complete-task token savings.", + "Single-host user services depend on the WSL user manager; no high availability, off-host backup, external notification delivery or exactly-once financial ledger.", + "Privacy filters cover tested fields and trusted native instrumentation, not arbitrary-content DLP. Private correlation IDs remain local.", + "Broker/data entitlement, strategy/risk specifications and deterministic execution/recovery acceptance remain unresolved. No live trading or paid hosted inference was enabled." ], - "path": "evidence/receipts/foundation-native-20260920.json" + "path": "observability/receipt.json" }, { - "id": "codex-session-environment-20260920", - "kind": "native_cli_e2e", + "id": "native-observability-followup", + "kind": "native_model_e2e", "component_ids": [ "codex", "context-mode", - "jcodemunch-mcp", - "serena", "ai-memory", - "socraticode" + "socraticode", + "agent-browser", + "opentelemetry-collector-contrib", + "prometheus", + "loki", + "grafana" ], - "claim": "A trusted Linux project now passes its resolved native executable PATH to Codex shell commands and its four local MCP servers. A fresh native Codex app-server loaded all five selected MCP servers, resolved all fourteen checked context-tool commands and completed five read-only MCP calls without starting a model turn.", + "claim": "A fresh native Astra SDK task used Context Mode and exported a turn histogram exactly matching its automatically published result receipt; direct Desktop memory/RAG/bridge operations and native WSL host observations also worked.", "limitations": [ - "The already-running Desktop connection was not restarted or modified through private IPC. Fresh native acceptance does not prove it reloaded; use the supported MCP Restart control or a fresh task.", - "The fourteen command checks establish executable discovery, not fourteen new install/use/lifecycle tests. Other functional acceptance remains dated and separately scoped.", - "The same-process jCodeMunch increment is a bytes/4 estimate including this validation call; it is not provider-token savings. Do not add session and retained values.", - "No fake global session identifier was introduced. Shared Context Mode parent-PID statistics and unscoped Desktop Prometheus series remain unattributed.", - "OmniRoute stays optional with compression off. Account quotas, rejected compression fidelity and unsupported encrypted restore are unaffected.", - "Local private account/configuration files, command search paths and raw MCP inventories are not portable artifacts. Resolve the target host's paths and use its own native sign-in.", - "Zero provider turns refers to this isolated configuration/MCP acceptance harness, not the surrounding authoring conversation." + "The current Desktop parent has zero correlated telemetry records and no directly exposed Context Mode tools. Its native bridge and direct memory/RAG calls work; native child proof is separate.", + "Native analytics.enabled changed from unset to true only in the two selected user homes. Explicit local OTLP metrics are selected; separate first-party analytics events retain the previous native unset behavior. This is not an all-telemetry-local claim and explicit opt-outs must not be overwritten.", + "The retained Context Mode bridge reports zero estimated tokens saved. The earlier188769-to500 artifact comparison is separate and not provider billing or complete-task savings.", + "WSL host metrics cover CPU, memory, load and only the virtual root filesystem. They do not measure Windows physical backing-disk capacity.", + "Absent failure-counter series and empty unknown-usage queries remain unknown/no matching data. A receipt-based view does not identify tasks that never emitted a receipt.", + "The receipt spool has no automatic expiry; exactly-once accounting, full-disk recovery, external backup/paging, continuous host availability and broker/trading acceptance remain outside this proof." ], - "path": "evidence/receipts/codex-session-environment-20260920.json" + "path": "observability/followup-receipt.json" }, { - "id": "codex-desktop-live-20260920", + "id": "native-offhost-app-state-20260920", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "context-mode", - "jcodemunch-mcp", - "serena", "ai-memory", - "socraticode", - "rtk", - "headroom", - "qmd", - "loki", - "prometheus" + "qdrant", + "restic" ], - "claim": "The restarted Desktop task returned successful results through five configured MCP servers, verified current shell PATH and exact source retrieval, and matched seven fresh native/Loki usage records. A missing Desktop plugin cache was restored with upstream plugin add.", + "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", "limitations": [ - "All24topic repositories remain classified in the handbook; optional tools are not automatically invoked.", - "Tools without native savings ledgers remain unavailable, not zero.", - "A correct install does not establish superiority over a known-source baseline or exact provider tokens avoided.", - "This live check creates provider consumption in the surrounding task; no extra synthetic provider trial was launched.", - "Private config, paths, conversation text, identities and full responses are excluded from public artifacts.", - "Mixed historical and Claude-labelled aggregates despite codex platform; do not infer current-task tokens, money saved or longer sessions from these returned totals.", - "Six restored definitions are not proof that every lifecycle hook fired in this ongoing task.", - "No fresh Prometheus turn sample in the selected window; no three-way observation join." + "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", + "Sequential native application snapshots do not establish an atomic cross-application transaction.", + "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", + "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", + "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", + "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", + "No model/provider/broker calls or causal token/cost savings measurement." ], - "path": "evidence/receipts/codex-desktop-live-20260920.json" + "path": "evidence/receipts/native-offhost-app-state-20260920.json" }, { - "id": "native-session-defaults-20260920", + "id": "native-offhost-restic-20260920", "kind": "native_cli_e2e", + "component_ids": [ + "restic" + ], + "claim": "A fresh GitHub-hosted runner passed seven unchanged upstream restic tests, then checked and restored two exact synthetic snapshots using a password delivered separately from the published ciphertext; independent review reconciled the returned outputs, file manifests and platform record.", + "limitations": [ + "Synthetic byte/POSIX-mode recovery only, not ai-memory/Qdrant application-state recovery, reboot, production disaster recovery, lost-password recovery or provider savings.", + "The ciphertext and separate protected secret share a GitHub administrative account; account-loss recovery and independent trust domains are not established.", + "The seven selected upstream tests are a focused subset, not the entire upstream suite. Our transfer fixture and complete-file oracle are explicitly local integration checks.", + "UID/GID restoration, timestamps, ACL/xattrs, sparse files, links, Windows filesystems and long-term storage availability were not qualified.", + "Interface inventory is unavailable; distinct native network/mount namespaces and frozen read-only bindings are the observed isolation properties.", + "Two restore banners replace the source username with $SOURCE_USER; their original raw hashes cannot be recomputed from the sanitized public text. Other declared stream hashes were independently checked." + ], + "path": "evidence/receipts/native-offhost-restic-20260920.json" + }, + { + "path": "adoption/paired/receipt.json", + "id": "native-paired-adoption-20260919", + "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", - "ai-memory", - "context-mode", - "rtk", - "qmd" + "duckdb", + "dagu", + "lean", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", + "claim": "After native sign-in restored readiness, the freshly reproduced SDK completed a real LEAN backtest\u2192Dagu\u2192DuckDB\u2192GPT-6 Astra\u2192Claude Opus 5 prepared-packet research workflow; both native reports passed structural citation/value/unit/scope checks and the accepted Astra report was bound into Claude's prompt by verified hashes.", "limitations": [ - "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", - "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", - "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", - "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", - "Claude startup events join four starts to four completions but do not identify individual configured commands.", - "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", - "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." + "This validates a bounded historical simulation research workflow on the authoring host, not a profitable strategy, current market source, broker execution or unattended production service.", + "The two reported model tasks used no model tools. Their native hooks and telemetry remain separate evidence; this does not repeat every MCP, memory or GPU-RAG behavior.", + "Selected-text reduction is lossy task-specific filtering, not equal-information compression or causal provider savings. Complete coordinator/research-worker usage is outside these native worker counters.", + "Native configured-model checks and provider-returned terminal usage are not independent per-request model attestation.", + "The complete native streams and original LEAN output remain private; public structured reports and selected hashes do not constitute independent provider attestation.", + "Initial authentication failure is preserved separately; native sign-in restored readiness without copying authentication stores or changing account routes.", + "Structural numeric/citation/scope checks passed, but Claude identified wording/citation weaknesses in Astra's narrative. Model output is not treated as authoritative strategy or financial advice.", + "New hosts must recreate selected runtime prerequisites and native sign-in; historical receipts do not transfer live acceptance." + ] + }, + { + "path": "blueprints/us-equities/point-in-time/receipt.json", + "id": "native-point-in-time-contract-20260919", + "kind": "native_cli_e2e", + "component_ids": [ + "duckdb" + ], + "claim": "DuckDB 1.5.5 materialized and selected a synthetic temporal snapshot; late revisions, universe state, feed/adjustment scope and pinned snapshot integrity were exercised through native Python SDK/SQL commands.", + "limitations": [ + "Synthetic observations only; no entitled or accepted market dataset, SEC download, vendor API, model or broker call occurred.", + "Availability timestamps and evidence references are declarations, not independently authenticated vendor publication evidence.", + "Local snapshot ingestion time is separate from source publication and original capture time.", + "Scope is realized observations and effective universe state; it does not model every corporate action, event forecast, symbol mapping or delisting history.", + "Hash checks require the caller to retain a trusted manifest digest independently; local file permissions are not immutable storage or off-host recovery." + ] + }, + { + "id": "native-progress-capacity-20260921", + "kind": "native_cli_e2e", + "component_ids": [ + "loki", + "dagu" ], - "path": "evidence/receipts/native-session-defaults-20260920.json" + "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", + "limitations": [ + "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", + "No client restart, service restart or physical reboot was performed or verified.", + "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", + "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", + "No live provider inference, account change, new dependency or upstream version change for this repair." + ], + "path": "observability/grand-dashboard/capacity-recovery-20260921.json" }, { - "id": "native-token-ci-local-20260920", + "id": "native-quality-defaults-20260920", "kind": "native_cli_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "codex", + "claude-code" ], - "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", + "claim": "Supported persistent effort defaults were aligned with the user's quality preference: native Codex now saves ultra, matching Desktop; Claude saves xhigh. Native config/read returned ultra for both Codex homes with the selected project's layers. A short acceptance and independent-review rule is saved in all three global instruction files.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" + "Configuration and schema acceptance only; no model turn, comparative quality benchmark, token-saving or full workflow E2E claim.", + "Saved defaults apply to fresh sessions; already-open sessions may retain their earlier effort. Native workers can resolve effort differently through roles and overrides.", + "Claude max is available as a session option, not a valid persisted effortLevel. Adaptive thinking stays at its native enabled default.", + "Claude doctor retains the known intentional whitespace warning for query/document embedding prefixes. No other configuration was changed to suppress it.", + "The official SDK config/read observer is a local integration that selects safe fields. It is not an upstream test suite and does not execute a model task." ], - "path": "evidence/receipts/native-token-ci-local-20260920.json" + "path": "evidence/receipts/native-quality-defaults-20260920.json" }, { - "id": "native-token-ci-github-20260920", - "kind": "native_cli_e2e", + "id": "native-rag", + "path": "evidence/receipts/native-rag.json", + "kind": "native_model_e2e", "component_ids": [ - "rtk", - "qmd", - "repomix", - "toon" + "codex", + "claude-code", + "socraticode", + "qdrant", + "vllm", + "huggingface-hub-native" ], - "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", + "claim": "Both native clients retrieved correct project code; real local embeddings and automatic add/update/delete persisted in vector store.", "limitations": [ - "Not a new-PC, native Codex/Claude, GPU or provider acceptance", - "Top-level package pins; npm transitive ranges resolve at installation", - "RTK counters are fixture-local estimates, not provider savings", - "No token-saving requirement: fidelity may need the larger representation", - "Retained text replaces local paths; raw byte hashes precede sanitization" - ], - "path": "evidence/receipts/native-token-ci-github-20260920.json" + "Historical execution on the documented Linux/WSL GPU host; not repeated by CI.", + "Provider counters are usage, not savings. Model/service restart acceptance is recorded separately." + ] }, { - "id": "native-tavily-cli-20260920", - "kind": "native_cli_e2e", + "id": "native-research-efficiency-20260920", + "kind": "native_model_e2e", "component_ids": [ - "tavily-cli", "codex", - "claude-code" + "claude-code", + "qmd" ], - "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", + "claim": "Eight fresh native answer invocations yielded four within-provider task comparisons. All eight semantic grades pass; six answers meet the shared structural and word protocol. Numeric differences are observed sample differences only.", "limitations": [ - "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", - "Claude global skill listing is not a Claude model-turn execution of every skill.", - "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", - "Search/Extract results do not independently establish their source claims or a complete research deliverable.", - "No native lifetime or exact provider-token savings counter is established.", - "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." + "Only two fixed tasks per provider; no confidence intervals, provider ranking, causal attribution or general savings claim.", + "Full corpus is eight selected public project documents, not a comprehensive repository or autonomous research workload.", + "Prompts use identical questions/instructions and verbatim common source IDs; different document context lengths are the intended treatment.", + "QMD lexical selection was fixed before answers; task B focused omits the separate retrieval-evaluation document, and rubric deductions remain recorded.", + "Native default context, system policy, hooks and provider caches are uncontrolled; fresh sessions do not imply cold caches.", + "The two Claude full-context answers fail the word protocol, so their numeric differences are not clean protocol-passing matched comparisons.", + "Codex task B focused score is 9.5 versus full 10 despite both clearing the predeclared threshold.", + "Codex zero-tools enforcement is requested/audited with read-only and deny-all settings, weaker than hard prevention of every MCP call.", + "Local supervision does not prove provider-side cancellation; no run timed out.", + "This session uses these hosted research worker invocations; it does not establish token savings for the enclosing Desktop conversation or whole ecosystem." ], - "path": "evidence/receipts/native-tavily-cli-20260920.json" + "path": "blueprints/us-equities/research-efficiency/native-receipt.json" }, { - "id": "native-nautilus-v2-20260920", - "kind": "native_cli_e2e", + "id": "native-research-runtime-20260919", + "kind": "native_model_e2e", "component_ids": [ - "nautilus-trader" + "claude-code", + "dagu", + "lean", + "duckdb", + "opentelemetry-collector-contrib", + "prometheus", + "loki" ], - "claim": "Pinned NautilusTrader2.0.0rc5 unchanged upstream synthetic EURUSD quickstart passed two isolated offline runs with exact cash reconciliation, repeatable economic reports and original cleanup; two empty-report attempts remain retained.", + "claim": "A fresh native LEAN simulation fed a successful Dagu packet/Parquet workflow and a standalone native Claude Opus 5 cited report; native usage matched Prometheus and Loki. The new paired Astra-to-Claude run remains allowance-blocked.", "limitations": [ - "Release candidate, not production/live-capital acceptance.", - "Synthetic FX, not historical US-equity, corporate-action, PIT/universe or historical-mover acceptance.", - "No IBKR Gateway/TWS authentication, data entitlement, adapter connectivity or Alpaca integration acceptance.", - "No broker-connected paper execution, fault-injection, ambiguous-submission recovery or persisted-order restart rehearsal.", - "Account CSV is byte-identical; fill UUIDs, position episode UUID suffixes and nested fill event UUIDs differ. Reproducibility comparison normalizes only those validated UUIDv4 fields, retains every other CSV field and raw files.", - "Native analyzer PnL is floating point430.9999999998836; decimal reconciliation from all902exported fills and451positions equals431.00USD. This synthetic result is not alpha or an investment claim.", - "No global defaults, LEAN installation, repository files or shared model routes changed. Isolated package installation retained for reuse." + "Historical bundled LEAN simulation, not a validated strategy, SEC dataset, broker fill or trading authorization.", + "The new paired Astra-to-Claude workflow is implemented and native-schema-validated, but native Linux Codex allowance was exhausted; no new Astra inference was submitted.", + "SEC acquisition returned HTTP 403. No ready live SEC source packet was obtained.", + "Report checks establish citation identifiers, exact numerical values, units, cutoff and research scope, not complete prose entailment or investment quality.", + "Selected-text reduction is lossy question-specific retrieval measured by o200k_base; net provider savings and complete coordinator/worker task usage were not measured.", + "Local manual Dagu hosting is not continuous off-host operation. Raw private stdout/stderr are time-limited but not byte-capped.", + "Native account homes and hooks remain accessible. Environment filtering and final tool-result audits are not a general operating-system sandbox.", + "Telemetry correlation uses a unique process instance, timestamp and exact usage. Native session identifiers are not retained in the public receipt." ], - "path": "evidence/receipts/native-nautilus-v2-20260920.json" + "path": "blueprints/us-equities/research-runtime/receipt.json" }, { - "id": "native-harness-defaults-20260920", - "kind": "artifact_measurement", + "id": "native-returned-results-20260921", + "kind": "native_cli_e2e", "component_ids": [ "codex", - "claude-code" + "claude-code", + "rtk", + "context-mode", + "qmd", + "serena", + "ai-memory", + "socraticode", + "qdrant", + "agentsview", + "grafana", + "loki", + "prometheus", + "dagu", + "ntfy", + "omniroute", + "agent-browser", + "promptfoo", + "headroom", + "jcodemunch-mcp" ], - "claim": "One short native-harness policy block is persisted in both Codex global instruction homes and native Claude global instructions; original bytes are preserved as a prefix and the current task instruction feed contains the block.", + "claim": "Fresh native Codex and Claude each returned five selected upstream tool results in this Desktop turn. Independent stream reconciliation verified all ten calls, returned bytes, provider usage and RTK measurements. Thirteen adopted dashboard views exposed useful scoped data; a subsequent direct Desktop Serena invocation exposed its current live dashboard. The local report embeds verified downloadable results and preserves the expired child URL failure alongside recovery.", "limitations": [ - "Saved instruction bytes are not proof that every future model decision will follow them.", - "This wave leaves existing native account, model, permissions, shell PATH and Desktop WSL settings unchanged; earlier process checks retain their separate scope.", - "The daily maintenance automation is scheduled; no scheduled execution or reboot recovery is claimed by its creation." + "Selected current-host native CLI/MCP/API/browser integration checks, not all upstream test suites, every selected component running this session, physical reboot, or another-PC acceptance.", + "The native Codex and Claude executions are child sessions launched in this Desktop turn. Their usage excludes this coordinator and other workers; actual input/cache/output counts are not causal provider savings.", + "Each RTK artifact comparison removes 359 tokens (537 to 178, o200k_base), preserving six commit identities while omitting other metadata. Each native RTK counter separately increases by 17 estimated tokens. These measures must not be added.", + "Context Mode returned reports have session-age/model labels that do not establish exclusive attribution to these short native children. Its direct Desktop result and retained store estimates have separate scopes. Estimates and illustrative prices are not provider bills.", + "Serena URLs belong to individual MCP processes. The expired child URL failed; the current Desktop connection returned a different working URL with active project/configuration data. Usage statistics were empty. No stable port, persistence beyond the owning process, restart or new installation is claimed.", + "Memory page count includes collapsed system pages; QMD intentionally has no embedded vectors. Archives, graph and Promptfoo reports are retained snapshots, not new model evaluations or automatic ingestion.", + "OmniRoute counts apply only to traffic through that gateway. Claude telemetry has historical range series but no instant series at observation. No new inference, workflow runs, or notifications were created to populate dashboards.", + "Local browser/report checks validate this integration. Reporter unit tests and repository tests are local checks, not unchanged upstream end-to-end tests.", + "Public attachments contain explicit safe projections and selected exact safe outputs, with private-original hash bindings. Full session streams, prompts, personal paths and private application content remain local." ], - "path": "evidence/receipts/native-harness-defaults-20260920.json" + "path": "evidence/receipts/native-returned-results-20260921.json" }, { - "id": "native-worker-recovery-20260920", + "id": "native-runtime-role-resolution-20260930", "kind": "native_model_e2e", "component_ids": [ + "omniroute", "claude-code" ], - "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", + "claim": "One host installed separately versioned OpenHands CLI1.16.0/SDK1.50.1 and DeepAgents0.7.21 candidates through native supported interfaces. CLI108 and final SDK184 unchanged upstream tests passed; DeepAgents361 passed with1 expected failure in its separate upstream-lock environment. Actual OmniRoute Sol-Max requests passed one OpenHands native LLM exact-output round-trip and bounded DeepAgents selected-skill/single-specialist research, saved-context repair and fresh-process SQLite continuation. All results are scoped, not a universal framework winner or global default promotion.", "limitations": [ - "One synthetic local fixture and one physical WSL host, not arbitrary application state.", - "Actual native child identities and paths remain private; hashes bind retained streams.", - "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", - "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", - "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", - "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", - "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." + "CLI SDK1.21 Jinja cache hard-codes real user home; strict cache isolation remains held.", + "Final SDK native configuration/tests exercise skills/plugins/MCP/condenser interfaces; production MCP, full Conversation/condenser/provider execution and optional extensions are not qualified by them.", + "Original DeepAgents24-step attempt failed; one changed32-step saved-context repair passed. No arbitrary interrupted-tool replay, OS confinement or comparative winner is qualified.", + "Complete provider billing/backend identity and whole-task token savings remain unknown; cached/reasoning counters are subsets.", + "Native Claude Opus/Max peer timed out180s exit124 without a verdict; later peer turns reached account usage limits. Completed earlier reviews are preserved; no new acknowledgement/approval is claimed.", + "Original full output stays private with exact hashes; public excerpts replace private paths and omit raw conversations, marker values, credentials and flow identifiers.", + "Exact executed sources are archived. Initial whitespace/comment cleanup had identical ASTs; the current worker subsequently adopts native secret-aware serialization after CodeQL, verified by native fixture and fresh saved-state checks. No new provider run is claimed." ], - "path": "evidence/receipts/native-worker-recovery-20260920.json" + "path": "evidence/receipts/native-runtime-role-resolution-20260930.json" }, { - "id": "foundation-catalog-ui-20260920", - "kind": "artifact_measurement", + "id": "native-sandbox-network-20260920", + "path": "evidence/receipts/native-sandbox-network-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "agent-browser" + "sandbox-runtime" ], - "claim": "Independent native-browser inspection of the Foundation/Trading catalog passed capability filtering, source navigation, keyboard interaction, scoped evidence rendering and desktop/mobile layout with no page errors.", + "claim": "Native sandbox-runtime 0.0.77 allowed one configured loopback HTTP request and blocked both explicit-deny and empty-allowlist requests before they reached the owned fixture server.", "limitations": [ - "Source pin/publication URLs pending parent final source commit and regeneration.", - "No provider/broker execution or broad regression rerun performed.", - "Previously reported101 focused tests are coordinator evidence, not rerun during UI review." - ], - "path": "evidence/receipts/foundation-catalog-ui-20260920.json" + "HTTP proxy path tested on this Linux/WSL host", + "Immediate client startup can race the upstream local proxy; the tested command uses bounded connection-refused retries", + "Does not establish TLS, SOCKS, DNS rebinding, IPv6, remote-host, or general sandbox-escape coverage", + "Bounded local proxy-policy acceptance, not a full security certification or proof that every native client command is sandboxed." + ] }, { - "id": "native-worker-containment-20260920", + "id": "native-sdk-acceptance-20261002", "kind": "native_cli_e2e", "component_ids": [ - "systemd", + "codex", "claude-code" ], - "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", + "claim": "Actual Claude SDK task failed its independent oracle despite successful protocol completion; a separate informed Codex SDK repair passed all four unchanged cases. Unchanged Claude and OpenHands default source suites passed within recorded skip, warning and environment limits.", "limitations": [ - "Deterministic cgroup proof is not successful native child crash/resume acceptance.", - "Earlier same-child continuation still required explicit direct descendant cleanup.", - "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." + "Two different model tasks and source-test suites have different evidence scopes; this is not a model-quality or token-efficiency comparison, global SOTA winner claim or full foundation closure.", + "Claude original useful-task acceptance remains FAILED. Codex passes only the four-case informed repair; its requested model/effort are bound, but resolved model/provider identity and billing cost were not returned.", + "Coordinator observed invocation, native exits and process samples. Independent reviewers checked retained source/artifact/outcome bindings without rerunning; hash equality alone is not execution provenance.", + "Public attachments are declared projections, exact resulting candidates and selected native output. Complete permitted streams remain private; raw conversations, auth/session metadata and personal paths are not published.", + "Claude default source suite has six skips, with five collection identities inferred from source/dependencies. OpenHands retains seven optional ToolShield skips, 12 xfails, 83 warnings, default stress/ACP-live exclusions and a preserved failed environment attempt; exact fetched model-map bytes were not retained.", + "OpenHands is supplemental source-test evidence, not a new adopted stack component. Its FACTS provider task remains unrun in this lane; Codex default source-suite execution remains with its separate owner.", + "Researcher/reviewer roles, resume/recovery, selected MCP, generation permission-negative tests, complete target lifecycle and target token routing remain open. Exact before/after process-name samples do not prove complete descendant cleanup.", + "Historical Claude task binding is CLI2.1.287. Current release2.1.288 reconciliation remains with the configuration owner and cannot retroactively change these captures." ], - "path": "evidence/receipts/native-worker-containment-20260920.json" + "path": "evidence/receipts/native-sdk-acceptance-20261002.json" }, { - "id": "native-nautilus-ci-20260920", + "id": "native-sdk-role-mcp-followup-20261002", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "claude-code" ], - "claim": "A fresh GitHub Ubuntu24.04 runner installed five exact distributions, verified the downloaded engine wheel and unchanged upstream source, and passed two mandatory-offline native engine replays with identical economic reports and original cleanup.", + "claim": "Retained Claude SDK evidence supports minimal inline MCP callback/terminal assertions with synthetic controls and one native deny-rule pair with a disarmed-rule control; the reviewer case completed without a discriminating control, and the researcher case is controlled for missing findings only. Prior researcher failures remain FAIL and complete role qualification remains incomplete.", "limitations": [ - "Synthetic EUR/USD engine fixture only; no historical equities, broker order, account entitlement, strategy-quality or provider token-saving acceptance.", - "GitHub raw artifacts expire after14days; retained local copies and this public sanitized result/hash manifest preserve the dated evidence.", - "Network namespace and available-interface observations are not measured counts of attempted external transports." + "Retained independent case ACCEPT verdicts are observations, not qualified role acceptance. Reviewer negative grading has no discriminating control; the original researcher FAIL controls missing findings only, not wrong facts/citations or attribution.", + "Synthetic MCP0/1/1 controls discriminate callback presence and terminal success only. The separate native armed0/disarmed1 pair supports one actual deny-rule observation; definition visibility unknown, no can_use_tool callback configured.", + "Earlier query timestamps unknown; deny-pair UTC intervals captured. Counters retain separate scopes; interrupted whole-query usage/cost unknown. No billed-cost or efficiency claim.", + "Selected QMD/Serena, recovery, containment, complete lifecycle and whole-host qualification remain open; process samples are bounded and staging is not managed-upgrade acceptance.", + "Sanitized projections only; private original hashes, failed cases and corrections retained. The projection step ran no new provider/test/control execution and made no shared edits; registration in manifests/evidence.json is separate from that step." ], - "path": "evidence/receipts/native-nautilus-ci-20260920.json" + "path": "evidence/receipts/native-sdk-role-mcp-followup-20261002.json" }, { - "id": "native-catalog-retrieval-20260920", + "id": "native-sec-access-resolution-20260919", "kind": "native_cli_e2e", "component_ids": [ - "qmd" + "edgartools" ], - "claim": "Repaired the named local catalog index to the maintained checkout, added two explicit handbook collections and retrieved both intended sources first with exact pinned-source bodies.", + "claim": "Contact-corrected native EdgarTools archive acquisition completed with371 index entries (360 unique accessions). A separate bounded provenance adapter acquired the real daily index and five headers; corrected native-format parsing and hash-verified packets reject all five at the historical cutoff and qualify all five only after current local observation.", "limitations": [ - "This is a source-host index repair and two selected lexical queries, not arbitrary corpus recall or another PC acceptance.", - "The earlier twelve-query benchmark and its four misses remain separate and unchanged.", - "No embedding model was downloaded, no provider turn was run and no token-savings claim is made.", - "The public receipt omits personal filesystem paths; original command outputs and configuration backup remain private." + "Access now succeeds on this host for the tested paths. Contact changed and time elapsed, so the email alone is not established as the cause of recovery or a guarantee of future access.", + "The cohort contains 371 CIK/accession entries and 360 unique accession identifiers; shared co-filer rows are retained separately.", + "The five headers are a deterministic acquisition sample, not a historical all-equities universe, validated strategy or complete narrative filing corpus.", + "2020 acceptance timestamps do not imply this runtime observed the documents then. All five remain ineligible at the historical cutoff; dissemination lag and historical as-known data remain separate requirements.", + "The existing acquisition receipt retains its original quarantined derived events. Later packets re-hash the same immutable bytes and derive corrected header results offline; no additional header download was used for that correction.", + "The source/provenance bridge is custom repository code; native upstream get_filings/to_context acceptance is separately identified.", + "EdgarTools dependencies remain version-pinned rather than wheel-hash-locked. Other hosts need their own native acceptance.", + "No account login, broker order, paid resource, support message or additional native model acceptance run was required. Task-agent inference and net provider token savings are not quantified." ], - "path": "evidence/receipts/native-catalog-retrieval-20260920.json" + "path": "blueprints/us-equities/catalyst-provenance/access-resolution.json" }, { - "id": "native-tavily-session-20260920", + "id": "native-sec-new-host-20260924", "kind": "native_cli_e2e", "component_ids": [ - "tavily-cli" + "edgartools" ], - "claim": "The current Desktop task received eight Tavily skill entries, loaded the Search/Extract skills, ran both upstream commands and extracted the official IBKR adapter prerequisites.", + "claim": "New-host observation on the WSL2 Threadripper workstation: native EdgarTools 5.58.0, in an isolated runtime whose installed packages equal requirements.lock, completed the bounded get_filings request for 2020-03-02 with one SEC archive GET answered 200, 371 8-K/8-K/A index rows and the same five selected CIK/accession rows as the 2026-09-19 receipt. It adds a host; it does not replace the 2026-09-19 receipt.", "limitations": [ - "Host-supplied active-task skill discovery is distinct from the prior fresh native-process probes. Only Search and Extract were exercised in this task.", - "The broad search returned three official IBKR sources but missed the intended Nautilus adapter guide; direct known-URL extraction supplied the needed evidence.", - "Extracted current documentation is a source check, not an executed broker connection or version-pinned adapter behavior.", - "No provider usage, per-skill performance comparison or lifetime token-saving counter is claimed." + "One native upstream metadata request (the quarterly form index) on one host at one time. The provenance adapter (catalyst.py acquire and packet) was not run on this host, so no daily index, header bytes or temporal packets are observed here.", + "Unique-accession counts, forms breakdown and the complete compressed source's bytes and gzip validation were measured in 2026-09-19 and are not re-measured by this output, which records only the cohort count and five selected rows.", + "The exact command line was not retained. The output's keys and fields match native_edgar.py's native_network receipt, but that the file came from this repository's native_edgar.py is inferred from its schema, not recorded.", + "The runtime package check (installed packages equal requirements.lock) was made when this receipt was written, after the request; the request-time environment is inferred from it.", + "The contact identity is private. Its unsalted SHA-256 in the private output is withheld from the committed copy, because a guessed contact could be confirmed against it; a matching contact between the two hosts is therefore not shown.", + "Successful access on this host does not establish historical availability, as-known data or a strategy result; 2020 filing dates do not imply this runtime observed the filings then.", + "Not a host_receipts.py receipt: that recorder executes its own commands, so it cannot import an earlier output. No platform_status, landscape verdict or trading gate changes because of this file." ], - "path": "evidence/receipts/native-tavily-session-20260920.json" + "path": "blueprints/us-equities/catalyst-provenance/new-host-native-network-20260924.json", + "host_scope": "WSL2 Threadripper workstation (linux-wsl2-x86_64); new-host observation alongside, not replacing, native-sec-access-resolution-20260919" }, { - "id": "native-worker-cgroup-20260920", - "kind": "native_model_e2e", + "id": "native-security-identity-20260920", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "systemd" + "alpaca-py", + "duckdb" ], - "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", + "claim": "One saved native Alpaca-py continuation completed the four FB/META query chains across three historical sessions. Eight total HTTP200 responses retain10 distinct query observations (9 locally qualified,1 quarantined) plus1 current asset snapshot. Native DuckDB preserves original/derived source anchors and exact nanosecond observation cutoffs; historical2022 and just-before-observation selections return0.", "limitations": [ - "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", - "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", - "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", - "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", - "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." + "Three June2022 sessions and four FB/META query namespaces only; no historical or inactive/delisted market-wide universe.", + "Equal mapped prices do not establish a permanent security identifier. Current asset metadata cannot define historical validity or tradability.", + "The reported-zero-activity row conflicts with documented stock aggregation. Cause unknown; local quarantine preserves exact source zeros without imputation.", + "Query completion across separately observed pages does not establish an atomic provider snapshot or provider revision order.", + "Conservative availability equals local observation time. Original publication, source revisions and historical security validity remain unknown; this is not a historical strategy decision dataset.", + "Positive activity fields only qualify an observation under the stated local numeric policy; they do not establish market coverage, execution eligibility, fills or alpha.", + "No account, position, order, reset, paid resource, entitlement upgrade or real-time capability test in this wave.", + "No new model-inference task or causal whole-task token-savings experiment. Existing Codex/Claude/context/memory receipts retain their own dates and scope." ], - "path": "evidence/receipts/native-worker-cgroup-20260920.json" + "path": "blueprints/us-equities/identity-readiness/native-receipt.json" }, { "id": "native-service-reboot-20260920", @@ -2393,888 +2739,698 @@ "path": "evidence/receipts/native-service-reboot-20260920.json" }, { - "id": "native-offhost-app-state-20260920", + "id": "native-session-defaults-20260920", "kind": "native_cli_e2e", "component_ids": [ + "codex", + "claude-code", "ai-memory", - "qdrant", - "restic" + "context-mode", + "rtk", + "qmd" ], - "claim": "Accepted within scope: freshly created synthetic ai-memory 2.3.2 and Qdrant 1.19.1 application state was natively backed up, transferred in an exact Restic 0.19.1 snapshot to a distinct GitHub-hosted job, restored into empty native targets, and queried through native MCP and Qdrant APIs. Ten unchanged ai-memory tests and four unchanged Qdrant snapshot cases passed first.", + "claim": "Persistent Linux/WSL defaults reach actual Codex command and MCP processes and the native Claude MCP child; reviewed hooks remain trusted, with four observed successful Claude startup completions.", "limitations": [ - "Newly generated public synthetic application state only; no private user database, old backup recovery or production disaster recovery.", - "Sequential native application snapshots do not establish an atomic cross-application transaction.", - "Separate runner jobs/boot identities share the GitHub administrative domain; no independent provider/account-loss acceptance.", - "The local integration composes native upstream commands and public fixtures; it is not an official upstream end-to-end scenario or the entire upstream test suite.", - "Qdrant release-target adaptation ran selected unchanged tests, not its full source-build CI.", - "No native client rebinding, whole-stack recovery, reboot/guest boot, external alert or unattended production hosting acceptance.", - "No model/provider/broker calls or causal token/cost savings measurement." + "This is authoring-host setup and zero-model-turn acceptance, not a new-PC or provider-savings comparison.", + "Both Codex homes were tested with the installed native app-server; the active Desktop transport was not restarted or privately controlled.", + "Codex hooks/list proves trust and enablement, not hook execution. Neither initialization-only client path exposed SessionEnd completion.", + "The selected-project launch parents already had native defaults. The separate unadopted-directory Codex command/exec checks used a system-only parent PATH and no parent RTK flag.", + "Claude startup events join four starts to four completions but do not identify individual configured commands.", + "Global CLI defaults do not automatically adopt another repository into project-specific indexes, memory scope or MCP servers.", + "Exact current-task or provider tokens avoided are not established; retained counters and local fixture estimates are separate." ], - "path": "evidence/receipts/native-offhost-app-state-20260920.json" + "path": "evidence/receipts/native-session-defaults-20260920.json" }, { - "id": "native-ultracode-20260921", + "id": "native-simulation-research-dashboard-20260919", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "context-mode" + "grafana", + "loki" ], - "claim": "Claude Code 2.1.278 executed a Fable 5.1/xhigh native Workflow with Sonnet 5/medium and Opus 5/high workers returning results. The same coordinator resumed at high effort and completed a native same-host message round trip, source verification and one-shot idle notification with a separate Sonnet session. Native agent and restored workflow dashboards rendered the completed work.", + "claim": "The local passwordless Grafana/Loki dashboard presents the reviewed chronological-study and SEC provenance gates from the active research plan. Native query acceptance passed; catalog coverage and upstream worker evidence are linked with explicit acquisition and historical-data limitations.", "limitations": [ - "Read-only task contracts are not OS isolation; no writing-worker, mid-run cancellation, cross-host or reboot qualification.", - "Initial worker classifications were inaccurate and corrected after independent source review; both worker outputs exceeded their requested word contracts and one schema retry occurred.", - "Native worker identity was observed in child messages; choices are not a comparative quality or token-cost benchmark.", - "Same-host messaging and idle notification only; permission-mismatch behavior, delivery failures, retries and persistent scheduling were not tested.", - "Updated maintenance configuration is not proof of its next timed execution; no new recurring Claude loop was created.", - "Two native success events share cumulative model usage; no causal savings or exhaustive provider-accounting claim.", - "Native PTY rendering and process observations were recorded by the coordinator; message and workflow traces received independent read-only audit. Private raw logs and identifiers remain outside Git." + "This is native local Linux/WSL dashboard observation and evidence integration, not fresh macOS or remote-host acceptance.", + "Recorded lane, gate, plan and worker checkpoints are not process heartbeats; emission freshness does not establish source freshness.", + "The single observed native SEC request returned HTTP 403. Local parser acceptance does not establish live SEC acquisition or historically available trading data.", + "The curated chronological price-label study is not an all-equities mover universe, engine portfolio return or profitable strategy; its reserved segment has now been inspected.", + "Public-star discovery covers 342 public repository identities and not private-star inventory; catalog inclusion does not establish installation or exhaustive SOTA coverage.", + "No additional native model CLI/SDK inference acceptance run, broker orders, paid data or hosting was performed in this wave. Task-agent inference is not quantified here; provider token savings were not measured.", + "Final publication validation belongs to the GitHub workflow for the published commit; this receipt does not preclaim that external CI outcome." ], - "path": "evidence/receipts/native-ultracode-20260921.json" + "path": "blueprints/us-equities/simulation-research/receipt.json" }, { - "id": "native-dashboard-access-20260921", + "id": "native-tavily-cli-20260920", "kind": "native_cli_e2e", "component_ids": [ - "dagu", - "qdrant", - "agentsview", - "grafana", - "prometheus", - "ntfy", - "agent-browser", - "omniroute" + "tavily-cli", + "codex", + "claude-code" ], - "claim": "Passwordless loopback dashboard access was qualified with eight direct native HTTP responses and scoped browser checks. Dagu's recurring Basic challenge was removed using upstream auth.mode none; its DAG execution/wiki-write denials remained. The official Qdrant UI was installed and existing collections remained visible. AgentsView now uses a scoped user service. OmniRoute's supported dashboard-login setting was disabled while anonymous gateway requests remained rejected.", + "claim": "Upstream Tavily CLI0.1.8 installation, authenticated live Search/Extract and eight official skills passed scoped native discovery; Desktop-home probe required an isolated session-only SQLite path.", "limitations": [ - "Current-host dashboard/API integration acceptance, not a complete upstream test suite, provider inference, broker execution, performance comparison, or token-saving benchmark.", - "Dagu auth none and OmniRoute requireLogin false permit ordinary local administration. Dagu's DAG permission flags do not make all APIs read-only. Keep these profiles on loopback; remote access needs appropriate upstream authentication.", - "Qdrant collection-name equality and green statuses do not establish byte-identical storage. Qdrant's UI exposes the existing management API; it is not a read-only client.", - "AgentsView uses the existing explicit archive with no syncing/import. The initial unmanaged process disappeared; exact termination cause is unknown. The supervised replacement was verified after restart, not physical-PC reboot.", - "Native agent-browser default sessions rendered the selected pages. A prior allowed-domains profile broke Grafana relative URL resolution; separate late archive navigation timed out while its unmanaged server was absent. Both failures remain retained, and final supervised archive rendering passed.", - "Hosted Context Mode Insight was not enrolled, purchased, or connected to local telemetry. Its account authentication remains separate.", - "Selected upstream test sources informed permission probes; their Go test suites were identified but not executed in this dashboard configuration wave." + "Fresh native app-server discovery is not observation of the currently running Desktop skill registry.", + "Claude global skill listing is not a Claude model-turn execution of every skill.", + "Map, Crawl, Research and dynamic routing were not exercised by this bounded acceptance.", + "Search/Extract results do not independently establish their source claims or a complete research deliverable.", + "No native lifetime or exact provider-token savings counter is established.", + "The original Desktop SQLite failure and initial publisher-tag counting error remain retained; recovered skill count is eight." ], - "path": "evidence/receipts/native-dashboard-access-20260921.json" + "path": "evidence/receipts/native-tavily-cli-20260920.json" }, { - "id": "full-stack-convergence-20260921", + "id": "native-tavily-session-20260920", "kind": "native_cli_e2e", "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "ccusage", - "claude-code", - "codex", - "context-mode", - "dagu", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "loki", - "omniroute", - "openresearch", - "prometheus", - "qdrant", - "qmd", - "repomix", - "rtk", - "serena", - "socraticode", - "toon", - "vllm", - "worktrunk" + "tavily-cli" ], - "claim": "Native Codex and Claude returned the five-step scoped retrieval task in this session; original streams and usage were independently reviewed. Populated upstream dashboards, current release-query results and hash-bound screenshots are embedded in both evidence presentations. Qualified tool upgrades preserve rollback and explicit upstream test limits.", + "claim": "The current Desktop task received eight Tavily skill entries, loaded the Search/Extract skills, ran both upstream commands and extracted the official IBKR adapter prerequisites.", "limitations": [ - "Selected host/task acceptance, not universal SOTA saturation, all 68 components executed today, production hosting, physical power-loss recovery or another-PC acceptance.", - "Fresh child tasks consumed 255335 Codex and 250492 Claude tokens; no matched baseline. Cache/reasoning subsets are not added twice. Coordinator/other workers are outside those child totals.", - "Context Mode direct narratives mix scopes; retained event/byte estimates and stale source snapshots are not exact net provider lifetime savings. RTK snapshots overlap; zero Headroom events is distinct from offline artifact measurements.", - "Dashboard screenshots are native UI observations. Grafana panels/static hosting/reporters are local integration code; no new jobs/notifications/gateway inference were manufactured to fill dashboards.", - "Release queries are metadata only. Five 404 responses remain; distro/development/prerelease and incompatible pins are retained with source-specific reasons.", - "Package source tests are unchanged selected upstream suites; npm release integrity does not prove reproducible source-to-binary attestation. Rust suites unavailable where noted.", - "Public projections omit private identifiers/paths, setup discovery contents and memory result bodies; originals and hashes remain private. Screenshots exclude private archive titles.", - "Older fixed-order provider comparison reduced Codex usage but increased Claude usage. Broad compact JSON outperformed TOON; counterexamples remain visible." + "Host-supplied active-task skill discovery is distinct from the prior fresh native-process probes. Only Search and Extract were exercised in this task.", + "The broad search returned three official IBKR sources but missed the intended Nautilus adapter guide; direct known-URL extraction supplied the needed evidence.", + "Extracted current documentation is a source check, not an executed broker connection or version-pinned adapter behavior.", + "No provider usage, per-skill performance comparison or lifetime token-saving counter is claimed." ], - "path": "evidence/receipts/full-stack-convergence-20260921.json" + "path": "evidence/receipts/native-tavily-session-20260920.json" }, { - "id": "memory-landscape-20260921", + "id": "native-terminal-profiles-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", "codex", - "claude-code" + "claude-code", + "qdrant", + "vllm" ], - "claim": "Qualified native memory maintenance using nine pinned repository sources, upstream commands and unchanged tests; enabled hourly learning and bounded assistant outcome capture, preserving scope and privacy choices. Independent state inspection and native Claude source review distinguish admission, model review and actual capture.", + "claim": "Windows Terminal's native profile commands returned exit 0 and launched distinct interactive native Claude and Codex processes in the intended project. The matching Codex profile was added with previous settings preserved; existing Qdrant and embedding services were active.", "limitations": [ - "Current-host memory maintenance and bounded client capture, not universal SOTA superiority or every memory repository installed.", - "Two accelerated scheduler ticks were observed; both preflight-skipped without LLM calls. Final hourly configuration persisted across service restart, but no later hourly tick or physical-PC reboot is claimed.", - "Manual learning rejected insufficient durable evidence and applied no proposal. New learned-write quality and future retrieval improvement remain unmeasured.", - "All database scopes enter the scheduler, one review per project per tick; current scope count is one. Claims are once per session including preflight-skipped sessions.", - "Claude prompt capture remains opted out. Assistant excerpts are sanitized and capped at 2000 bytes, and inputs above 64 KiB are dropped. A current Desktop task hot reload is not established.", - "Scheduled page forget sweeps are disabled; upstream hollow-project cleanup remains enabled. Existing and unrelated account/model/scope settings remain unchanged.", - "Exact ai-memory lifetime/session saved tokens are not returned by upstream and remain null. Client consumption and upstream context estimates are separate.", - "Research workers stopped at account limits. Native Claude review first exceeded its turn limit; an incorrectly formed resume invocation failed; the retained resumed completion then supplied source-backed corrections.", - "Initial capture test filter selected zero tests and first Codex task lacked Stop because the modified hook was not yet trusted; corrected tests and real capture were qualified separately." + "Launch and process observation only; no new model task, sign-in, interactive context/usage/compaction or HUD acceptance.", + "The existing local ecosystem launchers select native scope; they are not upstream client binaries. Their diagnostic --check mode does not execute a model task.", + "The service active result is a process-state observation, not a rerun of retrieval, embedding quality, recovery or full-stack E2E.", + "The catalog reuses prior acceptance at base 97ee23e. No new package installation, lifecycle recertification or provider savings is claimed.", + "No Windows UI screenshot or dropdown interaction was captured. Returned native launch commands and observed child processes are the evidence." ], - "path": "evidence/receipts/memory-landscape-20260921.json" + "path": "evidence/receipts/native-terminal-profiles-20260920.json" }, { - "id": "memory-landscape-lifecycle-20260921", + "id": "native-token-ci-github-20260920", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory", - "socraticode", - "qdrant", - "vllm", - "serena", + "rtk", "qmd", - "codex", - "claude-code" + "repomix", + "toon" ], - "claim": "Current native memory/RAG use across Codex and Claude; independently matched stored Claude outcome and consolidation; current upstream release comparison and observed native inventory timer, with updated daily behavioral follow-up.", + "claim": "GitHub Ubuntu24.04 clean installation passed all41upstream command expectations and14acceptance checks; five retained artifacts and seven source hashes matched after download.", "limitations": [ - "This is one useful real retrieval question, not a general relevance benchmark or universal SOTA claim.", - "Existing unchanged upstream tests, add/change/delete and recovery receipts reused within their accepted scope; not rerun here.", - "Current Desktop hook hot reload, physical-PC reboot and the next daily scheduler execution remain unknown.", - "Exact memory session/lifetime savings are not returned and remain null.", - "vLLM intentionally retains its compatible pin; the newest release has a recorded host failure." + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" ], - "path": "evidence/receipts/memory-landscape-lifecycle-20260921.json" + "path": "evidence/receipts/native-token-ci-github-20260920.json" }, { - "id": "alpaca-paper-e2e-20260921", + "id": "native-token-ci-local-20260920", "kind": "native_cli_e2e", "component_ids": [ - "alpaca-py", - "claude-code" + "rtk", + "qmd", + "repomix", + "toon" ], - "claim": "Native Claude source review and five unchanged Alpaca SDK read-only tests precede one real paper SPY roundtrip; fresh cash/fill/position reconciliation and completed-trial recovery without extra writes.", + "claim": "Fresh upstream installs passed41commands and14scoped fidelity/recovery checks, with six acceptance failure tests and owned temporary-state cleanup.", "limitations": [ - "One operational smoke trial, not profitable strategy or continuous trading acceptance.", - "Broker fault paths have27synthetic tests; no native crash, cancellation or partial-fill fault was induced.", - "Observed paper entitlement200API calls/minute; configured120. Elite1000/minute remains unqualified." + "Not a new-PC, native Codex/Claude, GPU or provider acceptance", + "Top-level package pins; npm transitive ranges resolve at installation", + "RTK counters are fixture-local estimates, not provider savings", + "No token-saving requirement: fidelity may need the larger representation", + "Retained text replaces local paths; raw byte hashes precede sanitization" ], - "path": "evidence/receipts/alpaca-paper-e2e-20260921.json" + "path": "evidence/receipts/native-token-ci-local-20260920.json" }, { - "id": "nautilus-equity-replay-20260921", + "id": "native-token-clean-prefix-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader" + "headroom", + "jcodemunch-mcp" ], - "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", + "claim": "Fresh isolated upstream uv installations of Headroom0.37.0 and jCodeMunch1.108.319 passed exact native MCP retrieval before/after real server restart, then native uninstall with all created entrypoints absent and zero owned tool processes remaining.", "limitations": [ - "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", - "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", - "SPY/LEAN corporate-action parity and historical universe availability remain separate." + "Clean prefix means new isolated tool environments using the existing host and package cache, not a newly provisioned operating system or an independent-PC restore.", + "The Python MCP SDK transported real upstream tool calls. Retained JSON envelopes preserve returned fields but are serialized artifacts, not a byte-for-byte dump of stdio transport framing.", + "Headroom used the selected offline Python detector; its native detector warning is retained in stderr. No model/provider keys were supplied, and no account configuration was copied.", + "Headroom upstream9616/2128 counts include message overhead; exact retained content counts are9609/2121, and the cheaper compact original is5105. Comparisons use their stated baseline.", + "Headroom full compression+recovery responses cost18777 tokens versus5105 compact original. Exact recoverability is not a net saving when the original is also fetched.", + "jCodeMunch complete returned search/source responses cost324 tokens versus2484 for the whole file, but a known focused function is only40 tokens. Retain that cheaper path when its location is already known.", + "Native isolated lifetime estimates are verification-ledger values. Do not add them to production counters, existing artifact totals, provider usage or other snapshots.", + "Process exits, uninstall and retained-byte checks establish this bounded local lifecycle only; provider-mediated client workflows, every optional feature and OS reboot were not replayed." ], - "path": "evidence/receipts/nautilus-equity-replay-20260921.json" + "path": "evidence/receipts/native-token-clean-prefix-20260920.json" }, { - "id": "foundation-convergence-20260921", + "id": "native-token-focus-clients-20260920", + "path": "evidence/receipts/native-token-focus-clients-20260920.json", "kind": "native_model_e2e", "component_ids": [ "codex", "claude-code", "context-mode", - "rtk", - "headroom", - "toon" - ], - "claim": "Actual native Claude two-worker source research, independent stable-release/installed-byte observations, and current foundation checkpoint reconciliation. Accepted pins retained; SDK remains conditional; failed/inconclusive source queries and narrative corrections retained.", - "limitations": [ - "Source review is not new installation, SDK execution or recertification of unchanged foundation layers.", - "One read-only native Workflow used Fable, Sonnet/medium and Opus/high, observed in native records. No matched savings baseline; Opus cumulative/persisted output differs by 315 tokens.", - "Two cumulative result events overlap; count final modelUsage once. Codex coordination, independent reviewers and publication are outside that usage.", - "Existing local writing/recovery and selective-context fixture evidence is reused unchanged, with its failures and boundaries.", - "No new scheduled trigger, restart or physical reboot was observed; lifetime and session savings remain null." - ], - "path": "evidence/receipts/foundation-convergence-20260921.json" - }, - { - "id": "native-progress-capacity-20260921", - "kind": "native_cli_e2e", - "component_ids": [ - "loki", - "dagu" + "jcodemunch-mcp" ], - "claim": "Actual systemd progress timer recovered from an 81-entity capacity rejection and published the complete combined local inventory; independent native Loki readback matched all entities and fields.", + "claim": "One bounded task in each signed-in native client successfully read a project document through Context Mode and retrieved the exact selected implementation through jCodeMunch; all six selected MCP calls completed.", "limitations": [ - "This observed systemd progress timer is distinct from the daily Codex maintenance heartbeat.", - "No client restart, service restart or physical reboot was performed or verified.", - "Local combined catalog includes concurrent paper checkpoints; this operation did not execute or requalify broker behavior.", - "Publication and dashboard health do not establish task acceptance, token savings or current worker process liveness.", - "No live provider inference, account change, new dependency or upstream version change for this repair." - ], - "path": "observability/grand-dashboard/capacity-recovery-20260921.json" + "Existing Desktop process retains its original loaded MCP connection; fresh native Codex verifies corrected project scope.", + "Only selected MCP actions exercised; lifecycle compaction and interactive HUD are separate.", + "Native usage includes prompts, tool schemas, cache reads and reasoning; it is consumed usage, not avoided lifetime tokens.", + "This is functional integration acceptance with normal configured clients, not a randomized or matched token-savings A/B comparison.", + "Raw private prompts, client streams, account identifiers and host paths are not published." + ] }, { - "id": "claude-upstream-checks-20260921", - "kind": "native_cli_e2e", + "id": "native-token-stack-final-20260920", + "kind": "native_model_e2e", "component_ids": [ - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "ast-grep", - "beads", - "ccusage", "claude-code", "codex", - "codex-for-claude", "context-mode", - "dagu", - "difftastic", - "gitleaks", - "grafana", - "headroom", "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcporter", - "nautilus-trader", - "openresearch", - "opentelemetry-collector-contrib", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", + "headroom", "rtk", - "serena", - "socraticode", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "opentelemetry-collector-contrib", + "loki", + "prometheus" ], - "claim": "Live Claude retained 38 native command rows: 14 bounded functional checks, 18 readiness checks and 6 version/help checks, with corrected failure handling and three native dashboard screenshots.", + "claim": "Both native clients retrieved verified project source and resumed their sessions; writer-scoped observer records independently match bounded native outcomes and consumption. Final retained upstream estimates are separate from usage and artifact baselines.", "limitations": [ - "38 zero-exit rows are not 38 functional E2Es; each row keeps its narrower evidence class.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "RTK/Headroom/Context Mode figures overlap or have tool-specific retention; no causal provider savings.", - "Complete originals remain private; public excerpts are bounded and sanitized.", - "The earlier wrong-port vLLM fallback was wrongly accepted and remains recorded; corrected call tests only the stated embedding request." + "Dated source-host acceptance with existing native accounts and configured models, not another PC or all selected components.", + "Codex initial launch refused two MCP calls; corrected native launch passed. Claude initial strict JSON format and tool-count narration failed while source/continuity checks passed.", + "Codex returned session-cumulative 161720 consumed tokens includes the initial 64820. Claude three invocations consumed 247211. These are not paired savings trials.", + "Codex seven task response events and two writer histograms match 161720, but two additional zero-output startup events contain 25772 input tokens outside those turn totals; billing/attribution unknown.", + "Claude final continuation matches 46011 across CLI, Loki and Prometheus. Earlier unlabelled invocations only have numerical/time correspondence and are not retroactively assigned the new writer.", + "Per-process compressor savings were not collected for the initial client task. Native counters use their own retained history, heuristic and process scopes; no exact causal lifetime provider saving is established.", + "Private prompts, account metadata and raw task/writer IDs are withheld; portable command paths and query identifiers are parameterized. Original captures and hashes are retained privately.", + "The prior Desktop Context Mode file-root limitation and unestablished lifecycle stages remain. No claim that every installed tool is active for every turn." ], - "path": "evidence/receipts/claude-upstream-checks-20260921.json" + "path": "evidence/receipts/native-token-stack-final-20260920.json" }, { - "id": "foundation-rd-20260921", - "kind": "native_model_e2e", + "id": "native-ultracode-20260921", + "kind": "native_cli_e2e", "component_ids": [ "claude-code", - "codex", - "codex-for-claude", - "qmd" + "context-mode" ], - "claim": "Literal native Claude-to-Codex foreground review returned successfully for the final paper clock guard; separately retained native QMD four-mode diagnostic informs the scoped BM25 default.", + "claim": "Claude Code 2.1.278 executed a Fable 5.1/xhigh native Workflow with Sonnet 5/medium and Opus 5/high workers returning results. The same coordinator resumed at high effort and completed a native same-host message round trip, source verification and one-shot idle notification with a separate Sonnet session. Native agent and restored workflow dashboards rendered the completed work.", "limitations": [ - "The review covers three source files at its recorded commit, not the full catalog or a native broker retest.", - "Claude native usage is retained; Codex review usage/model/effort are not exposed by this companion path. No causal or lifetime savings claim.", - "QMD used 12 fixed queries, an expanded index without a full corpus seal and one ordered run. Earlier timeout is retained; no general retrieval ranking is established.", - "Dedicated review checkout avoids sharing the workspace broker. Same-workspace concurrency and prior aborted background review remain unqualified.", - "Existing paper and AAPL receipts retain their original source scope; SPY parity, native broker faults, IBKR, strategy quality and continuous operation remain open." + "Read-only task contracts are not OS isolation; no writing-worker, mid-run cancellation, cross-host or reboot qualification.", + "Initial worker classifications were inaccurate and corrected after independent source review; both worker outputs exceeded their requested word contracts and one schema retry occurred.", + "Native worker identity was observed in child messages; choices are not a comparative quality or token-cost benchmark.", + "Same-host messaging and idle notification only; permission-mismatch behavior, delivery failures, retries and persistent scheduling were not tested.", + "Updated maintenance configuration is not proof of its next timed execution; no new recurring Claude loop was created.", + "Two native success events share cumulative model usage; no causal savings or exhaustive provider-accounting claim.", + "Native PTY rendering and process observations were recorded by the coordinator; message and workflow traces received independent read-only audit. Private raw logs and identifiers remain outside Git." ], - "path": "evidence/receipts/foundation-rd-20260921.json" + "path": "evidence/receipts/native-ultracode-20260921.json" }, { - "id": "claude-foundation-finalization-20260921", + "id": "native-worker-cgroup-20260920", "kind": "native_model_e2e", "component_ids": [ "claude-code", - "codex", - "agent-browser", - "repomix" + "systemd" ], - "claim": "Native Claude completed a packet-scoped readiness run after independently reviewed source-gate corrections; earlier rejected and incomplete runs remain visible. Native Codex configuration and sign-in were audited. Portable examples and the sixteen-layer repository/dashboard explorer are separately verified.", + "claim": "One native inherited-tool child completed cancellation, same-child continuation, abrupt parent-runtime failure, automatic systemd descendant cleanup and same-parent/same-child finalization with an unchanged checkpoint and one local effect.", "limitations": [ - "Three optional capabilities retain their earlier partial acceptance; no new-host or physical-PC reboot qualification.", - "Application hosting evidence remains fixture-scoped; no paid hosting, public deployment, broker action or new account connection.", - "Native review model citation/count transcription errors are retained; the evidence gate was not relaxed to relabel them accepted.", - "Portable native roles omit host-specific MCP permissions; tests use stubbed model responses and stay distinct from native execution." + "One synthetic local task on this WSL host; not general worker reliability or an OS sandbox.", + "Not host/user-manager crash, independent-host recovery, remote provider cancellation, cessation of billing or distributed exactly-once effects.", + "Restricted Bash-only role incompatibility and every original failure remain retained; only this inherited role is accepted.", + "The successful run did not request ls, so the exact rewrite permission diagnosis is deterministic evidence rather than an exercised native approval success.", + "Native usage views overlap; initial SIGKILL has no terminal record. Complete parent/child/retry usage, billing and savings remain unknown." ], - "path": "evidence/receipts/claude-foundation-finalization-20260921.json" + "path": "evidence/receipts/native-worker-cgroup-20260920.json" }, { - "id": "adaptive-paper-practice-20260921", + "id": "native-worker-containment-20260920", "kind": "native_cli_e2e", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "claude-code", - "codex" + "systemd", + "claude-code" ], - "claim": "Five baseline policy families wired through native NautilusTrader and the Alpaca SDK; bounded live research collection and independently reviewed risk/recovery; local synthetic engine capacity measured at 178.7 submissions/minute.", + "claim": "The existing native user manager contained an owned TERM-ignoring setsid descendant after only MainPID was killed. One changed native child trial under that wrapper stopped before checkpoint because its extra-prefixed command was refused; combined native child containment/resume remains unaccepted.", "limitations": [ - "The new adaptive paper trial did not start because the regular session was closed; prior SPY smoke remains separate evidence.", - "Capacity uses immediate synthetic fills, not broker throughput, profitable alpha or market-session strategy validation.", - "Observed Trading API limit is 200 requests/minute; all order submissions share a 180/minute cap and leverage is capped at1x. Elite1000 is unqualified.", - "News is capped and advisory; native broker fault induction, signal parity and continuous operation remain open." + "Deterministic cgroup proof is not successful native child crash/resume acceptance.", + "Earlier same-child continuation still required explicit direct descendant cleanup.", + "No host/user-manager restart, provider cancellation, billing cessation, off-host restoration or distributed exactly-once acceptance." ], - "path": "evidence/receipts/adaptive-paper-practice-20260921.json" + "path": "evidence/receipts/native-worker-containment-20260920.json" }, { - "id": "broad-universe-research-20260921", - "kind": "native_cli_e2e", + "id": "native-worker-recovery-20260920", + "kind": "native_model_e2e", "component_ids": [ - "alpaca-py", - "duckdb", - "claude-code", - "codex" + "claude-code" ], - "claim": "Widest entitled SIP daily coverage measured for 17,997 US-listed symbols over 2,693 sessions (2016-01-04 to 2026-09-18) with page-hash and pagination proofs; a frozen broad-universe mover protocol evaluated chronologically once, establishing no predictive signal; and a dated full-universe scan in which META and AMD ranked 14th and 19th of 1,795 eligible names.", + "claim": "One native background child retained its identity through TaskStop/SendMessage cancellation and same-parent continuation after abrupt runtime failure, producing one final local effect from an unchanged checkpoint after explicit supervisor cleanup.", "limitations": [ - "Survivorship exposure before 2020: only 25/47/167 symbols end in 2016/2017/2018 because the provider asset list under-enumerates delisted names and corporate-action records are thin before 2020.", - "Daily-bar event study with modelled costs; no opening-auction price, halts, quotes or portfolio simulation; not attainable P&L and not a paper or broker result.", - "Identity is provider-symbol based: 155 duplicated ticker series were removed, 80 partial overlaps (0.12% of rows) and 235 undated ticker collisions remain.", - "No paper order was placed: no signal met promotion, the session was closed, and multi-session horizons do not fit the frozen 300-second adaptive trial.", - "Scan flags are research flags, not predictions; provider mover screens are bounded top-N lists; tests are local synthetic-fixture checks." + "One synthetic local fixture and one physical WSL host, not arbitrary application state.", + "Actual native child identities and paths remain private; hashes bind retained streams.", + "Native original runtime SIGKILL is a shared-process failure; task identity and effect continuation are distinct from process containment.", + "The updated runner parser is regression-tested offline; the one native attempt executed the separately retained source.", + "Automatic native crash descendant containment: the crash wait survived and needed supervisor SIGKILL.", + "Exact requested tool-only behavior: the child attempted an extra read-only ls/git-status command, which was refused.", + "Remote provider cancellation, billing cessation, independent child-process isolation, off-host recovery, power-loss durability and distributed exactly-once effects." ], - "path": "evidence/receipts/broad-universe-research-20260921.json" + "path": "evidence/receipts/native-worker-recovery-20260920.json" }, { - "id": "ultracode-token-routing-20260921", + "id": "native-worker-supervision-20260919", + "path": "blueprints/us-equities/worker-supervision/receipt.json", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex" + "systemd" ], - "claim": "Claude Code 2.1.278 native Workflow stages re-routed to lean project agents cut the provider-returned first-request prompt from 42,396 tokens (default child) to 12,164 (named MCP grants behind ToolSearch) and 8,048 (source-scout) on one identical task; eight native review runs, two readiness audits, a builder run and probes plus one Codex cross-family review are retained as sanitized usage receipts; Haiku was not routed after an Opus-verified 9/14 versus 14/14 extraction trial; workflowSizeGuideline moved from small to unrestricted with a task sizing rule.", + "claim": "The existing Linux/WSL2 user service manager enforced a transient worker runtime deadline, killed a TERM-ignoring parent and its two descendants, preserved a native timeout failure, and accepted a separate fresh successful run.", "limitations": [ - "First-prompt figures come from one tiny task on one host and model; they bound a fixed spawn cost, not a savings rate.", - "The Haiku judgment rests on one packet and one Opus verifier.", - "The strict accepted envelope status was never returned in the deploying project; the commit gate was fix-and-commit after each review's findings were resolved.", - "Local suites are stubbed or synthetic; provider figures reach the receipts only as sanitized child-usage.mjs output, with raw transcripts outside Git.", - "Codex thread and turn identifiers were redacted from the cross-review record." - ], - "path": "evidence/receipts/ultracode-token-routing-20260921.json" + "Synthetic offline worker only; no Codex, Claude, broker, model, account, network, or paid-host calls.", + "The successful second unit was explicitly launched; this does not prove checkpoint resume, automatic retry, duplicate suppression, or preservation of unfinished application state.", + "CPU, memory and task cgroup values were observed while active; quota saturation, OOM behavior and production sizing were not tested.", + "NoNewPrivileges and cgroup supervision are not filesystem or network isolation. This same-user fixture is not an adversarial sandbox escape test.", + "No persistent unit, scheduler, timer or existing service configuration was changed. The synthetic failed unit was reset after evidence capture.", + "Linux/WSL2 host only; no native macOS, Windows, host reboot, WSL shutdown recovery or always-on remote-host acceptance.", + "Local process termination does not establish remote provider cancellation, stopped billing or reversal of external effects.", + "systemd latest upstream release is distinct from the accepted distribution build; no systemd upgrade was performed.", + "Hashes bind retained evidence bytes; they do not independently attest the execution.", + "Linux/WSL local synthetic tree, not provider cancellation or Mac hosting.", + "Configured resource limits were inspected, not saturation-tested." + ] }, { - "id": "portable-claude-native-qualification-20260921", + "id": "native-workflow-graceful-recovery-20260921", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "prometheus" + "claude-code" ], - "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", + "claim": "Native workflow-authoring skill injection, selected reviewer stop, graceful coordinator exit and same-session/run resume were exercised. One implementation start and three reviewer starts were observed across three launches; final owned checkouts passed independent acceptance, preserved intervening user edits and cleaned up owned processes.", "limitations": [ - "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", - "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", - "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", - "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", - "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." + "Graceful local exit/resume on a synthetic fixture, not hard-crash, reboot, cross-host delivery, scheduled wake or arbitrary external exactly-once qualification.", + "The operator deliberately changed tracked and untracked sentinels while stopped. Initial and final checks cover distinct documented boundaries; the mutation receipt was recorded after execution.", + "Recovery native cumulative model usage was 2143696 tokens versus 1937995 retained unique-message tokens, leaving 205701 unexplained. Full accounting reconciliation is not qualified; repeated cumulative events are not summed as new consumption.", + "One implementation and one review effect were observed for this local probe. Local fixture checks are not the complete upstream test suite." ], - "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" + "path": "evidence/receipts/native-workflow-graceful-recovery-20260921.json" }, { - "id": "sota-convergence-20260922", - "kind": "historical_inventory", + "id": "native-workflow-writing-comparison-20260921", + "kind": "native_cli_e2e", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "apple-container", - "ast-grep", - "beads", - "ccusage", - "claude-code", - "claude-hud", - "codebase-memory-mcp", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "fastapi", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "llama-cpp", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nextjs", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "playwright-cli", - "playwright-test", - "poppler", - "postgresql", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "react", - "repomix", - "restic", - "rtk", - "sandbox-runtime", - "serena", - "shanraisshan/claude-code-best-practice", - "shellcheck", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "claude-code" ], - "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", + "claim": "A native single-agent writing run and Fable Workflow with Sonnet implementation and Opus review each produced a repair independently accepted by 29 visible and seven held-out checks. Actual model identities, usage, schema retry and scope deviations were retained.", "limitations": [ - "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", - "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", - "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", - "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." + "One ordered local invoice fixture, not a fully compliant benchmark, upstream test suite or general model ranking.", + "Both model runs piped test output through tail, masking exit status; independent unpiped acceptance passed. The Workflow run did not invoke the required authoring skill and exceeded its literal read boundary by reading native metadata.", + "Single-agent usage was 194781 reported tokens and Workflow usage 753508. The native Workflow coordinator and workers are included; outer Codex preparation and coordination, independent audit and reporting are excluded. Native cache warmth was uncontrolled; these observations do not establish causal savings. Subscription billing is unknown." ], - "path": "evidence/receipts/sota-convergence-20260922.json" + "path": "evidence/receipts/native-workflow-writing-comparison-20260921.json" }, { - "id": "claude-repository-evidence-20260921", + "id": "native-wsl-restic-synthetic-20260920", "kind": "native_cli_e2e", "component_ids": [ - "affaan-m/ECC", - "agent-browser", - "agentsview", - "ai-memory", - "alertmanager", - "alpaca-py", - "ast-grep", - "beads", - "ccusage", - "claude-code", - "claude-hud", - "codex", - "codex-for-claude", - "context-hub", - "context-mode", - "dagu", - "davila7/claude-code-templates", - "difftastic", - "duckdb", - "edgartools", - "gitleaks", - "grafana", - "headroom", - "huggingface-hub-native", - "jcodemunch-mcp", - "lean", - "loki", - "markitdown", - "mcp-inspector", - "mcporter", - "nautilus-trader", - "ntfy", - "omniroute", - "openresearch", - "opentelemetry-collector-contrib", - "otel-tui", - "pandas", - "playwright-cli", - "prometheus", - "promptfoo", - "qdrant", - "qmd", - "repomix", - "restic", - "rtk", - "sandbox-runtime", - "serena", - "shellcheck", - "skfolio", - "skills-ref", - "socraticode", - "syft", - "systemd", - "tavily-cli", - "toon", - "vllm", - "worktrunk", - "zizmor" + "restic" ], - "claim": "Live Claude retained asserted native command rows for all 68 selected catalog components plus two supporting rows: 47 functional rows whose declared assertion passed, 10 readiness rows, 3 version/help rows and 10 rows without local execution evidence, with 14 reviewed public dashboard screenshots, per-row selection evidence and the non-additive lifetime extract.", + "claim": "On VelaNext Linux/WSL2, verified native restic0.19.1 recovered both exact synthetic snapshots through a fresh SSH connection after isolated wrong-password and corrupt-copy failures. Complete fixture path/type/byte/hash/POSIX-mode equality passed, including the fixture root.", "limitations": [ - "47 functional rows are not 70 functional E2Es; each row keeps its narrower evidence class and one command (dagu validate) is retained as failing.", - "A local integration check that does not invoke the component is labelled and never counts toward a row; LEAN is a readiness row and no LEAN backtest was run by this report.", - "This is dated source-host evidence, not another PC installation or full lifecycle acceptance.", - "Lifetime figures are each tool's own non-additive estimate; no combined figure and no provider-token savings.", - "Selection verdicts are for this profile with their evidence chain; only three rows have a local measurement and no row claims universal superiority.", - "Complete originals and seven private dashboard screenshots remain on the source host; public excerpts are bounded and sanitized.", - "Superseded observations, including the author's own probe and invocation errors, remain recorded." + "No pruning, services, global PATH/configuration changes, credential access, model calls, reboot, or shared SSH transport changes.", + "Fresh-SSH recovery after explicit incorrect-input/corruption failures; process-crash and power-loss recovery not qualified.", + "Same-host password-file availability is a prerequisite; independent key recovery and offhost disaster recovery remain unknown.", + "No ACL/xattr/sparse/hardlink/symlink or cross-filesystem/Windows-NTFS/exFAT claims.", + "No token, storage-efficiency or backup performance claim.", + "Prior direct-subtree restore returned0 but failed the strict fixture-root mode gate. That attempt remains failed; the parent-subtree correction is a separate native run.", + "A fresh SSH connection proves channel-independent access with the retained local task key only; future same-host key availability, key-loss recovery and offhost disaster recovery remain unknown.", + "Native gitleaks and Worktrunk were absent in the bounded lookup and were not installed or qualified by this lane.", + "The corrected reusable run.py/plan.json combine the observed fixes; they were not replayed as a third full backup trial. Actual executed runner/plan bytes are retained per attempt.", + "Ten offline oracle/guard tests are distinct from the actual native restic commands." ], - "path": "evidence/receipts/claude-repository-evidence-20260921.json" + "path": "blueprints/convergence-practice/wsl-restore/receipt.json" }, { - "id": "github-automation-newpc-20260922", + "id": "nautilus-equity-replay-20260921", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code" + "nautilus-trader" ], - "claim": "The new-machine handbook (adoption/bootstrap.md, adoption/platforms/*.md), the three native client config templates and tools/adoption/render_config.py were built and locally verified on this Linux/WSL2 host: render_config.py --check reproduced this host's live ~/.claude/settings.json, ~/.codex/config.toml and agent-lab/.codex/config.toml byte-for-byte from the templates plus this host's own gitignored adoption/hosts/wsl-.json values, and the new unit tests plus every existing repository validator pass against the three new catalogs/foundation/decisions.json rows. Hosted GitHub Actions execution for the new-pc-bootstrap-ci decision is explicitly pending, not claimed here.", + "claim": "Native BacktestEngine replays15retained AAPL bars in baseline and fee/slippage scenarios;20fills and10closed roundtrips per combined repetition, independently reconciled cash and realized PnL.", "limitations": [ - "Byte-identical --check is native evidence for this one host's three live files only; a different host still needs its own adoption/hosts/.json and its own --check run.", - "adoption/platforms/macos-arm64.md is drafted, not accepted: no command on that page has run on macOS.", - "new-pc-bootstrap-ci is source_review: no hosted GitHub Actions workflow or run exists yet for this bootstrap sequence.", - "This receipt does not claim any provider/model task, account readiness check, or service start; it is structural/local-integration evidence only.", - "scripts/adoption_status.py exits 2 overall on this host (status prerequisites_missing) because adoption/manifest.json supported_platforms pins Python 3.13 and this host runs 3.12.3 -- a pre-existing condition, unaffected by this unit's changes; the foundation-cpu profile itself is prerequisites_present and the new macos-arm64-foundation profile correctly reports its macOS-only commands absent on Linux.", - "scripts/build_ecosystem.py --check was not run and currently fails on this branch (three new decision ids and one new adoption profile are absent from the committed docs/ecosystem/index.html); this is an unresolved CI gate for the coordinator's explorer regeneration, not something this unit's owned paths permit fixing." + "Retrospective same-close scheduled diagnostic, not executable closing-auction strategy or profitability acceptance.", + "Unlimited synthetic fill liquidity; finite order-book liquidity and latency realism remain unqualified.", + "SPY/LEAN corporate-action parity and historical universe availability remain separate." ], - "path": "evidence/receipts/github-automation-newpc-20260922.json" + "path": "evidence/receipts/nautilus-equity-replay-20260921.json" }, { - "id": "exchange-calendars-native-check-20260922", - "kind": "native_cli_e2e", + "id": "new-wsl-embedding-model-20261002", + "kind": "native_model_e2e", "component_ids": [ - "exchange-calendars" + "huggingface-hub-native" ], - "claim": "exchange_calendars 4.13.2 was installed in an isolated venv from PyPI and its XNYS calendar was queried natively for the 2013-10-07 session: session_open/session_close returned 2013-10-07T13:30:00+00:00 and 2013-10-07T20:00:00+00:00, matching the session_open_utc/session_close_utc values already recorded in blueprints/us-equities/data/receipt.json. Independent GitHub API checks (repos/gerrymanoim/exchange_calendars, its releases/latest, and commits for both the recorded source_pin dbe38b1f6887434bbdd1a7d2df6ff8f1742a048a and the 4.13.2 tag) confirm the pin resolves to a real public commit and that tag 4.13.2 resolves to the identical commit.", + "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02 and 2026-10-03, with the generation model swift-iq3s-s2o-64k resident, the preregistered comparison for the new WSL's embedding model gave the slot to E1: qwen3-embedding:0.6b (Q8_0, Ollama library manifest ac6da0dfba84a81fdbfbaf330198c33cd77c4cdfc53e8bc50eb581914a15621d) on Ollama 0.35.0 as qwen3-embedding-8k (num_ctx 8192). On MTEB 2.22.1's CQADupstackUnixRetrieval (test split: 47,382 documents, 1,072 queries) its nDCG@10 was 0.49827 against 0.41394 for EmbeddingGemma on the same server: E1 minus E2 0.084331, 95% paired bootstrap interval over queries 0.067738 to 0.100656 (10,000 resamples, seed 20260927). Nemotron-3-Embed-1B, which needs a second model server, scored 0.5014; E3 minus E1 was 0.003124 with an interval of -0.012194 to 0.018141 that includes zero, so by the second-server rule it does not take the slot. WeMM-Embedding-2B passed the fit gate but ran out of GPU memory in its full run and is out. The reranking condition was not run.", "limitations": [ - "This is a single-session, single-calendar (XNYS) check, not a survey of holidays, breaks, other calendars or the package's full test suite.", - "It does not establish that blueprints/us-equities/data/receipt.json or blueprints/us-equities/historical-simulation/receipt.json themselves invoked exchange_calendars internally; it independently reproduces the same published session boundary values using the pinned package version.", - "No paper/live trading, broker calendar reconciliation or holiday-schedule regression was performed.", - "The PyPI install and GitHub API calls used live network access on 2026-09-22; they are not offline-attested or independently mirrored.", - "This receipt does not extend, retro-label or otherwise change the scope of native-historical-leverage-stress-20260919 (lean), which remains scoped to its own six LEAN simulations only." + "One public retrieval task (CQADupstack Unix: English technical questions from a StackExchange forum), one workstation, one throwaway distribution, one run per arm: a local integration check, not an acceptance on the destination distribution.", + "Nemotron's tie holds for this task only; multilingual retrieval, longer documents and other domains were not measured.", + "The two Ollama arms are GGUF conversions served by the one model server; a difference from the reference weights is a difference of the systems, not of the models alone.", + "E1's and E2's prompts are MTEB's reference prompts as observed with a stub before the runs (amendment 4a): E1 sends the Qwen3 instruction before queries and nothing before documents; E2 sends EmbeddingGemma's query and document prompts.", + "Gate F reads the model server's listing: in window pb2 the card's memory in use fell between steps while the server kept listing the generation model entirely on the GPU, consistent with the Windows driver moving part of it off the card, so E3 passing gate F does not show co-residency. In window pb1 the readings matched the resident models, so E1's co-residency with the generation model is supported by both readings.", + "E4's first error text was lost: after its evaluation failed out of memory, the script's memory query raised the same sticky CUDA error and the outer handler replaced the text; the outcome is not in doubt, because only the evaluation's handler sets out_of_memory.", + "The reranking condition was not run: no installed retrieval owner can call an external reranker (QMD reranks in-process with its bundled model), and zerank-2 (7.49 GiB of weights) cannot be resident beside the generation model on this card.", + "Recorded, not deciding: evaluation time E1 1,166 s, E2 771 s, E3 460 s (E3 in-process, not comparable with the Ollama arms); resident sizes E1 2,857,191,341 bytes and E2 681,417,113 bytes.", + "manifests/stack.json has no Ollama or MTEB component; component_ids name huggingface-hub-native, the native route for the revision-pinned snapshots of E3 and E4, which the measurement downloaded through the huggingface_hub library at MTEB's registered revisions (its version is in the throwaway's freeze list, which was not retained).", + "The 31 MB prediction files and the run records stay private and are listed by sha256 in files.json; the published per-query nDCG@10 files reproduce the decision statistic.", + "With a server-wide context of 64,000 the embedder loaded at its full context and took 5.78 GB (Part A, A1b); the measured system sets the context per model (qwen3-embedding-8k, 8,192 tokens), never server-wide." ], - "path": "evidence/receipts/exchange-calendars-native-check-20260922.json" + "path": "evidence/artifacts/new-wsl-local-models-20261002/part-b-receipt.json" }, { - "id": "adoption-macos-hosted-smoke-20260922", - "kind": "native_cli_e2e", + "id": "new-wsl-local-generation-model-20261002", + "kind": "native_model_e2e", "component_ids": [ "codex", - "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "claude-code" ], - "claim": "adoption/bootstrap-macos.sh --profile macos-arm64-foundation --skip-system-packages ran to completion on a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830, Python 3.13.15) into a disposable ECO_INSTALL_ROOT, installing the pinned darwin-arm64 archives and npm packages listed in adoption/pins-macos-arm64.json; scripts/adoption_status.py --profile macos-arm64-foundation --json then reported the profile prerequisites_present with no missing command and platform.supported false, and the job uploaded status.json, installed-versions.txt and sw_vers.txt as its artifact.", + "claim": "On one workstation (WSL2, RTX 4090 with 24 GB) in a throwaway Ubuntu 26.04.1 distribution on 2026-10-02, the preregistered comparison for the new WSL's local generation model gave the slot to S2o: Swift-1.5-Qwen3.8-27B IQ3_S (ukisai/Swift-1.5-Qwen3.8-27B-GSQ-RCO-GGUF at revision d74895bbe5db4bec1e0024e7cc87d59c02d7631a, file sha256 1333c6ea70ef348d4ac6d62732772e8ad6571ac5b3754c14ed54f1a0d904a786, 11,771,546,912 bytes) on Ollama 0.35.0 as swift-iq3s-s2o-64k (context 64,000). On the same 100 BFCL simple_python cases (inspect-evals 0.23.0 on Inspect AI 0.3.273) through the server's chat and responses surfaces, its first-pass valid tool calls were 200 of 200 against 175 of 200 for the control gpt-oss:20b: difference 0.125, 95% paired bootstrap interval over cases 0.065 to 0.19 (10,000 resamples, seed 20260927), not a tie. Both arms were entirely on the GPU with the embedder resident in the order of use, and both passed 10 of 10 client tasks (Codex 0.160.0 and Claude Code 2.1.287). Bonsai PTQ1_0, Bonsai PQ2_0 and Swift on PrismML's llama.cpp server failed the function gate (0 of 3 runs each: the server skips the Codex client's namespace tool type), and qwen3.8:27b was not entirely on the GPU at 64,000 tokens.", "limitations": [ - "Native operation on a GitHub-hosted macOS arm64 runner only; not acceptance on a user's Mac workstation, which must record its own receipt.", - "platform_profiles[macos-arm64] stays drafted_not_accepted and adoption/manifest.json supported_platforms stays Linux/x86_64; the overall adoption_status is prerequisites_missing by design on an unsupported platform.", - "No native client sign-in, no launchd service bootstrap, no llama-server embedding acceptance and no Homebrew system-package step ran (--skip-system-packages; the runner image already carried the prerequisites).", - "npm packages resolve their darwin-arm64 optional binaries from the registry unpinned; the registry tarball sha256 is what the pins verify.", - "socraticode is the profile's documented unpinned skip and was not installed." + "One workstation, one throwaway distribution, one run per case and arm: a local integration check of the systems named, not an acceptance on the destination distribution.", + "First-pass tool-call validity on 100 simple public cases (BFCL simple_python) through two interfaces; nothing about coding quality, long tasks, throughput under concurrent requests or behaviour above 64,000 tokens.", + "The Anthropic-style messages surface was not evaluated through the package (Inspect AI 0.3.273 cannot read this thinking model's answer); it was exercised only by Claude Code in the client tasks, which both arms passed.", + "S2o was slower in these runs: 292 and 303 seconds for 100 cases on chat and responses against 100 and 139 for the control, and 43.1 against 108.9 output tokens per second on single long prompts that were not run as a speed comparison.", + "S2o leaves less GPU memory free: 21,579 of 24,564 MiB in use with the embedder resident while Windows applications held about 2,600 MiB; earlier the same day they held up to about 5,900 MiB, at which the same load would leave under one GB. Co-residency on a busier desktop and on the destination distribution is not measured.", + "The Ollama import is this measurement's system, not a route the publisher documents: the library qwen3.8:27b model's renderer, parser, parameters, template and licence lines with the Swift file as FROM. The publisher's own route (llama.cpp's server, here PrismML's fork) failed the function gate for a reason that lies in that server. The quantization's card says its quality tests used a 512-token context.", + "The arm that took the slot was added by the preregistration's extension (amendment 3) after the owner asked for the newest releases; the deciding measurement as the critic named it had two arms (qwen3.8:27b and gpt-oss:20b), the earlier result for gpt-oss:20b is kept as a historical result, and gpt-oss:20b ran A2 as the control under the same rules.", + "Three deviations are recorded (a void first window, the Codex client's model name with its tag, a reused label); none changed a case, a limit, the metric or the rule, and none was decided on an outcome.", + "Recorded, not deciding: the package's own score (S2o 97 and 95 of 100, the control 83 and 83) and the client tasks (10 of 10 for each arm).", + "manifests/stack.json has no Ollama, Inspect AI or PrismML llama.cpp component, so component_ids name the two clients that ran the client tasks (Codex also ran the function gate); they ran at Codex 0.160.0 and Claude Code 2.1.287, not at the stack's recorded 0.159.3 and 2.1.284.", + "Raw model outputs (the Inspect logs, the client run records, the server logs) stay private and are listed by sha256 in files.json; the published per-case validity files carry case ids, verdicts, reasons and timings, and the decision statistic reproduces from them.", + "The Swift file's licence is the publisher's own (Swift Open License v1.0, with the original Qwen parts under Apache-2.0); the Modelfile's LICENSE block is the library model's Apache-2.0 text. Recorded, not judged." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260922.json" + "path": "evidence/artifacts/new-wsl-local-models-20261002/part-a-receipt.json" }, { - "id": "catalog-freshness-20260923", - "kind": "upstream_provenance", + "id": "nextjs-1638-qualification-20261001", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex", - "llama-cpp", - "mcp-inspector", - "openresearch", - "skfolio" + "nextjs" ], - "claim": "Scheduled catalog-freshness run (https://github.com/seathatflowsinourveins/native-agent-stack/actions/runs/35934519434) rebuilt the SOTA-convergence manifest and found 13 component(s) with pin/upstream drift against the currently published manifest. This receipt, and the branch/PR it is registered from, are report-only: no catalogs/sota-convergence/*, catalogs/landscape/*.json, manifests/stack.json, or layer-verdicts* file was selected, evaluated, or changed by this run. A pin bump requires its own separately qualified receipt under evidence/artifacts/*/, produced by the existing SOTA-convergence lane review, not by this automation.", + "claim": "On host nativestack-5975wx-20260925 on 2026-10-01, the application-delivery recipe was qualified at Next.js 16.3.8 (tag v16.3.8, commit b0fad0d45eb4c4430fda5eeeb442e8a5af08a5f6, released 2026-09-30T16:13:46Z), whose release notes list seven security advisories, the most severe GHSA-cjq9-62q9-8jv4 (high: server-side request forgery in Image Optimization). The two-file patch (package.json and pnpm-lock.yaml, sha256 570ac44d237b6641a5087fe57b079aaf61dcb781b6496a721b0224dd17ea60d0) changes next, @next/env and the eight @next/swc-* lock entries, every other lock entry byte-identical. With Node v24.21.0 and pnpm 12.4.2 the frozen install, the peer check, the typecheck and the production build each exited 0 (recorded at 16:07:49Z), after a first frozen install at 12:13Z exited 1 with ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION for the ten packages published on 2026-09-30; no exclusion or policy change was made.", "limitations": [ - "This is drift detection only: it reports that a pin or upstream 'latest' value differs from the published manifest; it does not evaluate, select, or adopt any candidate, and it changes no catalog selection file.", - "component_ids lists only this run's drifted rows whose id is also a manifests/stack.json component; it is not a claim that every drifted id in the full drift report was reviewed.", - "Components with no reliable upstream data this run (an unfinished/bounded fetch, or a releases/tags/commit fetch problem for that repository) have their upstream comparison excluded; a pin change on such a row is still reported as drift (the pin comes from the local catalogs), with its fresh upstream fields empty. A component fetched successfully but with no GitHub release or tag at all is also not counted as drift.", - "The rebuilt manifest and drift table are read from this run's own catalog-freshness workflow artifact; this receipt does not independently re-fetch upstream sources." + "Bounded recipe checks only: make verify with its PostgreSQL, API and browser stages was not run, so the 2026-09-20 receipts still qualify 16.3.5, not 16.3.6 or 16.3.8.", + "The pnpm store, node_modules and build cache were warm from the earlier attempt; no cold-store install is claimed.", + "This recipe's exposure to the seven advisories was not established; the move removes the vulnerable versions from its lock.", + "Labels 15 to 17 are the version prints of Node and pnpm and a git diff check; they are metadata, not acceptance.", + "No new-host install ran: that is unit U10 on the new distribution. Provider usage of the builder is unknown." ], - "path": "evidence/receipts/catalog-freshness-20260923.json" + "path": "evidence/receipts/nextjs-1638-qualification-20261001.json" }, { - "id": "adoption-macos-hosted-smoke-20260923", + "id": "notification-types-20260929", "kind": "native_cli_e2e", "component_ids": [ - "codex", - "claude-code", - "context-mode", - "ai-memory", - "mcporter", - "llama-cpp", - "qdrant" + "claude-code" ], - "claim": "On a GitHub-hosted macOS arm64 runner (label macos-15, macOS 15.7.9 build 24G830), adoption-bootstrap run 35875188590 at head 75a6e0d, the PR #94 branch, passed every job. bootstrap-macos: adoption/bootstrap-macos.sh --profile macos-arm64-foundation installed the pinned darwin-arm64 set into a disposable ECO_INSTALL_ROOT, including the pinned embeddinggemma-300M-Q8_0 model (sha256 checked). launchd-agents.sh rendered, linted, bootstrapped and booted out the qdrant and llama-embed LaunchAgents. qdrant health reported 1.19.1. The llama-embed embedding acceptance passed: dimension 768, cosine 0.99944 against the Linux CPU reference vector evidence/artifacts/macos-embed-reference-20260923/, threshold 0.99. The llama.cpp startup log assigns layers to Metal device MTL0, with flash attention on CPU. bootstrap-macos-brew: the Homebrew prerequisite path completed. validate-macos: validators, the adoption test modules (238 tests OK) and a real host_receipts.py record/validate/component_matrix/new_host_grand_list smoke in a throwaway checkout copy passed, on setup-python 3.13.15 and on the runner's system /usr/bin/python3 3.9.6.", + "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", "limitations": [ - "This is native operation on a GitHub-hosted macOS arm64 runner only. It is not acceptance on a user's Mac workstation, which must record its own receipt with host_receipts.py and --second-physical-machine plus an independent review.", - "platform_profiles[macos-arm64] stays drafted_not_accepted. No macos-arm64 platform_status is changed by this receipt.", - "The launchd agents ran for the duration of one job in the runner's GUI domain. Persistence across logins, reboots and user sessions was not observed.", - "The non-gating full python3 -m unittest on this runner ran 2929 tests with 29 failures and 95 errors, recorded as an artifact. Most failures come from macOS's symlinked temp directories (/var/folders and /tmp resolve to /private/...) tripping repository path-containment checks, plus Linux-only tests not skipped on macOS. They are tracked as a follow-up and not claimed as passing." + "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", + "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", + "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", + "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", + "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", + "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", + "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", + "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", + "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", + "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." ], - "path": "evidence/receipts/adoption-macos-hosted-smoke-20260923.json" + "path": "evidence/receipts/notification-types-20260929.json" }, { - "id": "wsl-retrieval-20260920", - "kind": "historical_inventory", + "id": "ns2604-e2e-20261004", + "kind": "native_model_e2e", "component_ids": [ - "ast-grep", - "qmd" + "claude-code", + "codex", + "omniroute" ], - "claim": "Incomplete historical WSL fixture reference: selected receipts report 22 source checks/six commands and 70 QMD lexical checks/17 commands. Offline byte and result consistency can be checked, but missing command argv/cwd, unrecovered raw logs and unsupported historical QMD installation prevent native E2E or adoption acceptance.", + "claim": "The historical 2026-10-04 foundation E2E covered 15 units and 80 slots through native executor observations, independent model review and 22 adjudications. Final labels are READY 18, PARTIAL 31, FAIL 2, BY_DESIGN 12 and INTERIM 17, with zero unjudged slots. Readiness is (18 + 12) / 80 = 37.5%, rounded half up to 38%; all 22 executor/reviewer disagreements were adjudicated, with 14 keeping the reviewer's status and 8 taking the executor's. This publication independently checks and sanitizes the retained status chains; it does not repeat host or provider execution. The adjudication prompt as run, claude-opus-5-5 at max effort with evidence-reviewer run records and timestamps, and the separate 33-slot fix list are retained.", "limitations": [ - "Historical reference only; not live verification, native E2E acceptance or adoption evidence. No new host/native/client acceptance follows from these artifacts.", - "Historical command facts omit argv and cwd. Exact raw-log locations are unavailable; no invocation was reconstructed or represented as observed.", - "The unchanged historical install receipt records npm --ignore-scripts --omit=optional. Future installation must use the current supported recipe with NODE_LLAMA_CPP_SKIP_DOWNLOAD=true and required dependency scripts enabled.", - "Both executed runner versions and the initial URI-checker failure are retained byte-for-byte. The future runner adds command provenance capture without changing past evidence.", - "Receipt-reported 22/70 checks and 6/17 commands describe selected local/synthetic fixtures. Five failed-attempt commands remain separate; no upstream-suite, semantic RAG, production, client or service acceptance.", - "Source currency remains September 20; offline completion and review do not refresh releases or native execution. Whole-task provider usage is unknown and no savings claim is made." + "Host state is as of 2026-10-04 19:10\u201320:10Z only; later adjudication and source merge timestamp 2026-10-04T20:26:16Z do not extend that observation window. Publication and repair perform artifact inspection and structural checks in the owned sandbox; they do not repeat native host probes.", + "Fixes are pending. The 33 PARTIAL/FAIL slots after adjudication are not accepted as ready: 25 repository-plan and 8 host fixes (evidence/artifacts/ns2604-e2e-20261004/fixes.json). Four INTERIM token slots (context-supply, command-output, output-compression, code-index) are held for PR #684, which has not merged. The two open token slots have separate fixes: ccusage (FAIL, plan) and statusline (PARTIAL, host).", + "This is not an upstream benchmark. Native executor observations, independent model judgments and adjudication are separate from upstream tests, structural checks, independent host replication and measured quality or token improvement.", + "The 17 INTERIM slots are held by design. They remain in the denominator and contribute zero to the readiness numerator; the 12 BY_DESIGN slots are intentional dispositions rather than proof that their tools executed.", + "Adjudication: claude-opus-5-5 at effort max (evidence-reviewer), prompt template as run in evidence/artifacts/ns2604-e2e-20261004/adjudication-prompt.md. Run wf_8bf450a9-d1e (17 agents) started 2026-10-04T20:06:45Z and completed 2026-10-04T20:20:30Z; run wf_cdbf70a0-02c (5 agents) started 2026-10-04T20:08:29Z and completed 2026-10-04T20:19:31Z.", + "Historical source command excerpts and raw conversations remain private. Public reasons are bounded to 60 words, fixes preserve the merge's 900-character bound before sanitization, and citations are limited to four per slot. Hashes establish byte identity, not success or adequacy of every native acceptance claim.", + "Reviewer records report the requested gateway model cx/gpt-6.1-sol-max and max effort; no resolved backend model identity is inferred. Independent model review is review of retained evidence, not independent execution on the host.", + "The coordinator registers all eight published files in manifests/evidence.json in the PR's final registry-only commit, and full repository validation passes at that head. Per-file scans and local receipt tests are structural evidence only." ], - "path": "evidence/receipts/wsl-retrieval-20260920.json" + "path": "evidence/receipts/ns2604-e2e-20261004.json" }, { - "id": "gitleaks-macos-memory-bound-20260924", - "kind": "native_cli_e2e", + "id": "omniroute-3851-npm-qualification-20260930", + "kind": "compatibility_attempt", "component_ids": [ - "gitleaks" + "omniroute" ], - "claim": "On one MacBook Pro (Apple M5 Pro, 24 GB, macOS 26.5.1) with gitleaks 8.30.1, the 2026-09-24 09:45 Jetsam events were reproduced: a staged generated explorer (one 12,889,851-byte line, 2,335 findings) drives the global pre-commit hook's `gitleaks git --pre-commit --staged --redact` past 6 GiB in about 17 s, and the recipe's all-refs `gitleaks git --redact=100` past 8 GiB in 36 s, because upstream redaction copies the whole line for every finding. Through adoption/tools/gitleaks-guarded-macos the same scans stop at the 6 GiB footprint cap with exit 137 (the hook then blocks the commit), concurrent scans run one at a time under the per-user lock, and dir scans, the CI-scope history scan and small hook scans keep their upstream results and exit codes.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", "limitations": [ - "One host and one repository state (source 5af3581); a different history, staged content or Gitleaks release can change every peak.", - "The guard is a user-space watchdog that samples the process tree's physical footprint every 50 ms, not a kernel limit: measured overshoot was 0.04-0.20 GiB above the 6 GiB cap across the development and final passes, and a scan keeps running unwatched if the guard itself is SIGKILLed (it still holds the lock).", - "Measured with the lock at a scratch path (ECOSYSTEM_GITLEAKS_LOCK); the default per-user lock file, installation on PATH and the global hook change were not installed on this host by this unit and remain the agent-ecosystem owner's step.", - "No CPU or task cap on macOS: the killed history scan used about 16 cores for 37 s.", - "Scans that exceed the cap produce no result (exit 137). This is fail-closed, not coverage: the all-refs history of this repository still has no complete redacted Gitleaks pass on macOS.", - "The incident attribution (a test scratch commit through the global hook, before #181 made the tests hermetic) is inferred from process ages, coalitions and session records; the Jetsam reports carry no argv.", - "Raw stderr, reports and the Jetsam files stay on the host; published values are sanitized (paths replaced by placeholders, no process or session identifiers)." + "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", + "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", + "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", + "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", + "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", + "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", + "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", + "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", + "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." ], - "path": "evidence/receipts/gitleaks-macos-memory-bound-20260924.json" + "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" }, { - "id": "env-freshness-wsl-ubuntu-main-20260924", - "kind": "artifact_measurement", + "id": "omniroute-claude-callsite-20260930", + "kind": "native_model_e2e", "component_ids": [ - "nautilus-trader", - "alpaca-py", - "duckdb", - "pandas", - "edgartools", - "exchange-calendars", - "vllm" + "claude-code", + "codex", + "omniroute" ], - "claim": "On one WSL Ubuntu host, 13 isolated tool environments were inventoried with their own interpreters and the watched trading/foundation packages compared with PyPI on 2026-09-24: 34 current, 2 on the newest pre-release (nautilus-trader 2.0.0rc5), 11 behind the latest stable (deltalake 1.6.4 vs 1.6.6, openai-codex 0.154.0 vs 0.156.1, and the numpy/torch/vllm pins inside the vllm 0.25/0.29/0.30 environments).", + "claim": "A native Claude Opus5.5/Max coordinator discovered and read the project dispatcher, invoked the official Sol-Max Codex SDK worker through native Bash, and the retained original shows one unchanged fixture test with exit0.", "limitations": [ - "PyPI index only: git-pinned or other-index installs read as ahead_of_index or unknown.", - "CLIs and non-Python tools are covered by the catalog GitHub freshness snapshot, not by this report.", - "One host; each PC publishes its own report under the same schema.", - "Reports status only; upgrades and adoption stay with the SOTA-convergence lane review." + "One bounded read-only callsite and existing arithmetic oracle; no universal quality or SDK winner claim.", + "Coordinator tool scope was Bash/Read/Skill for this acceptance; other coordinator tools and optional MCP services are not qualified.", + "Native Claude and external Codex SDK usage remain separate scopes; parent list-price cost is not complete provider billing.", + "The separate Claude SDK Devin bridge remains failed/unqualified; this native Claude-account coordinator run does not promote it.", + "Provider backend identity, overall task usage, failed/interrupted calls, remote cancellation and token savings remain unverified." ], - "path": "evidence/receipts/env-freshness-wsl-ubuntu-main-20260924.json" + "path": "evidence/receipts/omniroute-claude-callsite-20260930.json" }, { - "id": "vllm-030-switch-20260925", + "id": "omniroute-runtime-enhancements-20260930", "kind": "native_model_e2e", "component_ids": [ - "vllm", - "socraticode" + "codex", + "omniroute", + "context-mode", + "serena", + "dagu" ], - "claim": "vLLM 0.30.0 now serves the production Nemotron-3-Embed-1B-BF16 embeddings on the NativeStack WSL2 RTX 4090 host. Qualified first on an owned instance against production 0.25.0 (identical model files, flags and route), then switched by a systemd drop-in that changes only the binary path; the live service returned identical embeddings and identical top-10 code-index results after the switch.", + "claim": "A scoped native Codex SDK Sol-Max worker completed skill use, selected Context Mode/Serena MCP calls, one Astra-Max native judge and an unchanged oracle through OmniRoute in a successful bounded Dagu graph.", "limitations": [ - "One host (NativeStack, RTX 4090, WSL2 Windows driver 616.64) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", - "Retrieval equality covers 8 gate texts and 5 live code-index queries (top-10), not an aggregate retrieval-quality benchmark.", - "0.30.0 relies on its pinned-memory fallback for WSL (PR #56908); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", - "The 0.25.0 prefix is kept for rollback; the base unit still names it and only the drop-in points at 0.30.0." + "One unchanged arithmetic fixture and bounded integration; no universal highest-quality model, framework or SDK ranking.", + "169 enabled skills were visible through native discovery. This run read using-superpowers and exercised three selected MCP calls; it does not qualify every installed skill, tool, language server, plugin or hook.", + "Native hook support and live web search are configured, but their execution is unmeasured here. No scheduler, schedule, hook or global account configuration was installed by this kit.", + "Native parent and child cumulative usage are separate scopes. Cached input and reasoning are subsets; observer response counters corroborate the same usage and must not be added. Failed/interrupted and complete provider usage, billing and token savings remain unknown.", + "Each observed completed stream also has an unclassified flow_error record. Native results completed; transport is not described as error-free, and requested model/provider labels are not backend identity attestation.", + "The separate Claude SDK Devin bridge retains its failed/unqualified status. Earlier native Claude-to-SDK acceptance is a historical separate callsite, not a rerun against this source.", + "The follow-up native Claude cooperation session was stopped after no confirmed SendMessage/final packet; no peer approval or new owner-contact count is claimed.", + "The isolated kit is a scoped private worker configuration. Live owners retain shared worker policy, host-wide catalogs/defaults and dashboard checkpoint ownership." ], - "path": "evidence/receipts/vllm-030-switch-20260925.json" + "path": "evidence/receipts/omniroute-runtime-enhancements-20260930.json" }, { - "id": "rtk-050-qualification-20260925", - "kind": "native_cli_e2e", + "id": "omniroute-runtime-workers-20260930", + "kind": "native_model_e2e", "component_ids": [ - "rtk" + "codex", + "claude-code", + "omniroute" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", + "claim": "The retained official Codex SDK Sol-Max worker passed one upstream coding fixture, native resume and fresh recovery through the selected OmniRoute Responses lane. Interrupted usage and Claude bridge qualification remain unknown/failed.", "limitations": [ - "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", - "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", - "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", - "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", - "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", - "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", - "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." + "One arithmetic fixture and lifecycle acceptance; no universal SDK or model quality ranking.", + "Actual provider trials invoked the SDK from root, rather than through a Claude coordinator. Native project dispatch skill is supplied and structurally checked; its coordinator invocation remains unmeasured.", + "Native Codex SDK remains the incumbent. The separate frozen three-arm SDK gate remains unresolved.", + "Native gateway requested/returned model labels are not backend attestation.", + "All 136 skills are available in the owned project, with two bodies exercised; full role coverage and optional service acceptance remain incomplete.", + "Native Codex repeated in-process fixtures emit stdout/stderr ResourceWarnings; standalone per-invocation child exit is qualified separately.", + "Complete provider usage, spending, remote cancellation and token savings remain unknown.", + "Public record is sanitized selected actual return fields and independent observations; original private returned artifacts remain outside the checkout." ], - "path": "evidence/receipts/rtk-050-qualification-20260925.json" + "path": "evidence/receipts/omniroute-runtime-workers-20260930.json" }, { - "id": "markitdown-018-qualification-20260925", - "kind": "native_cli_e2e", + "id": "omniroute-sdk-worker-0160-20261003", + "kind": "native_model_e2e", "component_ids": [ - "markitdown" + "codex", + "omniroute", + "context-mode" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, markitdown 0.1.8 was qualified against the installed 0.1.7 and then switched into production. The PyPI wheel (sha256 de7375a50578a39bcbbf13b48c67d99033d988e0ae8ad25af46ed432dbe4cbab, 89,737 bytes) and sdist (sha256 17188ad827ea79fc264c7b1ca8cf5a242a16278d84cc32f2edc475dbe92812ed, 69,112 bytes) matched PyPI's JSON and Simple API digests before `uv tool install --python 3.13` put the base package into a new tools/markitdown-0.1.8 prefix (20 packages; 45 of 45 package files byte-identical to the verified wheel). The candidate passed all 10 legs of run_arm.py: `--version` 'markitdown 0.1.8', greeting.md, 8k.md and 8-K stdout hashes (the stdout equal to the retained a27f0f27...), the discriminator hashes, check_outputs.py 12 PASS, the PDF refusal naming markitdown[pdf], the 20-package set with no extras and the consumer document. 0.1.7 failed exactly the version leg, the four 0.1.8 discriminator checks (8 PASS / 4 FAIL) and the markitdown line of the package set; the fixture, 8-K and consumer outputs and all 19 committed HTML files at ae30f94b converted byte-identically under both, and the 19 other distributions were byte-identical. An independent verifier reproduced these and agreed. The coordinator then repointed bin/markitdown to the new prefix; `markitdown --version` printed 'markitdown 0.1.8' and run_arm.py against the production path passed 10 of 10 legs.", + "claim": "The SDK 0.160.0 B3 review candidate addresses all five PR #628 bot findings and passed twelve of twelve twenty-five-test native loopback fixture invocations, 26 local Claude SDK tests, six observer tests and final Ruff checks. Each reported bug has a retained failing-before-repair command and a passing counterpart. B2 metadata preflight and the earlier builder/coordinator live observations remain historical; no B3 live model task ran. Writing dispatch, live keyed-shell/search qualification and backend effort remain unobserved.", "limitations": [ - "Production runs the qualification prefix (a prefix flip), not install_pin's python-tools layout: its uv-receipt carries [tool.options] exclude-newer = \"2026-09-25T17:00:00Z\" and link-mode = \"copy\" and records python \"3.13\", which freezes `uv tool upgrade` inside that prefix. The refuter's primary promotion gate (install_pin's form without --exclude-newer, then production pip-list equality and an exclude-newer-free receipt) was not run. A new host's bootstrap runs `uv tool install --python 3.13 markitdown==0.1.8` without --exclude-newer, so its transitive set can differ from the qualified 20-package set once newer compatible dependency releases appear.", - "The 0.1.7 env python-tools/markitdown stays installed for rollback (re-point bin/markitdown), and its bookkeeping still reports 0.1.7. How a later install_pin run interacts with the flipped symlink was not tested.", - "0.1.8 changes output for (kept as inline HTML), (~~text~~), %2F path escapes (preserved) and data-src images (preferred over a data: placeholder). These were shown only on the synthetic discriminator; the committed corpus has none of them in affected positions, real filings containing them were not tested, and a consumer that requires Markdown without raw HTML tags would now see .", - "Local integration evidence (the reviewer-authored checker plus the refuter's legs), not the unchanged upstream suite: `hatch test` was not run on this host; the upstream CI pass on PR #2545 is research-reported. The [pdf]/[docx] extras were not exercised.", - "Integrity rests on PyPI's published digests and post-install byte equality with the verified wheel. The sha256 recorded in adoption/pins-linux-x86_64.json is not passed to uv (install_pin runs `uv tool install --python 3.13 markitdown==`); whether uv verifies an index-provided digest itself was not established here. PyPI publishes no PEP 740 attestation for 0.1.8.", - "The no-extras grep leg misses some extras (an [az-doc-intel] addition passed it in the verifier's mutation test); only the exact 20-package equality leg gates the package set. Importing onnxruntime 1.30.0 writes $TMPDIR/.ses and an empty mat-debug-.log on every call, in both versions; the qualification runs left such files in /tmp.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the document-retrieval winner pin markitdown 0.1.7 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.1.8 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json has no markitdown pin and is unchanged; nothing here is macOS evidence.", - "One host (NativeStack, WSL2). The first post-switch run aborted before any leg because its run directory already existed; the retained 10-of-10 result is the rerun into a new directory. This receipt, not the 2026-09-23 qualification in evidence/artifacts/sota-refresh-20260923/pins-mem/markitdown.json (another host, another install kind, a non-discriminating check), is the basis for the 0.1.8 pin.", - "2026-09-26 retention correction (Codex post-merge review of #291): the claim's 45-of-45 installed-byte figure first rested on a summary line. verify_installed.py, the run directories behind run_arm.py's checker counts (converted documents, PDF stderr with the home directory replaced by ~, package listings) and the independent verifier's integrity and checker outputs are now retained. The 2026-09-25 stdout of verify_installed.py and run_arm.py's raw checker stdout were never written to files. out/verify-installed-rerun-20260926.out, out/installed-files-20260926.json and out/checker-rerun-20260926.out are 2026-09-26 read-only re-runs on the production prefix and the retained directories (results.json corrections and not_retained)." + "Authored loopback SSE fixtures, local Claude SDK tests and observer tests are integration/synthetic checks, not unchanged upstream suites or provider-model trials.", + "The pre-B2 builder live task returned the correct data while two native shell attempts failed in its enclosing Codex sandbox and a Context Mode call failed with Transport closed. A separate coordinator, outside a nested Codex sandbox, observed read-only shell success at that candidate. The repaired bytes have no new live-model run; error-free MCP transport and writing (workspace-write) dispatch remain unqualified at 0.160.0.", + "Plugin disabling is the selected native feature gate. Tests observe direct app-server PID termination and absence of clone directories; descendant cleanup and global non-loopback egress are not observed.", + "Metadata preflight submits no inference. No skill was installed in the new private home and no --require-skill was used; inherited/project catalog discovery does not qualify every skill or tool.", + "Requested model/Max effort and live catalog entry are observed; gateway-forwarded effort, backend model identity, complete provider usage, cost, remote cancellation and token savings remain unknown.", + "September 30 receipts and original observations remain historical. This refresh does not rerun the historical coding oracle, Claude callsite, Astra judge, Dagu graph or unchanged upstream SDK suite.", + "Exactly pinned private SDK preflight/PID attributes require review on every pin move. Stable Python SDK and experimental, unsupported-for-production app-server are separate support boundaries.", + "Expected ResourceWarning messages and argparse rejection output remain in private fixture logs. Long-lived SDK pools, alternative approval modes, alternate binary, credential-variable path, workspace-write live execution and scheduled Dagu acceptance remain unqualified.", + "Initial Ruff failure exits are retained from native task returns, but exact full output/timing was not saved. Repository validators prove declared consistency, not the truth of provider or historical claims.", + "Earlier checkout and alternate-index validation failures are retained as before-B2 attempts. The coordinator force-added the project skill to the real index; B2 acceptance uses that actual checkout index. Historical source archive acceptance does not replace current checkout acceptance.", + "If the cleanup bound expires during retained startup or close, cleanup_status is unresolved and the CLI exits nonzero. Continued deferred cleanup is observed only while the embedding event loop remains running; no post-bound standalone cleanup or remote termination guarantee is made.", + "B3 repairs have local regression/configuration acceptance only: no live model tasks, keyed gateway shell trial, standalone search endpoint trial or native Claude connect fault injection. The native SDK retains its own shielded cleanup/transport bounds; wrapper grace does not override them." ], - "path": "evidence/receipts/markitdown-018-qualification-20260925.json" + "path": "evidence/receipts/omniroute-sdk-worker-0160-20261003.json" }, { - "id": "ai-memory-240-qualification-20260925", + "id": "openresearch-0215-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "openresearch" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, ai-memory 2.4.0 was qualified against the installed 2.3.2 and then switched into production. The release asset ai-memory-linux-x86_64.tar.gz (15,969,555 bytes, sha256 590f75ddaf0f8f1a07b70ba20900de717b89c3f6c46e6e5e0540ade302795076) matched the release .sha256 sidecar, the GitHub API asset digest and the release body before it was extracted into a new tools/ai-memory-2.4.0 prefix (binary sha256 360b9dff30537cc514876eab0c4df0d57b9c8c8bb1c62d4a9240f0264e246344, 'ai-memory 2.4.0'). On restored copies of an online backup of the live store, the 2.3.2 baseline passed 16/16 checks on its second attempt (the first failed only its embedding-status probe) and the 2.4.0 rehearsal passed 19/19: migration V64 -> V66 (66 rows) with quick_check ok, 0 pages missing or changed and 0 observations missing; /healthz 200; GET /mcp 405 with allow: POST; protocol 2024-11-05 with 23 tools named as in 2.3.2; the known page's body sha256 equal to the 2.3.2 read; unchanged allowlist check-capture; both the 2.4.0 and the 2.3.2 hook clients captured into the 2.4.0 server; no pre-migration archive; and 2.3.2 serve on the migrated copy exited 1 with 'memory database schema is newer than this ai-memory build'. An independent verifier reproduced these with its own probe code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 20:43:48Z and quiesced (0 ai-memory processes, 0 database users); the quiescent store read V64 (64 rows), quick_check ok, 36 pages and 77,213 observations; an at-rest cold copy (336 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.0; the upstream install-hooks --apply changed only the binary path on 8 Claude and 7 Codex commands; the service started at 20:44:37Z and applied V65__page_compacted_marker and V66__auto_improve_claim_attempts; /healthz returned 200 with NRestarts 0; the fingerprint compare V64 -> V66 passed (66 rows, quick_check ok, 36 pages with 0 missing or changed, 0 observations missing, 77,330 after); status --json reported 2.4.0; memory_status returned scope resolved_by explicit; a known page's body was unchanged (sha256 prefix 98eb1dfb4fc6b0f5); and a fresh headless claude -p session at 20:45:10Z produced session-start, pre-tool-use, post-tool-use, stop and session-end observations. A read-only read-back at 20:54:04Z found bin/ai-memory on tools/ai-memory-2.4.0, /healthz 200 and 8 Claude plus 7 Codex hook commands on 2.4.0.", + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing until the user reviews and trusts them in Codex /hooks; Codex is usage-limited until 2026-09-30. Real Codex capture and Codex-format hook payloads through 2.4.0 were not observed. The rendered adoption/templates/codex.config.template.toml still carries the trusted_hash entries recorded for the pre-switch commands.", - "The migration is forward-only: after V65 and V66, 2.3.2 refuses the store with DataSchemaAhead, and 2.4.0 writes no automatic pre-migration archive for a store created by 2.x (snapshot_before_db_migration is gated to the 1.x to 2.0 upgrade). Rollback is the coordinator's private at-rest cold copy, a relink to the retained tools/ai-memory-2.3.2 prefix and the installer's .bak-1790369060 hook files; writes made after the cold copy would be lost from the live store. The rollback was not exercised on production, and `ai-memory restore --force` was not run.", - "GHSA-9pj6-vhgr-3mwh (CVE-2026-63128, rmcp < 2.0.0 Streamable-HTTP session-table leak), fixed by rmcp 2.2.0 in 2.4.0, was not reachable here: the service runs stateless (no --http-stateful; GET /mcp returns 405 with allow: POST) and the leak is in the stateful create_session path. The upgrade removes the three rmcp advisories from the dependency set; it did not close an exposed path on this host, and no exploit was attempted on either version.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 (the macos-aarch64 archive) and is unchanged; nothing here is macOS evidence. The shared Claude settings template now names tools/ai-memory-2.4.0, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix until a Mac qualifies 2.4.0 itself.", - "Evidence class: our own integration checks (the locally authored aimem_accept.py driver and the verifier's rerun.py) plus coordinator observations; upstream unit and integration tests were not re-run (no Rust toolchain). The cutover facts are coordinator observations exported as aggregates in cutover.json; the cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404) and the release is not immutable.", - "At the writing worker's 20:54:04Z read-back, the host's installed-versions.txt ai-memory record still read 'ai-memory 2.3.2' (the mcporter record had been updated), so tools that read that record misreport this host until it is updated.", - "The qualification's own production before/after compare failed 1 of its 19 checks (results/prod-compare-before-after.json, pass false): claude_settings_unchanged, because ~/.claude/settings.json changed at 19:01:59Z during the qualification window. The writer was not identified, and nothing ties the change to this unit: no scratch ai-memory process existed then, install-hooks was not run, and the file's ai-memory hook lines stayed 8 on 2.3.2. Production hook and config files were otherwise fingerprinted only by hash and hook-path counts.", - "Not observed: whether Claude Code sessions that were already running reload the rewritten hooks (the capture check used a fresh session), 2.4.0 behaviour over time (decay, access reinforcement, scheduler ticks), web UI behaviour beyond /healthz, and the #792 fix, not in 2.4.0 (released in v2.4.1 at 2026-09-25T21:46:32Z). One host (NativeStack, WSL2); the rehearsal used an online backup that is SQLite-consistent but not proven atomic across db, wiki and config, and its scratch servers ran for seconds." + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/ai-memory-240-qualification-20260925.json" + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" }, { - "id": "mcporter-0141-qualification-20260925", + "id": "otelcol-contrib-0162-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "mcporter" + "opentelemetry-collector-contrib" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, mcporter 0.14.1 was qualified against the installed 0.13.13 and then switched into production. The npm tarball https://registry.npmjs.org/mcporter/-/mcporter-0.14.1.tgz (464,028 bytes) had sha256 8e489864d7118863f516d0d22ca1d43b862b9d93228489c39617c2c130d810f2, equal to the GitHub release v0.14.1 asset digest and checksums.txt, and integrity sha512-/6pvMjFPlCtFU3NhzWEV8vj2EwvbY2nisc8XYDwtPiyApj8v6A+B0Va5ul018oqSEkw7BiKCLoazBc4l+8QsdQ==, equal to npm dist.integrity; npm audit signatures reported 41 packages with verified registry signatures and 13 with verified attestations, including mcporter@0.14.1's SLSA provenance from release.yml at refs/tags/v0.14.1, commit 93e0916cafe2d624b94271e31b75ca681a016514. It was installed from that verified file into a new tools/mcporter-0.14.1 prefix. The same 37-step acceptance, run in isolated MCPORTER_DAEMON_DIR namespaces with a scratch config against the live Qdrant, embedding and ai-memory services, passed 37/37 on 0.14.1 and 37/37 on the matched 0.13.13 baseline with identical per-step outcomes and exit codes. It covered the retained mcporter install receipt and the socraticode, jcodemunch-mcp and context-mode use receipts; ctx_doctor; list ai-memory (23 tools) and list jcodemunch (6 tools); the token-report one-off stdio call; daemon status with protocolVersion 3; ctx_execute_file and ctx_execute; keep-alive persistence; ai-memory memory_status; daemon stop, relaunch and restart; the SIGKILL refusal ('Previous daemon exited unexpectedly ... No replacement was launched.') and deliberate recovery ('Single-user daemon started.', bridge-recovered); and a held startup lock failing with 'did not become ready within 45 seconds' and recovering after the holder exited. The resolved dependency trees differ only in rolldown 1.2.8 -> 1.2.9 (@oxc-project/types 0.149.0 -> 0.150.0) and string-width 8.2.2 -> 8.3.0. An independent verifier re-ran the candidate arm, bound all 40 installed dependencies to their registry tarballs, verified 41 of 41 registry signatures with openssl and agreed; it also measured that with no ps on the daemon's PATH 0.14.1 fails a keep-alive call and `mcporter daemon stop` while 0.13.13 passes both. With no daemon running, the coordinator relinked bin/mcporter to tools/mcporter-0.14.1/bin/mcporter at about 20:12Z; with the host config, `list socraticode --brief --no-oauth` listed 26 tools, `call socraticode.codebase_health` printed the health check with Qdrant reachable, and the next call started a 0.14.1 daemon. A read-only read-back at 20:54:04Z found bin/mcporter on tools/mcporter-0.14.1, `mcporter --version` 0.14.1 and the installed-versions.txt mcporter record 0.14.1.", + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", "limitations": [ - "0.14.x runs `ps` from PATH (0.13.13 ran /bin/ps). The verifier measured that when the daemon's PATH has no ps, 0.14.1 cannot connect a keep-alive server ('Transport ownership could not be verified') and `mcporter daemon stop` refuses ('Retirement is unverified'), while 0.13.13 does both; the 37-step acceptance ran with ps on PATH and cannot detect this. It works on this host because the daemon inherits the launching shell's PATH and no systemd unit, crontab or client hook launches mcporter. Any unit, agent or container that launches the daemon needs ps on its PATH, and a 0.14.1 daemon started without it must be retired by signal.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcporter 0.13.13 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.14.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps mcporter 0.13.13 and is unchanged. The npm tarball is platform-independent, but a Mac needs its own acceptance; nothing here is macOS evidence.", - "The qualification ran with a scratch config (serena and headroom dropped; SOCRATICODE_WATCHER=off and SOCRATICODE_AUTO_RESUME=off), context-mode's server bundle inside bwrap with arm-private state and jcodemunch with a private copy of ~/.code-index, from a git-archive snapshot of the repository at 7783682f. The host config itself was exercised only by the coordinator's post-switch list and codebase_health calls.", - "Not exercised: a mixed-version daemon cutover (no daemon was running at the switch), the shared ~/.mcporter namespace under load, the unresponsive-daemon (SIGSTOP), scoped-registration-cleanup and changed-process-root lifecycle stages, OAuth (every call used --no-oauth), emit-ts/generate-cli, --persist, --tail-log and the Chrome relay. In the SIGKILL stage no transport outlived the daemon, so the manual orphan-TERM step had nothing to act on.", - "Local integration evidence, not the unchanged upstream suite: `pnpm check` and `pnpm test` at v0.14.1 were not run on this host; upstream CI on the tag commit is research-reported. One run per arm on the final harness, plus a retained baseline attempt that failed from a harness TMPDIR artifact; timings and the order of tied search results are run-level values.", - "The sha256 pin covers mcporter's own tarball only: npm resolves the dependency ranges at install time and the package ships no shrinkwrap, so a later install can differ from the qualified tree (verify/npm-ls-0.14.1.txt). The fast-uri 3.1.0 copy bundled in @modelcontextprotocol/client 2.1.0, on the output-schema validation path, has open advisories in both 0.13.13 and 0.14.1; it was not re-verified here, and no SDK release ships a fixed bundle.", - "Production hook and config files were not fingerprinted before and after the qualification; ~/.claude/settings.json and ~/.codex/config.toml changed during or just after the window; the writer was not identified, and nothing ties the change to this unit. The Qdrant snapshot create and delete counters rose by 5 each in the window, from the socraticode unit's snapshot copy; point upserts and deletes did not move until after the run." + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/mcporter-0141-qualification-20260925.json" + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" }, { - "id": "ai-memory-241-qualification-20260925", + "id": "playwright-cli-0122-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "ai-memory" + "playwright-cli" ], - "claim": "On host nativestack-5975wx-20260925, ai-memory 2.4.1 was qualified against production 2.4.0 on 2026-09-25 and switched into production on 2026-09-26. The v2.4.1 asset ai-memory-linux-x86_64.tar.gz (16,026,020 bytes, sha256 15cafdc48eabc0305c164ccc8e884b260275f5a88b4f26e8456c2e42156375e4) matched the release body, the .sha256 sidecar and the GitHub API digest before extraction into a new tools/ai-memory-2.4.1 prefix (binary sha256 dec065a82478bec92a0c34323662af7e7ad616b222586356814b4875053aa8dd, 'ai-memory 2.4.1'). On separate restored copies of one online backup taken through the live 2.4.0 service (store V66), the 2.4.0 arm passed 26 of 26 checks and the 2.4.1 arm 28 of 28: /healthz 200, GET /mcp 405 with allow POST, 23 identical MCP tools with scope explicit, an unchanged known-page body, the write/query/read/delete round-trip, allowlist --check-capture, same-version and cross-version hook capture in both directions, and migration V66 -> V67 (67 rows) with 0 pages missing or changed and 0 observations missing; 2.4.0 then refused the V67 copy with rc 1 ('memory database schema is newer than this ai-memory build: the store has migration V67 (managed_run_session_link) applied, but this build only ships migrations through V66\u2026'), and a fresh copy reopened under 2.4.0 at V66. Re-applying install-hooks with 2.4.1 changed only the binary path on 8 Claude and 7 Codex lines. In a private network namespace, 2.4.1 set keepalive on 65 of 65 accepted sockets and reclaimed all 60 vanished peers by t=75 s, while 2.4.0 held all 60 at t=100 s (#792). During qualification the production store schema (V66) and all pre-existing pages and observations were unchanged. An independent verifier reproduced these with its own code and agreed. The coordinator then performed the user-approved cutover: the service stopped at 2026-09-26T00:14:12Z; the quiescent store read V66 (66 rows), quick_check ok, 40 pages and 86,219 observations; an at-rest cold copy (378 files) fingerprint-matched it; bin/ai-memory was relinked to 2.4.1; install-hooks --apply changed only the binary path on 8 Claude and 7 Codex lines; the service started at 00:19:51Z and applied V67__managed_run_session_link; /healthz returned 200 with NRestarts 0; the fingerprint compare V66 -> V67 passed with 0 pages changed, 0 observations missing and 86,219 after; status --json reported 2.4.1; memory_status returned scope resolved_by explicit; the known page's body was unchanged; keepalive timers were on 2 of 2 established sockets; and a fresh headless claude -p session captured session-start, pre-tool-use, post-tool-use, stop and session-end. A read-only read-back at 2026-09-26T00:30:40Z found bin/ai-memory on tools/ai-memory-2.4.1, 8 Claude plus 7 Codex hook commands on 2.4.1 and the installed-versions record at 2.4.1.", + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", "limitations": [ - "Pending, user-only: Codex skips changed hooks until they are trusted, so the 7 rewritten Codex ai-memory commands capture nothing through 2.4.1 until the user re-trusts them in Codex /hooks. Real Codex capture through 2.4.1 was not observed.", - "V67 is forward-only: after it, 2.4.0 refuses the store with rc 1. Rollback is the coordinator's private at-rest cold V66 copy, a relink to the retained tools/ai-memory-2.4.0 prefix and the installer's .bak-1790381983/.bak-1790381984 hook files (or a re-run of install-hooks with 2.4.0, which leaves unrelated settings edits alone); writes made after the cold copy would be lost from the live store. The rollback was not exercised on production.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the durable-memory winner pin ai-memory 2.3.2 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 2.4.1 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps ai-memory 2.3.2 and is unchanged; nothing here is macOS evidence. The shared Claude settings template names tools/ai-memory-2.4.1, so a Mac that renders it must point the hook commands at its installed 2.3.2 prefix.", - "The R1/A17 memory-stack rerun keeps official 2.4.0 as its control build, run in isolation, per the user's decision relayed by the token-efficiency session and recorded in issue #274 (https://github.com/seathatflowsinourveins/native-agent-stack/issues/274: the NativeStack rerun uses the official ai-memory v2.4.0 as the control build); this production move does not change that preregistered control.", - "Cutover caveat: the quiesce loop used `pgrep -f`, matched its own command line and waited its full 5 minutes. The service stop was synchronous before the loop, and the service was afterwards confirmed inactive (dead) with 0 ai-memory processes and 0 database users.", - "Evidence class: our own integration checks (the locally authored aimem2_accept.py and the verifier's verify_aimem.py) on restored copies, plus coordinator observations exported as aggregates in cutover.json; upstream tests were not re-run (no Rust toolchain), and upstream CI on 433a19f3 (57/57 success) is cited. The cold copy and fingerprint files stay private and were not read by the writing worker.", - "Integrity rests on three matching upstream checksum values plus the local download hash: the asset has no artifact attestation (HTTP 404), the tag is unsigned and the release is not immutable.", - "#792 was measured only for peers whose kernel answers keepalive probes with RST (TCP_REPAIR close in a private namespace, server as namespace root, not under the systemd unit); a blackholed peer would take about 10 minutes with kernel-default probes and was not measured. The #917 repair was a no-op here (0 latest pages with expires_at). #859 (embedding prefixes) is not in 2.4.1.", - "One host (NativeStack, WSL2). During qualification ~/.claude/settings.json was edited by other actors at 22:38:28Z and 22:51:48Z (feedbackDrafts and skillOverrides only; the hooks subtree was unchanged), so its whole-file sha256 in the snapshots is not a stable fingerprint." + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/ai-memory-241-qualification-20260925.json" + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" }, { - "id": "headroom-039-qualification-20260925", + "id": "portable-claude-native-qualification-20260921", "kind": "native_cli_e2e", "component_ids": [ - "headroom" + "claude-code", + "codex", + "prometheus" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, headroom-ai 0.39.0 was qualified against the pinned 0.37.0 and not switched; production stays on 0.37.0. Tag v0.39.0 is 66f426171bab32692cf93d2b656a8e4be9004186 and contains d971f7c3 (#3748; compare behind_by 0). Its manylinux_2_28_x86_64 wheel (14,199,952 bytes, sha256 8c7594012ce0dcd28202af471fb1bd08c6f226c8e10fc6a682b3fb233e809a74) matched PyPI JSON, the PyPI simple API and the GitHub release asset, and was installed with uv into the new prefix tools/headroom-ai-0.39.0; 555 of 555 headroom/ RECORD digests match the verified wheel and `headroom --version` printed 'headroom, version 0.39.0'. The unchanged upstream test file tests/test_transforms/test_content_detector_timestamp_search.py (blob 23b66a27) passed 6 of 6 on 0.39.0 and 4 of 6 on 0.37.0. Through `headroom mcp serve --proxy-url http://127.0.0.1:1` over stdio, 0.39.0 listed headroom_compress, headroom_retrieve and headroom_stats; compressed the 600-line ISO-timestamped fixture A 16820 -> 257 tokens with ['router:log:0.02'] (0.37.0: 16820 -> 11429 with ['router:search:0.68'], a lossless fold), showing 7 verbatim rows including the planted CRITICAL line 313 and then '[593 lines omitted: 1 ERROR]'; compressed fixture B 39064 -> 3292 with the same output as 0.37.0; returned both originals byte-exact; resolved the summary's 'Retrieve more' hash f681f64d7ad6f5b3c5fc56c7 to the exact original; and reported compressions 2. `headroom savings --json` reported schema_version 2, calls 2 and tokens_saved 52335; `headroom telemetry --json` reported beacon_enabled false. Each version retrieved the other's stored fixtures byte-exact. ~/.headroom, the pinned prefix, the shared bin links and the running user services were unchanged. An independent verifier reproduced these with its own code and agreed. At v0.39.0 the level counts in the '[N lines omitted: ...]' notice are taken over all input lines (log_compressor.py:461-487, _format_output; log_compressor.rs format_output), so the notice reports the kept CRITICAL line as omitted.", + "claim": "The portable Claude Code practice in examples/claude-native (three agents, ten workflow and check scripts, a sibling contract config, the unrestricted settings example) was adopted byte-for-byte into a scratch project and run on the upstream Claude Code 2.1.278 runtime: every local check passed from two working directories on the final file set; a headless review-changes run produced a valid envelope with source-scout, evidence-reviewer and source-scout children on Sonnet, Opus and Sonnet and reproduced the acceptance command in both the inventory and the independent recheck; a readiness-audit run completed; the run's metrics, tagged with an OpenTelemetry client scope the collector keeps as a label, showed both models under query_source=subagent and reconciled the Sonnet children exactly with child-usage.mjs; a Codex lane C review of the copied files completed with eight findings, all resolved.", "limitations": [ - "Not switched: 0.37.0 is retained. The omission notice's level counts include kept lines (source-verified at v0.39.0; the same code is at v0.37.0, and #3748's routing now sends the stack's timestamped logs to it), the Rust content detector still lacks the #3736 timestamp guard, #299 pins 0.37.0 in the Linux bootstrap and the token-efficiency lane's end-to-end counters (#296) run at 0.37.0. Overturn when upstream counts levels over the omitted lines only, or a measured answer-quality comparison on log inputs shows net value.", - "Fixture A's summary is no longer lossless in 0.39.0: 0.37.0's grep fold rebuilt all 600 rows, while 0.39.0 shows 7 rows, an omission notice and a retrievable marker; the byte-exact original is available only through headroom_retrieve. This is upstream's intended post-#3748 routing.", - "The fix was observed only on the pure-Python detector (no onnxruntime in the tool env; both servers logged the fallback). The native path, enabled by onnxruntime>=1.24 or ORT_DYLIB_PATH, was not executed.", - "The beacon defaults on in both 0.37.0 and 0.39.0 (BEACON_DEFAULT_ON = True). The opt-out (HEADROOM_OFFLINE=1, DO_NOT_TRACK=1) is owned by the token-efficiency lane (#303, #304); ~/.headroom/config/install_id already existed before this run.", - "The landscape ledger's token-efficiency winner pin stays headroom 0.37.0 (sealed 2026-09-22 packets); a receipt at 0.39.0 does not bind to it. Linux x86_64 only; no macOS evidence.", - "The fixtures are synthetic (fixture A from the use receipt's generator at 6752ede5; fixture B the retained mcp-tool-listing.json), token counts are headroom's own estimates, and only one upstream test file ran, under a minimal runner; the broader suite is evidenced only by CI on the release commit (137 success, 8 skipped, 1 failure in notify-release on a missing Slack secret).", - "No build provenance (no PEP 740 attestation; attestations API 404); integrity rests on three agreeing digests plus RECORD binding, and the 72 dependency wheels were resolved from PyPI with exclude-newer 2026-09-25T22:00:00Z, not individually hash-pinned.", - "State compatibility was measured on scratch stores only; the in-place migration of the real ~/.headroom/ccr_store.db was not exercised. During the window other sessions wrote ~/.claude/settings.json and ~/.codex/config.toml, and another session's 0.37.0 MCP server ran throughout; ~/.headroom stayed unchanged." + "Local integration on one host with a synthetic one-line change; not an unchanged upstream test and not a benchmark.", + "The workflow's strict accepted status was not returned: every native reviewer found defects in the files under qualification, which were fixed and re-run; the fixes after the closing native run are covered by the local suites and envelope tests only.", + "The project-only settings profile was not qualified: three provider failures (500, 529, 529) and, with the coordinator model pinned, a permission-layer refusal of the Workflow tool because that profile carries no permission rule for it; headless runs need a loaded settings source whose permission mode or allow rule covers the Workflow tool.", + "Per-session scoping of the exported metrics is unavailable by design; the client scope comes from OTEL_RESOURCE_ATTRIBUTES and other sessions on the host were active during the windows. The Opus child's exported counters covered 10 percent (closing run) and 43 percent (previous run) of its provider-returned output while the Sonnet children reconciled exactly; unexplained.", + "Session, job, thread and turn identifiers are redacted; raw streams stay outside Git." ], - "path": "evidence/receipts/headroom-039-qualification-20260925.json" + "path": "evidence/receipts/portable-claude-native-qualification-20260921.json" }, { - "id": "vllm-030-switch-laptop-20260926", - "kind": "native_model_e2e", + "id": "portable-cli-artifacts", + "kind": "native_cli_e2e", "component_ids": [ - "vllm", - "socraticode", - "ai-memory" + "shellcheck", + "difftastic", + "markitdown", + "ast-grep", + "toon", + "repomix" ], - "claim": "vLLM 0.30.0 was qualified on this laptop (WSL2, RTX 5090 Laptop GPU 24GB) as a drop-in candidate for the production Nemotron-3-Embed-1B-BF16 embedder (vLLM 0.25.0), then switched into production by a systemd --user drop-in that changes only the ExecStart binary path and PATH. Of the six qualification gates: (a) gate-text cosine, (c) batch invariance and (e) ai-memory vector reconstruction passed their pass bars; (b) mini-corpus retrieval and (d) live-code-index retrieval met top-10 SET identity on every query and trial (b: 40/40, d: 20/20 query-trials) but failed their strict top-10 ORDER bar in 3 of 4 trials each; (f) latency is report-only, with no pass bar. A prod-vs-prod control run (candidate never started) shows the same order-swap behavior already exists in production alone: gate b had 6 of 50 mismatched query-trials for the candidate (including an earlier, superseded run) against 10 of 80 for production compared with itself; gate d had 3 of 20 against 4 of 40; production against itself even had a worse single trial (6 of 10 identical) than any candidate trial. Gate (c)'s batch-invariance minimum cosine (0.9999562552851937) was bit-for-bit identical between production alone and the candidate, on the same minimizing text. The production switch itself re-checked only 30 gate texts (cosine 0.9999999999999998 before vs after) and confirmed dependents (ai-memory's vector stream, SocratiCode search); it did not re-run a post-switch top-10 retrieval check.", + "claim": "Native upstream commands processed the public shell, structural-code, HTML, JSON and selected-file fixtures; TOON roundtrip preserved data.", "limitations": [ - "One host (laptop, RTX 5090 Laptop GPU 24GB, WSL2) and one model/route (/v1/embeddings with Nemotron-3-Embed-1B-BF16); not a claim about other GPUs, models or the /v2/embed route. NVIDIA's model card still names vllm==0.25.0 for BF16 /v2/embed serving.", - "Retrieval equality covers 30 gate texts (a), a 50-paragraph mini-corpus over 10 queries (b), and 5 live code-index queries (d), not an aggregate retrieval-quality benchmark. Gates b and d met top-10 content-SET identity on every query and trial (b: 40/40 query-trials across the 4 recorded trials, plus full set overlap on one earlier superseded run; d: 20/20 query-trials) but did not meet strict top-10 ORDER identity on every trial (that earlier superseded run's own order count was 9 of 10). Counting every recorded run: gate b had 6 of 50 candidate query-trials with an order mismatch against 10 of 80 for a prod-vs-prod control (candidate never started, run twice -- an earlier, superseded control and the current one -- both included since only the second run's own prod_score diagnostic sub-field needed a fix, not its order counts); gate d had 3 of 20 against 4 of 40. Production compared with itself had a worse single trial (6 of 10 identical, i.e. 4 mismatched) than any candidate trial (worst: 7 of 10 identical, 3 mismatched), so this order-swap behavior is pre-existing production batching noise, not attributable to the 0.30.0 upgrade. The swap-gap range is 3.5e-05 to 8.2e-04 across all 23 recorded swaps (candidate run and both control runs combined), far smaller than the ~0.02-0.05 gaps between other adjacent ranks in the same rankings.", - "The reference receipt's own qualification-time number for this style of check (mini_corpus_top10_overlap, '10/10 on each of 10 queries') is a content-SET overlap claim, not a strict-order claim; it does not report whether its own order matched on every query, so gate (b)'s order tracking here is additional detail, not a comparison against a reported order result. The reference receipt's one reported ORDER number (production_switch.code_queries_identical_top10_order, '5/5') comes from its own post-switch production check with 5 live code queries, a different procedure from this run's own gate (d) qualification check (5 queries against the live SocratiCode index, run before any switch); the two are not directly comparable, and this run made no post-switch top-10 check of its own (see production_switch below: only 30 gate texts and a cosine value were re-checked after the switch) -- unlike the reference, which also re-checked 5 code queries' top-10 order after its own switch (that same code_queries_identical_top10_order, '5/5').", - "0.30.0 relies on its pinned-memory fallback for WSL (vllm-project/vllm PR #56908, the same warning the reference receipt's owned instance logged); the 0.29.0 UVA failure recorded in vllm-compatibility remains true for 0.29.0.", - "The 0.25.0 unit is kept for rollback; only a drop-in override (nemotron-embed-agent-lab.service.d, ExecStart and PATH only) points production at 0.30.0.", - "A diagnostic-only bug in this run's own gate (b) script (prod_scores_by_idx had score and index reversed) made the order_diff_detail[].prod_score sub-field in every candidate-vs-prod gate (b) file (gate_b_result.json and gate_b_trial{1,2,3}.json) and in the first, superseded prod-vs-prod control unreliable; it did not affect any cosine value, top-10 set, or pass/fail boolean -- only that one diagnostic sub-field -- and was fixed before the second, current prod-vs-prod control run. See raw/ERRATUM-gate_b-order_diff_detail-prod_score-bug.txt.", - "results.json's own generated prose has two internal inconsistencies against its own structured fields, corrected in this receipt from the underlying per-trial gate files (raw/gate_b_result.json, gate_b_trial{1,2,3}.json, gate_d_result.json, gate_d_trial{1,2,3}.json): its gate (b) finding text lists strict-order counts as '9, 7, 9 and 10' where the adjacent structured array and the per-file queries_with_identical_order fields agree on '10, 9, 7 and 9' (same four numbers, wrong order in the prose only); its gate (d) finding text says strict order held on '3, 5, 4 and 4' of 5 queries where the adjacent structured array and the per-file queries_identical_count fields agree on '4, 5, 4 and 4'.", - "The laptop's vllm-0.30.0 prefix pre-existed this run (never pip-installed into by this task, per its own instructions), so no direct_url.json or install log exists on this host to independently re-hash its wheel; the pin identity below is the value the workstation's own switch receipt recorded for the same pinned release, reused for cross-host comparison, not independently re-verified here. What IS independently verified on this host: both production (0.25.0) and the candidate (0.30.0) point at the identical, single model directory (same absolute path in both /v1/models responses), and this host's own sha256 of that directory's model.safetensors is recorded below.", - "independent_review: an independent reviewer subagent checked this receipt against the retained raw files (recomputed the reported counts, re-hashed the model file, compared production's before/after flags) and re-ran no gate; that review produced every correction listed above." + "Fixture-specific native behavior, not an LLM invocation or general quality benchmark.", + "Initial ast-grep filename selection returned no matches; corrected stdin input found8functions. Difft defaultexit0 was normal; --exit-code produced expected1." ], - "path": "evidence/receipts/vllm-030-switch-laptop-20260926.json" + "path": "evidence/receipts/portable-cli-artifacts.json" }, { - "id": "codex-01571-qualification-20260926", + "path": "adoption/receipt.json", + "id": "portable-sdk-adoption-20260919", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "codex", + "duckdb" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, Codex CLI 0.157.1 was installed beside 0.155.1 and qualified but not switched: bin/codex still names tools/codex-0.155.1, because the landscape-sweep GPT-6 lanes and other sessions use it. The npm wrapper @openai/codex@0.157.1 (4,904 bytes, sha256 813e2a944f4474b7e1826d9ce8bf696ad8d80c68f43f7a7067beec51fa8f5b73) and its platform package @openai/codex@0.157.1-linux-x64 (150,336,017 bytes, sha256 7f12677740f439fe4884c7031d9d703e571cecf5ea9fa3a05abd1bbccc2162a8) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations, whose SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.157.1, commit 36650394c5b38c2990ccf2a3457165ca3e9d9726; and the native binary in the platform package (sha256 3e2584f3...) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the API digest. The verified wrapper was installed into a new tools/codex-0.157.1 prefix whose files are byte-identical to both tarballs. In a bwrap sandbox with a private loopback-only network, a read-only root and a fresh scratch CODEX_HOME per case (no credential read, ~/.codex untouched), `codex --version` printed codex-cli 0.157.1 (baseline: 0.155.1), `codex exec --help` was byte-identical between the versions and `codex --help` differed only by the new --no-daemon flag. Against a loopback fake Responses provider set only through -c overrides, the landscape-sweep lane's argv (top-level --search, then exec --ignore-user-config --skip-git-repo-check -s read-only -m gpt-6-astra -c model_reasoning_effort=\"max\" --output-schema -o --json, stdin /dev/null) behaved the same on both versions: a success turn emitted thread.started, turn.started, item.completed and turn.completed with usage input 11, cached 3, output 7 and reasoning 2, wrote the -o file, and sent reasoning effort max and a json_schema text format equal to the --output-schema file; a 429 usage_limit_reached answer ended with exit 1 and an error event plus a turn.failed event whose message says 'You\u2019ve hit your usage limit. Try again later.', which the sweep's limit rule detects. With the fake provider marked as supporting standalone web search, `codex --search exec` sent external_web_access false to the search endpoint on both versions, the same as no flag, and only `codex exec -c web_search=\"live\"` sent true; 0.157.1 reported the literal-URL open as action open_page with results, where 0.155.1 reported it as other without results. A scratch CODEX_HOME that 0.157.1 had migrated (state_5.sqlite 55 to 57 migrations, thread_history_1.sqlite 6 to 7) still served a 0.155.1 exec turn. At the two tags, the exec --json event schema differs only by an optional web_search `results` field and exec/src/cli.rs is identical. A later probe in the same kind of sandbox (results/daemon.json) covered the background server that 0.157.0 starts for eligible interactive sessions: a plain interactive 0.157.1 launch copied its 391,126,382-byte package into CODEX_HOME/packages/app-server-daemon and started the app-server and its updater loop from that copy, and both outlived the TUI; a plain 0.155.1 launch while that server ran connected to it; `codex app-server daemon stop` stopped the server but not the updater loop, which SIGTERM ended; and --no-daemon, or `codex features disable daemon_auto_start`, prevented the copy and both processes, while 0.155.1 read the resulting config.toml in an exec turn and started its TUI with it. The switch commands therefore turn automatic start off before any interactive 0.157.1 launch, and the rollback stops such a server and its updater loop before relinking.", + "claim": "Native uv 0.12.17 recreated all 36 accepted SDK distributions in a fresh Linux/Python 3.13.15 prefix, then reinstalled without cache using required hashes; installed versions exactly match the prior inventory and useful local SDK/data checks pass. Initial native Codex inspection required sign-in; after native device sign-in, discovery and ordinary-allowance checks passed without inference.", "limitations": [ - "Reviewed once: a review round of the refresh coordinator (Claude Opus and GPT-6 Astra reviewers) reported that the rollback relinked bin/codex only and the switch checked only for 0.155.1 processes, so a background server started by 0.157.x would outlive a rollback; this revision repairs it (daemon_probe.py, results/daemon.json, stage/daemon-source-checks.txt and corrected switch and rollback commands). The repair itself has not been re-reviewed, and the qualification and this receipt still come from one worker family (Claude Opus 5.5).", - "Staged, not switched, and no live model call ran on 0.157.1: a live call would either copy the ChatGPT credential into an isolated CODEX_HOME (not allowed; docs/secret-storage.md) or run the newer binary against the shared ~/.codex while the sweep runs 0.155.1. GPT-6 turns through 0.157.1 are unmeasured until the coordinator's post-switch probe (results.json switch_commands_for_the_coordinator).", - "The fake provider is a stand-in. It exercises request construction, SSE parsing, event emission, -o, the 429 mapping and the web-search extension's settings; it does not exercise the OpenAI provider, ChatGPT authentication, the real usage-limit payload (which named a reset time on 2026-09-24 and 2026-09-26), streamed deltas, reasoning items, sandboxed tool execution, compaction or long multi-turn sessions.", - "The --search result was measured with a custom provider marked supports_standalone_web_search. That the OpenAI provider behaves the same rests on source reading (the same web-search extension and mode resolution; stage/source-checks.txt), not on a live measurement, and exec --json does not expose the effective mode (openai/codex issue #35415, open). It is a pre-existing 0.155.1 behaviour, not a regression.", - "The count of 32 openPage and 6 search actions in the sweep lane gpt6-discover-workers comes from that lane's private local Codex session file, read for action counts only and not published.", - "The rollback state probe is one exec turn in a scratch home; resume, the Codex desktop app and a TUI session on a migrated ~/.codex were not tried.", - "The background-server probe ran only in the sandbox: fresh homes, no sign-in, no network beyond loopback, and under a minute of server life per case. The updater's self-update is source reading, not measurement: at rust-v0.157.1 it is on by default and, five minutes after start and then every 60 minutes, fetches https://chatgpt.com/codex/install.sh and runs it to install the latest release into the daemon's package copy (stage/daemon-source-checks.txt), so a server started on this host would leave the integrity-checked prefix without a pin change.", - "No pin moves: adoption/pins-linux-x86_64.json, adoption/pins-macos-arm64.json and manifests/stack.json keep codex 0.155.1, and catalogs/landscape/foundation.json keeps the native-clients and agent-sdks winner pins at 0.155.1; this receipt is unbound until a switch and a verdict wave. catalogs/landscape/upstream-snapshot.json now lists codex in newer_stable_release_review_queue.", - "Upstream tests (cargo test) were not run on this host, and both tags are unsigned. The rust-v0.157.1 release body says its highlights could not be generated; its five commits after rust-v0.157.0 were read from the compare API (all Windows console and daemon-launch fixes).", - "Linux x86_64 only, one host; nothing here is macOS evidence." - ], - "path": "evidence/receipts/codex-01571-qualification-20260926.json" + "This is fresh-prefix reproduction on the existing WSL host, not a second physical machine or every OS/architecture.", + "The lock fixes the selected Python dependency graph and hashes; native client archives, OS/interpreter, npm packages, models and services retain separate recipes and acceptance.", + "The initial install used local uv cache; the subsequent --no-cache --reinstall fetched all36 packages and passed required hashes with source builds disabled.", + "Hash matching and dependency compatibility do not establish build provenance, vulnerability freedom or model quality.", + "Preflight checks presence and recipe paths only; it does not execute tools, inspect configuration, authenticate, probe services or prove runtime E2E.", + "Initial native account inspection required authentication; native sign-in restored readiness. This SDK setup receipt has no model inference; the later paired runtime has separate evidence and complete usage categories.", + "Existing account/service/environment configuration was not copied or replaced. Client discovery, optional GPU serving, off-host recovery and unattended hosting require their own target-host evidence." + ] }, { - "id": "mcp-inspector-280-qualification-20260926", + "id": "portable-userspace-install-20260921", "kind": "native_cli_e2e", "component_ids": [ - "mcp-inspector" + "rtk", + "qmd", + "repomix", + "toon", + "codex", + "claude-code" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, MCP Inspector 2.8.0 was qualified against the installed 2.7.0 and then switched into production. The npm tarball https://registry.npmjs.org/@modelcontextprotocol/inspector/-/inspector-2.8.0.tgz (1,206,059 bytes, sha256 4db39519d276b99fe650f1032a3256cb704648cc611e598a38e178b1ba8a7cbf) had integrity sha512-zn0A8fIrPDge36vId0XMpj0FL0FChIGQvAvV/+iRTvUYkSzTSIALHjhZyLIgKTzBPnzrxDJnfRbrPcElUcXR6Q==, equal to npm dist.integrity; `npm audit signatures` on a scratch install reported 190 packages with verified registry signatures and 34 with verified attestations, including the package's SLSA provenance from .github/workflows/main.yml at refs/tags/2.8.0, commit 1e31c78fbf81a989e8eb47021c6281d7876ad7fd. It was installed from that verified file into a new tools/mcp-inspector-2.8.0 prefix; npm 11 skipped the package's postinstall, which exits at once for a package under node_modules. In a bwrap sandbox with a private loopback-only network, a read-only root, /mnt hidden and MCP_AUTO_OPEN_ENABLED=false, the same 15 gated steps passed on 2.8.0 and on 2.7.0 with identical exit codes and, once per-run paths and markers were normalized, identical outputs: over stdio against a scratch QMD 2.8.3 index, tools/list (get, multi_get, query, status), tools/call query (one hit), an unknown tool (exit 5, tool_not_found), resources/list, prompts/list and tools/list --strict; over streamable HTTP to `qmd mcp --http`, tools/list and tools/call with the default and the auto protocol era. With a scratch API token and DANGEROUSLY_OMIT_AUTH set to false, 0 or yes, the 2.7.0 web server printed 'Auth: disabled (DANGEROUSLY_OMIT_AUTH)' and answered GET /api/config with 200 without a token and with a wrong one, while 2.8.0 answered 401 in both cases and 200 with the right token; both disabled the gate for true and kept it when the variable was unset, and no start printed 'Opening browser'. With no Inspector process running and nothing but bin/mcp-inspector naming the 2.7.0 prefix, bin/mcp-inspector was relinked to tools/mcp-inspector-2.8.0 at 2026-09-26T04:51:23Z; through the PATH entry, `npm ls` read 2.8.0 and the stdio tools/list, tools/call and unknown-tool checks passed.", + "claim": "Selected native clients, token tools and two ECC skills installed in a fresh official Ubuntu Base userspace on the existing WSL kernel; local fixture checks, bounded repeat-installation and rollback checks passed.", "limitations": [ - "Not independently reviewed: the qualification, the switch and this receipt come from one worker session (Claude Opus 5.5); the refresh coordinator owns the independent-review round, and no cross-family review ran.", - "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the mcp-surfaces winner pin mcp-inspector 2.7.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts at 2.8.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only, one host. Neither adoption/pins-linux-x86_64.json nor adoption/pins-macos-arm64.json has an mcp-inspector entry (it is installed by its recipe row), so no pin file changed; nothing here is macOS evidence.", - "Local integration evidence with synthetic fixtures: the upstream suite (npm run local:gate) was not run on this host. The HTTP arm used a scratch QMD server without OAuth; SSE, OAuth, remote servers, the web UI pages, the MCP Apps sandbox and the TUI were not exercised. Web mode ran only as the explicit `--web` auth probe inside the sandbox; `mcp-inspector --version` and a bare `mcp-inspector` were never run.", - "The measured auth difference does not change this host's live exposure: no client configuration here sets DANGEROUSLY_OMIT_AUTH, and agents run the Inspector in --cli mode. It matters when someone sets the variable to a false-looking value to keep the token gate on.", - "The integrity pin covers the Inspector tarball only; npm resolves dependency ranges at install time and the package ships no shrinkwrap. The installed tree differs from the 2.7.0 prefix in rolldown and its binding (1.2.10 to 1.2.11), bundle-name, string-width, undici (8.11.0 to 8.11.2) and vite (8.3.0 to 8.3.1); stage/dependency-diff.txt.", - "2.8.0 changes the package's license statement: package.json says 'SEE LICENSE IN LICENSE' (2.7.0: MIT) and the new LICENSE describes a relicensing transition from MIT to Apache-2.0, with documentation under CC-BY-4.0. manifests/stack.json records that text; no legal review was done.", - "Attempt 0 failed in the harness before any Inspector call (the sandbox hid the harness path) and is recorded in results.json; attempt 1 is one run per arm, so durations are run-level values." + "Fresh root filesystem on the existing WSL kernel, not a booted VM, new PC or independent kernel.", + "No native signed-in model inference, skill invocation, provider-token savings or full ecosystem E2E was tested.", + "Token assertions are the repository's unchanged local fixture checks, not the upstream projects' complete test suites.", + "Networking was shared for upstream downloads; this is not a newly qualified security-isolation boundary.", + "Node archive matched HTTPS publisher checksums; its detached signature was not separately verified.", + "Top-level npm packages were version pinned; transitive dependencies resolved at installation time.", + "Only the named subset was installed. Scoped MCP services, RAG models, persistent memory, terminal interaction and broker integrations need their own host qualification.", + "Skill repeat installation intentionally returned existing-destination refusal; filesystem linkage does not establish runtime discovery.", + "Home paths in three public client/skill logs are normalized to /home/example; no credential values were captured." ], - "path": "evidence/receipts/mcp-inspector-280-qualification-20260926.json" + "path": "evidence/receipts/portable-userspace-install-20260921.json" }, { "id": "prometheus-3150-qualification-20260926", @@ -3297,127 +3453,174 @@ "path": "evidence/receipts/prometheus-3150-qualification-20260926.json" }, { - "id": "tavily-research-qualification-20260926", + "path": "blueprints/us-equities/state-recovery/qdrant/receipt.json", + "id": "qdrant-native-state-recovery-20260919", "kind": "native_cli_e2e", "component_ids": [ - "tavily-cli" + "qdrant", + "restic" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", + "claim": "A native Qdrant full snapshot survived encrypted Restic backup/restore and a fresh native Qdrant restore, preserving five collections, 201 points, collection configuration and one exact query result.", "limitations": [ - "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", - "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", - "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", - "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", - "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", - "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", - "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", - "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." + "One same-host drill; repository and password share the host, with no independent key escrow or off-host durability proof.", + "Sequential cross-collection observations do not establish a globally atomic transaction; matching source before/after state bounds this observation.", + "One exact-query equivalence check is not a semantic retrieval benchmark or SocratiCode MCP rebinding test.", + "No automatic schedule, retention deletion, model inference, broker action or provider token savings.", + "The native API was exercised; optional static dashboard assets were absent. Raw snapshots and private query payloads are not published." + ] + }, + { + "path": "blueprints/us-equities/retrieval-evaluation/receipt.json", + "id": "qmd-bm25-retrieval-20260919", + "kind": "native_cli_e2e", + "component_ids": [ + "qmd" ], - "path": "evidence/receipts/tavily-research-qualification-20260926.json" + "claim": "Pinned upstream QMD runBenchmark API evaluated 12 fixed queries on an online-backup snapshot of the adopted lexical index; exact intended-source recall at three was 8/12, with all misses retained.", + "limitations": [ + "The upstream benchmark was invoked through its shipped module API, not a fabricated BM25-only CLI flag.", + "Twelve curated queries against 18 foundation documents do not establish robust general retrieval, an independent holdout or complete financial RAG.", + "Intended source paths are reviewed gold documents, not exhaustive relevance judgments over every returned summary.", + "Upstream precision_at_k uses min(k,gold_count) as denominator, not conventional precision at k. Upstream path matching is case-insensitive suffix matching.", + "The separate exact-path audit excludes suffix collisions; upstream native metrics are retained unchanged.", + "Original queries were frozen before the first run. Four top-three misses remain; no reformulation or models were used to improve the displayed scores.", + "Backend exceptions are flattened to zero by the upstream benchmark; direct lexical replay confirmed identical results without errors for all twelve queries.", + "The active database was opened only through SQLite read-only online backup; QMD schema initialization ran on the disposable copy, without reindexing, config synchronization or model download.", + "Raw native stdout is private because its fixture field contains a local path. This public receipt contains source IDs and bounded results only.", + "This measures lexical source retrieval, not answer accuracy, memory isolation, caching, net provider savings or the complete agent task.", + "The collection filter limits returned documents to 18 foundation sources, while BM25 statistics use all 33 shared-index FTS documents. All 33 sources and FTS fields are pinned in full-corpus-manifest.json; recreating only the 18 eligible sources would change the scoring corpus." + ] }, { - "id": "local-inference-c2-serving-switch-20260926", - "kind": "native_model_e2e", + "id": "restic-local-public-reference-20260919", + "kind": "native_cli_e2e", "component_ids": [ - "llama-cpp" + "restic" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, the production generation unit nativestack-generation.service (llama.cpp b11146 serving unsloth/Qwen3.8-27B-GGUF UD-Q4_K_M at revision 4ca7207) was switched by a systemd --user drop-in from the C0 serving profile (36 of 65 layers on the GPU) to the li26 C2 profile (--gpu-layers 99 --n-cpu-ffn 20 --spec-type draft-mtp --spec-draft-n-max 3), after the preregistered li26 comparison selected C2 in its final decision (change_serving_profile). On the frozen 360-filing 8-K item-extraction task, C2 predicted the same item sets as the C0 control on every filing (micro-F1 0.9909 for both; paired bootstrap bounds 0.0), every reply was valid JSON, and its median decode was 26.28 tokens/s against C0's 5.25, with no memory or deadline failure. M (MiMo-V2.6-Distill-Qwen-9B Q8_0) was faster still but failed non-inferiority (lower bound -0.0560). After the switch, the unit answered /health 200 in about 6 s and the bounded structured check returned 42. Read-only rechecks, the llama-cpp install host receipt at 11:26Z and the use host receipt at 12:41Z, found the drop-in in effect, the served file at its pinned SHA-256 and the decision reproducible in memory from the retained state.", + "claim": "Native restic 0.19.1 backed up 22 selected public reference files, checked all repository data, and restored the same 160642 bytes into a fresh local directory; independent file hashes matched.", "limitations": [ - "Native execution on this host, one run per arm, under the frozen protocol: greedy decoding with thinking disabled, about 17 output tokens per filing, and labels taken from the filer-declared header ITEMS. Production keeps its own sampling and reasoning defaults, so C2's decode gain and its MTP draft acceptance (4,735 of 4,737 drafted tokens) are not established for production's sampled or thinking requests. No production-workload measurement followed the switch.", - "Speed and memory are this host's, under its load at the time: a shared WSL2 desktop with the Windows-side GPU applications closed for every window. Those closes went by image name, with a forced second pass, rather than by PID as the plan's README says, and further applications outside its list were closed before window 3 under the user approval that the coordinator recorded. This is not an isolated benchmark, and run-to-run variance is unmeasured.", - "C2's measured peak whole-device use was 20,314 MiB (minimum 3,829 MiB free) with those applications closed, and after the switch the device showed 20,256 MiB used and 3,887 MiB free. Production has no free-memory guard like the windows' 3,072 MiB reserve, so Windows-side GPU applications reopened later can exhaust device memory. The rollback in data.rollback restores the pre-switch C0 profile.", - "The rollback was not exercised after the switch. The base unit file (C0, 36 GPU layers) and the model file are unchanged.", - "The switch and its immediate checks come from the coordinator's dated operations log; the commands' raw output is not retained in the repository. The read-only rechecks are in the two llama-cpp host receipts of 2026-09-26, which carry only self reviews. The use receipt was re-recorded at 12:41Z because its unpublished first recording (11:26Z) ran analyze.py --out into a temporary directory inside the checkout; the new one re-derives the decision in memory and writes no file. The catalog pin for llama-cpp stays b11057 (0.4.1-dev) in manifests/stack.json and catalogs/sota-convergence, and this receipt does not rebind it.", - "The experiment record retains the failed and refused attempts: the acquisition's first attempt (state_dir_must_be_owner_only, refused before any SEC request) and C2's admission refusal in window 2 (17,366 MiB free against 17,535 MiB required).", - "The claim is limited to this host and task. It establishes no frontier parity, hand-checked accuracy, catalyst or trading value, long-context or thinking-mode quality, isolated throughput or saving, and B and X have no result." + "Only listed static public files at the recorded source commit were backed up. This does not include future integration changes.", + "The local repository, restore, and password share the source host; host or volume loss remains unprotected.", + "No live SQLite, Qdrant, Loki, Prometheus, broker/order journal, client credentials, or transcript backup was attempted.", + "No application-consistent database restore, retention deletion, automatic scheduling, or external paging acceptance.", + "Credential loss recovery requires separately approved secure key escrow." ], - "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json" + "path": "blueprints/us-equities/hosting/backup/receipt.json" }, { - "id": "claude-advisor-usage-scan-20260928", - "kind": "artifact_measurement", + "id": "rtk-050-qualification-20260925", + "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "rtk" ], - "claim": "A count-only scan of this host's Claude Code transcripts at 2026-09-28T03:09:00Z (Claude Code 2.1.283), deduplicated by message.id, found advisor_message entries in usage.iterations[]: 1,018 in 660 of 2,912 subagent transcripts (712 on claude-fable-5-1 with 138,494,287 input and 6,207,417 output tokens; 306 on claude-opus-5-5 with 62,850,042 input and 2,432,917 output tokens) and 58 in 21 of 238 main-session transcripts (38 on claude-fable-5-1, 20 on claude-opus-5-5). examples/claude-native/workflows/child-usage.mjs at ed3cd96c sums only the top-level usage counters (transcriptUsage) and reads no usage.iterations, so its per-child usage excludes these advisor iterations.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-25, rtk 0.50.0 was qualified against the installed 0.49.0 on the Claude Code hook path and then switched into production. The rtk-ai/rtk v0.50.0 asset rtk-x86_64-unknown-linux-musl.tar.gz hashed to sha256 bc2b8902b0d9c796c82ef45f16ae2307e17757afeca5ee156235a3dc7bda5f89, equal to its checksums.txt line (sha256sum --check --strict: OK) and to the GitHub API asset digest, and was installed into a new tools/rtk-0.50.0 prefix (binary sha256 23433a2a50bdeb12199cadd4b94b639238d6c38529fcba1c30c9295db5fa9517). Driving `rtk hook claude` with Claude PreToolUse JSON and scratch data directories, the hash-pinned acceptance scripts gave 42 PASS / 0 FAIL / 1 NOTE (v2, sha256 186dd891...) and 88 PASS / 0 FAIL / 4 NOTE (v3.1, sha256 3644a0dc...) for 0.50.0, against 34/8/1 and 79/9/4 for 0.49.0; v3.1 rejected two broken fake candidates (4/100/11 and 17/85/11), and `rtk verify` passed 154/154 on both versions. An independent verifier re-ran these, reproduced the outputs line for line and agreed. The coordinator then repointed bin/rtk to the new prefix (`rtk --version`: rtk 0.50.0) and created ~/.config/rtk/config.toml with `exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`. v3.1 on the production binary gave 87 PASS / 1 FAIL / 3 NOTE with that config, the one FAIL ('blob not windowed/announced') being the exclusion taking effect, and 88 PASS / 0 FAIL / 4 NOTE with an empty XDG_CONFIG_HOME.", "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or bill. The counts move as sessions run (a scan two minutes earlier counted 1,016 subagent iterations), and a transcript that was deleted or never written is not counted.", - "Counts only: no paths, session identifiers or transcript content are retained, so no count is attributed to a run, task or role.", - "The populations are this scan's own: subagent transcripts are agent-*.jsonl files below a subagents directory (Agent-tool and workflow children; workflow journal.jsonl files are skipped), and main-session transcripts are /.jsonl files. A count taken with other boundaries or at another time is not comparable.", - "Token figures are the counters each advisor_message entry reports; every counted entry reported 0 cache-read and 0 cache-creation tokens. No price, plan-usage share or quality effect is derived.", - "The scan's rules (one kept row per message.id, rows and journal files skipped) were checked on a synthetic fixture (data.controls), not against a provider-side record.", - "Whether ccusage or ecosystem-token-report count these entries was not checked." + "0.50.0 blob-window defect: through the hook, `git show : | tail -n K` returns lines from the ~8 KiB blob window plus a '[see remaining: rtk proxy git show ...]' hint instead of the end of the file (fixture: rows 1030-1033 plus the hint, where native git and 0.49.0 print rows 3996-4000). Neither acceptance script gates it; only the non-gating A2 differential caught it. This host mitigates it with ~/.config/rtk/config.toml `[hooks] exclude_commands = [\"^git show [^ ]*:\", \"diff\"]`, which also sends every `git show :` and plain `diff` to the native command. adoption/bootstrap-linux.sh installs only the binary and does not render this file: a new host must create it (recipes/README.md), or the defect is live there.", + "Pre-existing defects persist in 0.50.0 exactly as in 0.49.0: `find -name x` exits 0 with no output (native: exit 1, 'No such file or directory'); plain `git log` is silently capped at 10 commits and `--no-merges` is injected, so `git log --oneline` drops merge commits; `python3 -m pytest` is rewritten to `rtk pytest`, which runs `pytest` from PATH or `python -m pytest`, not the named interpreter. `diff` on a missing file still exits 1 instead of 2 in the binary; only the host exclusion avoids it.", + "Rollback hazard: 0.50.0 stores signed negative saved_tokens, and 0.49.0 reads them with an unchecked cast. With synthetic -500 rows, 0.49.0's `rtk gain --history` and `--all` (including `--all --format json|csv`) showed wrapped values such as 18446744073709551116, while plain `rtk gain` and `rtk gain --format json` showed none (out/negrow.out) and 0.50.0 clamps them to 0. The qualification corpus wrote 0 negative rows of 66 and production had 0 at qualification; the natural frequency is unmeasured. Before rolling back to 0.49.0, count `saved_tokens<0` rows read-only on a snapshot of history.db. tools/token-report's `rtk gain --format json` read showed no wrapped value, but the report also reads saved_tokens directly from history.db (tools/token-report/token_manifest.py).", + "The landscape ledger does not move here: catalogs/landscape/foundation.json keeps the token-efficiency winner pin rtk 0.49.0 from the sealed 2026-09-22 layer-verdict packets. Host receipts recorded at 0.50.0 do not bind to that winner (scripts/host_receipts.py pin_matches) and stay unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json has no rtk pin and is unchanged; nothing here is macOS evidence.", + "Local integration evidence with synthetic fixtures (fake pytest and ruff, generated git repositories, synthetic negative rows); the hook was driven directly with PreToolUse JSON. Upstream `cargo test` was not run on this host, and no fresh-session live Claude Code check after the switch is recorded.", + "Provenance rests on checksums.txt and the GitHub API digest, both from the same release workflow; no signature is published, the attestation lookup returned HTTP 404, and the binary was not rebuilt from source.", + "`rtk init` was not re-run. At 0.50.0, `rtk init --help` describes `--codex` as 'Target Codex CLI (uses PreToolUse hook + AGENTS.md + RTK.md)', so re-running the recipe's `rtk init --global --codex` would install a Codex hook that is not qualified; recipes/README.md now says so.", + "One host (NativeStack, WSL2) and a prefix-flip switch; tools/rtk-0.49.0 and its archive are kept for rollback. The verifier's three minor defects (an unrelated ~/.claude/settings.json change outside the fingerprint window, the ungated `| tail` case, scratch written outside the unit dir) are retained in the artifact.", + "2026-09-26 correction to the first limitation (see also the addenda): the 2026-09-25 exclusion `^git show [^ ]*:` was too narrow. rtk tests an entry that starts with `^` as a raw Rust regex against each command segment (src/discover/registry.rs:1540-1569 and 1599-1604 at tag commit 1d87b8e7), so `git show --no-color HEAD:x`, `git -C . show HEAD:x`, `git show HEAD:x` (two spaces) and `git --no-pager show HEAD:x` were still rewritten into the blob window (found by a Codex post-merge review of #291). The adopted recipe is #318's four-entry exclude_commands set (recipes/README.md#native-context-mode-and-hooks), which this host now runs. An alternative single-regex pattern tested the same day excluded 14 of 14 blob-read and diff spellings on 0.50.0 and 0.49.0, where the old pattern excluded 8, and is retained as evidence only (out/mitigation-20260926.out, out/readback-20260926.out). adoption/bootstrap-linux.sh's reminder combines #318's text check with the installed `rtk hook check` on five probes, because a TOML-valid config with the exact text can still be ignored: rtk 0.50.0 falls back to its defaults when the file does not deserialize (TrackingConfig, src/core/config.rs:152-158, needs history_days), and with `[tracking] enabled = false` alone every probe was rewritten (out/config-rejection-20260926.out, out/combined-reminder-20260926.out; found by a Codex review of #314). The exclusions cover only hook rewrites: an explicit `rtk git show :` still windows the blob. The tested spellings are not exhaustive, and the claim's config text is the 2026-09-25 state." ], - "path": "evidence/receipts/claude-advisor-usage-scan-20260928.json" + "path": "evidence/receipts/rtk-050-qualification-20260925.json" }, { - "id": "claude-host-practice-readback-20260928", + "id": "rtk-051-qualification-20261004", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "claude-hud", - "headroom", - "mcporter", - "jcodemunch-mcp", - "agent-browser", - "qmd" + "rtk" ], - "claim": "A value-free read-back on this host from 2026-09-28T09:12:51Z to 2026-09-28T09:13:17Z (Claude Code 2.1.283) of the resulting state of the host-scope settings that the 2026-09-28 community sweep record lists as applied. permissions.deny held 87 entries: the settings template's 86 in template order plus 1 host-only entry, none naming force-with-lease. Under --permission-mode bypassPermissions, a claude -p run's Bash call of exactly `git clean -fn` came back as an error result with one permission denial, while a run's Bash call of exactly `git push --force-with-lease --dry-run origin main` against a local bare remote came back without error and with no denial. Both runs printed the JSON message array, and the user settings set verbose to true. The settings held 1 ConfigChange hook command, ending in `|| true`, and its log held 25 lines, each a JSON object with only timestamp, source and file keys. The status line's refreshInterval was 5 and its command exported diff.autoRefreshIndex=false. In a throwaway repository with one modified file and one file whose mtime alone changed, the configured command left .git/index unrewritten, while the same command with that export removed rewrote it; plain `git diff --numstat HEAD` rewrote it too, and did not with the export. preferredNotifChannel was terminal_bell, BASH_MAX_TIMEOUT_MS equalled the template's, and the user CLAUDE.md held both agent-spawn phrases checked. `claude mcp get headroom` reported scope User, Connected and all four no-egress variables set to 1, and MCPorter's headroom entry carried the same four. `claude mcp get jcodemunch` reported scope User and Connected. agent-browser reported 0.38.1; its open, get title and close smoke steps exited 0 and matched the title. The QMD catalog index reported 276 files indexed and 0 pending embedding.", + "claim": "The retained NativeStack WSL2 run on 2026-10-04 installed rtk 0.51.0 from the checksummed Linux release archive and returned rtk 0.51.0 with exit 0. rtk verify returned 151/151 inline self-tests with exit 0; 24 hook payloads matched 0.50.0 output and exits (16 rewritten, 0 differing), and 26 permission-deny hook decisions matched with no auto-allows. Direct git/proxy calls succeeded and the existing tracking database was read and later updated. This receipt republishes bounded sanitized facts from the historical host records; it is not a new host or model run.", "limitations": [ - "Local observation on one host (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own read-back.", - "Value-free by construction: counts, booleans, versions and exit codes only. No settings values, deny entries, status-line command, instruction text, paths, session identifiers or model text are retained, and the host-only deny entry is counted, not named.", - "Resulting state only. How the settings were edited, how Headroom was re-registered, how agent-browser was installed and whether QMD's update and embed ran are the operator's account in the decision record, not observations here.", - "The ConfigChange hook is read from the settings and its log; no settings change was triggered, so one line per change and never blocking are not tested.", - "Each deny probe is a single claude -p run. The attempt and its outcome are read from the Bash tool_use and tool_result blocks and the result message's permission_denials, not from the model's text. The force-with-lease dry run touched only a throwaway bare repository.", - "The status-line probe feeds the command a minimal stdin payload in a throwaway repository. It shows the git-config export's effect on claude-hud 0.8.0's `diff --numstat HEAD` step (dist/git.js:35-48), not on every claude-hud code path or version.", - "The user CLAUDE.md check tests two phrases by substring; whether a session follows them is not tested. The jCodeMunch scope is recorded as drift against the 2026-09-25 addendum, not as a decision." + "No macOS execution; the Darwin archive is artifact-checked only. No upstream cargo test suite was run in these records; rtk verify is the native inline self-test, and the 115-test parser run (14 skipped) is local integration.", + "rtk gain, session and cc-economics are tool self-reports, not provider counts, invoice data or causal savings. Cumulative snapshots are not added together.", + "No fresh live-client acceptance or rtk init re-run was recorded. The --shell compatibility review is source-based; the host hook comparison covered only its 24 payloads and 26 deny entries. Existing exact-output exceptions and dated replay gates remain scoped to their original evidence.", + "gh attestation verification returned HTTP 404 (exit 1); no signature verification or source rebuild was recorded. Later upstream fixes and issue #4404 are follow-ups, not included in this stable pin.", + "NativeStack runs AgentsView 0.44.0 ahead of the repository pin. The 2026-09-27 qualification hold stands: synthetic_ccusage_parity failed, fresh_four_native_lanes is blocked, and the v0.44.0 MCP reported zero Codex counters. The recorded recipe rewire and qualification must pass in a separate follow-up before a repository pin move.", + "RTK replay is unavailable at 0.51.0: vendored child-usage.mjs and the test_token_measurement.py/test_skill_usage.py replay gates require exactly rtk 0.50.0. Skipped replay tests are not coverage; the kernel and gates remain unchanged.", + "The repair-round placeholder guard probes allowed the --shell form rtk test --shell sh 'cat ~/.ssh/config' (exit 0), while rtk proxy cat ~/.ssh/config was blocked (exit 2). These strings were guard input only; no credential reader was executed. This finding belongs to PR #685; the guard is unchanged in this pin move.", + "2026-10-04 control correction after PR #693 CI run 37226622626: v0.51.0 intentionally folds grep file lists (feac25d), so the former byte-unchanged grep control is superseded by counted prefix-plus-tail reconstruction of the exact native path set, byte-identical proxy recovery and a CR-filename verbatim guard fixture (3223a80). The diff half is unchanged. The repaired native fixture passes nine checks over 11 cases / 33 arms; this is local integration of the installed Linux CLI, not new host or upstream Cargo-suite acceptance. Agent-facing expansion of folded paths is unmeasured; an E2E observation of a wrong expanded path leads to adding grep -l/-rl to hook exclusions. Sources and retained red-then-green observations: docs/decisions/2026-10-04-rtk-file-list-control.md.", + "2026-10-04 PR #698 follow-up from the pre-rebase review head 45a7218c0 (rebased onto 38ac9aca1; no branch keeps it): the grep inverse now preserves native engine order, and a CR-free explicit-operand t6c sibling proves that the same grep -l shape folds without the 3223a80 guard signal. Native distinctness and the CR-case LF record count have isolating rejection controls with separate predicate-deletion red runs and restored green runs. The installed Linux CLI passes ten checks across 12 cases / 36 arms / 76 fixture commands plus one version command. Historical shell_sites line 1477 is retained; a dated appended entry corrects the direct-argv locator. Minimal sanitized original red/green outputs from job 035 and new job 042 outputs are retained under evidence/artifacts/rtk-051-file-list-control-20261004/ (README.md and native-controls.json), with the dated decision at docs/decisions/2026-10-04-rtk-file-list-control.md. This is local integration, not a WSL rerun, upstream Cargo-suite, new-host or native-model acceptance; model interpretation remains unmeasured." ], - "path": "evidence/receipts/claude-host-practice-readback-20260928.json" + "path": "evidence/receipts/rtk-051-qualification-20261004.json" }, { - "id": "socraticode-1150-qualification-20260927", + "id": "runtime-sdk-20261003", + "kind": "compatibility_attempt", + "component_ids": [ + "codex" + ], + "claim": "Retained coordinator results for the same-host Codex SDK/CLI 0.160.0 pair report strict-hash installation, matching bundled/npm-platform binaries and completed native-account SDK, gateway SDK and gateway CLI marker canaries. Sanitized outputs, native CLI usage, scripts, hashes, mtimes and discriminating replay controls are now retained; missing original SDK invocation/source and process start/end evidence limit this to a compatibility attempt. The separate A4 record adds fail-closed Linux package-resolution/executable-tree repairs, offline integration controls and a fresh isolated bootstrap of the shipped Codex pin; it does not upgrade the SDK/gateway canary evidence class.", + "limitations": [ + "Existing-host compatibility observations and completed marker canaries only; incomplete original command/timing provenance prevents native_cli_e2e acceptance. Not new-host or model-quality acceptance.", + "Gateway backend model and effort were not read from the call log; configured/requested routes and efforts do not prove backend selection.", + "The shared host launcher, daemon and production prefix still run 0.159.3 until a separate coordinated switch.", + "The 0.159.3 queue, Hindsight and October 1 SDK receipts retain their original scope; they do not qualify 0.160.0.", + "Sanitized native canary stdout/stderr, CLI events/last message and their hashes are retained. SDK caller exit codes 0 are coordinator-verified, not fields in the supplied facts. Gateway backend billed usage and monetary cost remain unrecorded.", + "Original process start/end times and SDK outer executable/cwd are unrecorded. Source mtimes are filesystem observations only. The native heredoc is reconstructed from facts and the retained gateway example, not attested as the original source.", + "SDK last and total usage snapshots match for each canary and must be counted once; cached input and reasoning output are subsets, not additional tokens.", + "No unchanged upstream test suite, shared daemon restart, whole-system cleanup/recovery acceptance, package signature or provenance attestation verification is recorded here. The separate A4 bootstrap record retains local migration/publication fault injection and an isolated native installation.", + "The move is inside the seven-day cooldown recorded in docs/decisions/2026-09-25-workstation-sota-refresh.md, as the prior 0.159.2 and 0.159.3 moves were (docs/decisions/2026-09-27-model-currency.md).", + "This repository change records existing coordinator qualification; it performs no new model run or shared-host switch.", + "The CLI script prints the inner Codex exit but does not propagate it as its own final shell exit; the recorded inner exit 0 is supported by the coordinator facts and completed native events." + ], + "path": "evidence/receipts/runtime-sdk-20261003.json" + }, + { + "id": "runtime-tools", + "path": "evidence/receipts/runtime-tools.json", "kind": "native_cli_e2e", "component_ids": [ - "socraticode" + "gitleaks", + "sandbox-runtime" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", + "claim": "Explicit repository secret scan and permitted/protected filesystem operations completed.", "limitations": [ - "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", - "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", - "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", - "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", - "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", - "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", - "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", - "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", - "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", - "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", - "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", - "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." + "No claim of full security certification.", + "Sandbox network denial configured but not separately exercised." + ] + }, + { + "id": "sec-catalyst-dataset-native-20260920", + "kind": "native_cli_e2e", + "component_ids": [ + "edgartools", + "duckdb" + ], + "claim": "Pinned EdgarTools parsed five verified retained SEC headers through complementary native views; pinned DuckDB materialized the full 371-identity cohort and nine item links to deterministic Parquet, preserving 366 unfetched rows and rejecting historical availability before local observation.", + "limitations": [ + "Offline conversion of previously accepted sources; no new SEC request, model call or dependency installation.", + "This is metadata dataset acceptance, not historical point-in-time strategy data or profitability evidence.", + "First observation is completion in the retained acquisition run; 2020 acceptance does not prove historical dissemination or receipt.", + "Five headers are the deterministic acquisition cap, not a representative or outcome-selected trading universe; 366 remain unfetched.", + "Header item declarations and native taxonomy labels do not establish catalysts, economic incentives, sentiment or trading signals.", + "All tickers and amendment-parent accessions remain unknown; no price, adjustment, corporate-action or return join is performed.", + "Parquet determinism is scoped to the pinned runtime and these inputs; no provider token-saving claim is made.", + "The repository CLI is a custom integrity/temporal bridge around native SDK APIs; synthetic contract tests are separate from actual native header parsing.", + "Public hashes are local integrity anchors, not signed SEC attestations; private source bytes and contact identity are not published." ], - "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" + "path": "blueprints/us-equities/catalyst-dataset/native-receipt.json" }, { - "id": "ccusage-20026-qualification-20260927", - "kind": "native_cli_e2e", + "id": "sec-financial-data-20260919", + "kind": "compatibility_attempt", "component_ids": [ - "ccusage" + "duckdb" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, ccusage 20.0.26 (tag v20.0.26, commit d9821088b98aa536c7a385aa1a4579d6fa02269b, released 2026-09-27T16:26:00Z) was qualified and switched in, reopening qualification as the 2026-09-26 publication trigger requires. The npm tarball https://registry.npmjs.org/ccusage/-/ccusage-20.0.26.tgz (24,216 bytes) had sha256 b8d59c191f357d5e847c109f306cf522e60496fc9219be2ab72d201fd59eb1f2, and its sha512 and sha1 matched the registry integrity and shasum. At that commit the upstream Rust suite (cargo test --workspace, Rust 1.97.1, in an environment mirroring nix/tests.nix) exited 0 with 944 passed, 0 failed and 3 ignored, and the Node tests passed 34 of 34. On the native_token_ci synthetic fixture the installed 20.0.24 and 20.0.26 executables returned byte-identical output: 2 rows, 1,900 input, 380 output and 2,430 total tokens, and a totalCost within 1e-9 of 0.0328. On the host's native histories, daily, weekly and monthly token totals were identical between the two versions; 20.0.24 left claude-opus-5-5 and gpt-6-luna unpriced there, and 20.0.26 left no model unpriced. A synthetic pricing probe gave claude-opus-5-5 a cost of 0.0 on 20.0.24 and 4.0 on 20.0.26 for 1,000,000 input tokens, with a claude-opus-5 control at 5.0 on both. The coordinator repointed the production launcher to 20.0.26 at 2026-09-27T22:01:01Z; the read-back resolves it to the 20.0.26 prefix, which prints 'ccusage 20.0.26', and the 20.0.24 prefix is retained for rollback.", + "claim": "The official SEC acquisition stopped after its first request returned HTTP 403; separate synthetic-fixture checks passed conservative availability, exact-decimal DuckDB/Parquet roundtrip and bounded cited-packet behavior.", "limitations": [ - "macOS is registry-only: the macOS pin carries the same tarball digests, but no Mac installed or ran 20.0.26, and @ccusage/ccusage-darwin-arm64@20.0.26 stays unpinned (its registry integrity is recorded in data only).", - "The pinned sha256 covers only the npm launcher tarball (5 files). The Rust executable comes from the optional dependency @ccusage/ccusage-linux-x64@20.0.26, which npm resolves at install time outside that hash; this receipt records its registry integrity but did not compare it with the installed copy.", - "npm dist.gitHead is null, so the tarball binds to commit d9821088 only through the git tag. The registry lists an SLSA provenance attestation for 20.0.26, which was not fetched or verified here.", - "Upstream CI was not reproduced: nix flake check, nix build .#ccusage-tests, just test-node under pnpm 12.5.1, the Nushell contribution-gate test and the Babashka compare-pr-performance test did not run (Nix, just and pnpm are absent). The Rust suite ran under an isolated rustup 1.97.1 toolchain with a script mirroring the nix/tests.nix environment, not inside the Nix derivation, and the Node tests ran on Node 24.21.0.", - "The Node tests do not discriminate this bump: the two test files are identical between v20.0.24 and v20.0.26.", - "The native-history comparison covers one range (2026-09-20 to 2026-09-26, with rows only for 2026-09-24 to 2026-09-26, Claude and Codex together). It shows token parity between the versions, not agreement with provider billing, and session and blocks reports were not compared.", - "20.0.26's cost figures use upstream snapshot prices. On the same tokens the range's totalCost rose from 3423.92 (two models unpriced) to 9894.33; neither is a qualified contract price, and the recorded use commands keep --no-cost.", - "The landscape winner pin in catalogs/landscape/foundation.json stays 20.0.24 (manifest-20260922), so a 20.0.26 host receipt needs scripts/host_receipts.py record --allow-unbound-version and stays unbound until a new verdict wave. No host receipt is recorded here.", - "The launcher repoint is the coordinator's operation; this receipt records its time and a later read-back, not the operation's own output.", - "The daily native-history comparison is a coordinator record from 2026-09-27T21:50Z whose argument vector was not retained (data.native_checks.native_histories.daily.retained_output); only its JSON outputs are. The weekly and monthly comparisons and the pricing probe record their commands.", - "New hosts receive this pin only after the next release tag." + "HTTP403 does not establish whether the user-agent, network policy, or another condition caused rejection.", + "No automatic retry; a further acquisition needs a material change or renewed SEC accessibility.", + "No native Astra/Claude financial report can cite a newly acquired live packet from this attempt.", + "Current API snapshots do not reconstruct historical point-in-time knowledge.", + "Recent submissions and four numerical concepts only; no filing narrative corpus, vector RAG, market prices, backtest, broker orders or off-host service.", + "Provider token savings and quality-equivalent full-task savings were not measured by this recipe." ], - "path": "evidence/receipts/ccusage-20026-qualification-20260927.json" + "path": "blueprints/us-equities/financial-data/receipt.json" }, { "id": "skills-listing-restore-20260928", @@ -3463,104 +3666,27 @@ "path": "evidence/receipts/skills-m4-host-removal-20260928.json" }, { - "id": "claude-model-effort-probes-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Twenty-seven native probes and two session counts on Claude Code 2.1.284 (the client version recorded in every transcript), run between 2026-09-28T21:20Z and 2026-09-29T00:40Z and each read from the model and effort recorded in the session's or child's own transcript, found that (1) in headless one-turn sessions the ultracode setting neither raised a session that had no per-model level (a Sonnet 5.5 session ran at medium although the user settings' top-level effortLevel was xhigh) nor overrode a per-model level passed with --settings (low won for both Sonnet 5.5 and Opus 5.5), a project settings file's top-level effortLevel or modelSettings entry of xhigh raised a Sonnet 5.5 session to xhigh, and the Ultracode reminder text stayed present at max effort set by flag or environment variable; (2) in headless sessions a subagent that no per-call model or definition names ran the lead's model, CLAUDE_CODE_SUBAGENT_MODEL=opus put it on Opus 5.5 under a Sonnet 5.5 lead, and a child on another model ran at that model's own saved level or default (xhigh for Opus 5.5, medium for Sonnet 5.5); (3) in the interactive coordinator session, whose effort a model picker had set to max, every probe child that named no effort (an unnamed subagent, an Opus subagent named by per-call model, two workflow stages and a named teammate: C1 and C3 to C6) ran at max, the Opus 5.5 one (C3) included, so the lead's session effort reached a child of either model, and the two project agents whose definitions declare effort max (C2, C8) also ran at max, which their definitions explain; and (4) after the host user settings saved claude-sonnet-5-5 at xhigh and CLAUDE_CODE_SUBAGENT_MODEL=opus, a fresh headless Sonnet 5.5 session ran at xhigh and its unnamed subagent ran on Opus 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "Cases A, B and D are headless one-turn sessions in fresh scratch directories that read the host's user settings (ultracode true, a top-level effortLevel of xhigh, modelSettings for claude-opus-5-5 only before the change, no CLAUDE_CODE_SUBAGENT_MODEL before the change); the setting values are not retained beyond that shape. Case A1 therefore shows that the user settings' top-level xhigh did not reach a Sonnet 5.5 session that had no per-model entry; an interactive fresh session's default was not measured.", - "Cases C come from the interactive coordinator session, whose own effort was max because a model picker set it; each child kind was observed once, so C1 and C3 to C6 show the inheritance rule for one child of each kind, not its variance (C3 is the only child of the other model that named no effort), and they show the interactive effort reaching children of both models, not what a headless child of another model runs at (that is B2 and B3); C2 and C8 run project agents whose definitions declare effort max, so they show the definition, not inheritance. C7 counts the coordinator's unique assistant messages up to 2026-09-29T00:40:00Z (its transcript keeps growing); every message count in this receipt counts each assistant message id once.", - "The Ultracode reminder text is the indicator the 2026-09-23 record used for an active Ultracode; it is not proof of workflow behaviour. This receipt does not show that dynamic-workflow orchestration is active or inactive at a given effort, although the interactive max session ran workflows when asked.", - "Tool use was not exercised in cases A and C1 to C6 (one-turn replies), and B and D used only the Agent tool, so effort or model changes over a long tool-heavy session are untested.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every number from a client's own transcripts, given the results files the run scripts write and, for C, the coordinator's transcript.", - "The 2026-09-23 record's probes on 2.1.281 found that ultracode took precedence over a saved per-model level and that a max session removed the reminder; that record stays as history for 2.1.281 and this receipt does not re-test 2.1.281." - ], - "path": "evidence/receipts/claude-model-effort-probes-20260929.json" - }, - { - "id": "claude-max-default-effort-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Seventeen headless probes, four interactive terminal cases run through a login shell after the host launcher was replaced by the repository-generated one, the launcher's repository tests and the installed binary's settings schema, all on Claude Code 2.1.284 and each read from the model and effort the client recorded in its own transcript, found that: (1) with the host's saved xhigh per-model levels and ultracode true, a Sonnet 5.5 and an Opus 5.5 session ran at xhigh, and --effort max ran both at max with the Ultracode reminder present; (2) in a --effort max session a Workflow stage naming no effort and an unnamed subagent ran at max, a stage naming effort low ran at low and a subagent whose definition says medium ran at medium, whereas with CLAUDE_CODE_EFFORT_LEVEL=max supplied through the --settings env layer the low stage and the medium subagent both ran at max and the variable also overrode an explicit --effort low; (3) --effort max with ultracode false ran at max with the reminder absent and its Workflow stages kept their own efforts; (4) the binary's settings schema lists only low, medium, high and xhigh for effortLevel and modelSettings..effortLevel, so a saved max is dropped, and its Ultracode gate reads the ultracode setting or an ultracode effort choice, with no effort term; (5) an interactive Sonnet 5.5 session started through a login shell with the installed launcher ran at max, ran at xhigh after /effort xhigh, ran at xhigh when launched with an explicit --effort xhigh, and claude -p inside a terminal ran at xhigh (the launcher went from 165 bytes to 1,810 bytes, through a first 911-byte version that a cross-family review sent back for repair); and (6) --effort max on Haiku 4.5 completed with exit 0 and empty stderr and no effort field was recorded for either Haiku run.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); not a provider ledger, and the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The headless probes are one-turn sessions in fresh scratch directories that read the host's user settings (shape only: ultracode true, a top-level effortLevel of xhigh, and per-model levels of xhigh for Sonnet 5.5 and Opus 5.5); other settings would change the baselines.", - "The environment-variable route was supplied through the --settings flag's env block (cases E1 to E4), not through a shell export or the user settings file, and the documented reapplication of settings env values to running sessions was not probed.", - "For the three Workflow cases the Workflow tool result is only a launch receipt; execution is shown by the two child transcripts (attributed by the stage token in each child's first message, never by session id or file order), the workflow journal and the completion notification. The Ultracode reminder is matched as the full phrase 'Ultracode is on: optimize' and is an indicator, not proof of orchestration; orchestration was exercised only where the prompt ordered a Workflow launch.", - "Haiku 4.5 rows carry no effort field at all (the client marks per-turn effort inactive), so the transcript cannot show what became of --effort max on that model.", - "Each interactive case is one Sonnet 5.5 session driven through tmux with the workspace-trust dialog answered yes for a scratch directory (one entry added to the client's trust state); the /effort xhigh command re-saved the user settings file with identical bytes (its mtime moved, its sha256 did not). A first 911-byte version of the launcher went through the same four cases before a cross-family review sent it back for repair; those runs are not part of this receipt, and a later pre-flight of the repaired launcher lost two of its rows to a harness defect (a leftover transcript satisfied a reply check) and is not used either.", - "Not covered: the VS Code extension, the desktop app and the web client, which do not go through the launcher; a host whose bin directory is ~/.local/bin, where no launcher is written; macOS (not run); and the Windows Terminal profile itself (the login-shell route it takes was exercised through tmux).", - "An independent stack-verifier re-derived all seventeen headless rows from the raw transcripts with its own extraction code (17 of 17 matched); that verdict is recorded by the coordinator, not by a script in this receipt.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results files they write, and scratch paths and session identifiers are replaced in them.", - "Nothing here compares answer quality across effort levels; the vendor and third-party effort comparisons are cited in docs/decisions/2026-09-29-max-default-effort.md, not measured here." - ], - "path": "evidence/receipts/claude-max-default-effort-20260929.json" - }, - { - "id": "claude-project-effort-flag-20260929", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-code" - ], - "claim": "Three native headless probes on Claude Code 2.1.284, run on 2026-09-29 in a scratch directory whose only project file was a settings file holding a top-level effortLevel of xhigh (the shape of this repository's committed .claude/settings.json) and each read from the model and effort recorded in the session's own transcript, found that an explicit --effort max ran a Sonnet 5.5 session and an Opus 5.5 session at max, so the flag defeats the project file's xhigh and the host's saved xhigh, with the Ultracode reminder present in both; the same project file without the flag ran Sonnet 5.5 at xhigh.", - "limitations": [ - "Local observation of one workstation and one client version (2.1.284); the recorded effort field is the client's own per-message record, not an API-side confirmation.", - "The three sessions are headless one-turn runs in fresh scratch directories that also read the host's user settings (ultracode true, a top-level effortLevel of xhigh and saved per-model xhigh levels for claude-sonnet-5-5 and claude-opus-5-5, after the host change of 2026-09-29). The no-flag baseline P3 therefore does not isolate the project file, since a saved xhigh applies from the user settings too; cases A13 and A14 of receipt claude-model-effort-probes-20260929 isolated a project file before that change.", - "The launcher that adds --effort max, an interactive session and this repository's own committed settings file were not exercised here; the project file in each case had one key. Each case was run once.", - "The Ultracode reminder is an indicator, not proof of workflow orchestration.", - "The transcripts hold local identifiers and are not retained; the scripts in provenance reproduce every row given the results file run6.sh writes." - ], - "path": "evidence/receipts/claude-project-effort-flag-20260929.json" - }, - { - "id": "claude-spend-attribution-20260929", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code", - "ccusage" - ], - "claim": "A count-only scan of this host's Claude Code transcripts (the 4,183 transcript files that record a version were written by Claude Code 2.1.280 to 2.1.284; scanned 2026-09-29, ccusage 20.0.26), deduplicated by message.id, covers 186,492 API calls and 1,872 advisor iterations from 2026-09-24 to 2026-09-29 (UTC dates). Its input, output, cache-read and cache-creation (5m plus 1h split) totals each match `ccusage claude daily --json --offline`, run on the same copy of the transcript tree, within 0.001%; the top-level cache_creation_input_tokens field is 2.3% higher because of tokens with no split. At Anthropic API list prices the window is $20,927 (ccusage: $19,829; the $1,098 difference is mostly claude-sonnet-5-5, which ccusage leaves unpriced, plus unsplit cache writes only the scan prices, per data.reconciliation.cost_usd): children (Agent-tool and workflow stages) are 81.3% of it, workflow stages alone 66.1%, and 4 of 710 session trees cover half; in ccusage's session view the 303 workflow runs are 68.1% of its dollars (median run $22, largest $448). Cache reads are 39.5% of dollars, executor output 23.8%, cache writes 22.8%, advisor iterations 14.0%. Children with more than 60 calls are 53.2% of dollars; children of a default agent type are 63.4% of children and 41.1% of dollars; effort max covers 82.2% of calls.", - "limitations": [ - "Local observation of one host's retained transcripts (the independent-observation class of docs/acceptance-evidence-policy.md), not a provider ledger or a bill. Both tools read one copy of the transcript tree taken at data.reconciliation.snapshot_at_utc, so their differences are method differences, not drift; a transcript that was deleted or never written is not counted, and the scan skips a line cut by the copy.", - "The transcripts were written by more than one Claude Code release (data.scan.client_versions_by_transcript_file, 151 files without a version field); the scan and ccusage ran with the versions in data.tool_versions.", - "Dollar figures apply Anthropic API list prices (data.prices, pricing page fetched 2026-09-29) to counted tokens. They are not what a subscription charges and do not weight the plan meter. Cache-write tokens with no 5m/1h split are priced at the 5-minute rate, and tokens of models absent from the table (data.scan.unpriced_model_tokens) are not priced. The scan-minus-ccusage difference of $1,098 is the sum of the per-model differences in data.reconciliation.cost_usd.by_model: claude-sonnet-5-5 ($1,006, which ccusage leaves unpriced), claude-opus-4-8 (-$6: ccusage prices it and the scan does not) and the unsplit cache writes of the other models ($96, which ccusage does not count), with a residual of $1 that is not attributed.", - "Counts only: no path, session identifier or transcript content is retained. A session tree is a main session plus every child below it, derived from the path layout; ccusage lists each workflow run as its own session, so its per-session ranking differs from data.scan.session_trees.", - "Invocation counts are attempts, not success rates: each tool population has its own denominator (data.scan.tool_calls, mcp_calls_by_server), and a ToolSearch load is not a call. No per-tool eligible-task success rate follows from them.", - "Cache creation: ccusage counts the 5m and 1h split (965,565,309 tokens) and the scan's split matches it. The scan also reports the top-level field (987,672,811 tokens), which is 22,098,490 tokens above the split; after clamping calls whose split exceeds their top-level field to no remainder, the unsplit remainder is 22,133,575 tokens on 1,878 calls (children: 21,760,880 tokens on 1,760 calls; 1 main-session call reports a split larger than its top-level field). Which cache class the remainder belongs to is not established, and the scan prices it at the 5-minute rate. In the split fields children show no 1-hour-class tokens (their unsplit remainder has no established class); main sessions show 142,720,261.", - "Inference with no usage record is in neither the scan nor ccusage: session titles, compaction, WebFetch summaries, away summaries and the auto-mode classifier. Advisor inference is counted from usage.iterations only. Rows whose model is carry no usage and are skipped.", - "Cache-miss events (data.scan.cache_misses, cache_creation_children) are calls whose cache read fell below half the previous call's context. The gap is measured between the first-written entries of consecutive calls, so it includes the next call's response time (long at effort max), and calls after a compaction also meet the rule; the 5m-1h bin is therefore approximate.", - "The scan's rules (one row per message.id with the per-field maximum, advisor iterations, rows and journal files skipped, the --since filter for calls and tool counters) were checked on a synthetic fixture with hand-computed expected values and one mutant run per rule (data.control). The fixture does not check the price table or the run-shape statistics, and the reconciliation covers token totals, not dollars.", - "The run-shape statistics describe this host and window. They do not show that fewer or shorter children lower cost at equal quality, and data.derived is arithmetic on generic price ratios; no quality comparison was run." - ], - "path": "evidence/receipts/claude-spend-attribution-20260929.json" - }, - { - "id": "wsl-terminal-defaults-20260929", + "id": "socraticode-1150-qualification-20260927", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex" + "socraticode" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, and 2.1.283 in a second distro; Codex 0.157.1; bash 5.2.21; Windows Terminal 1.24.11911.0) the repository now carries the terminal defaults that had been set by hand on the host. Merging the linux-wsl2 Claude Code overlay into the live settings with the repository's merge tool changed nothing (the merge equalled the live file), exactly one Notification group holds the bell command, and its matcher equals the overlay's (the acceptance script checks the matcher because the merge alone cannot see it). The rendered Codex template loads under `codex --strict-config` (the run stops at authentication, never at configuration); a wrong type for `[tui] notifications` and an unknown top-level key are refused, and an unknown key inside `[tui]` is not. The static `adoption_status.py --login-shell` model agreed with the real bash login search in all 512 combinations of three startup files over eight states, a FIFO made bash block (the model calls it unusable and unread), and a control that takes an empty file as absent disagreed in 26. In the second distro, the two per-project Claude profiles of the Windows Terminal settings dropped `suppressApplicationTitle` and gained the quiet bell, the audible-and-taskbar bell style and `COLORTERM` through the profile environment key, with every other profile and setting unchanged; the overlay merged into that distro's Claude settings changed only `$schema`, `hooks` and `preferredNotifChannel`, and its installed hook command printed exactly one BEL. The host practice repository's terminal-profile check now scans the live settings file and passed with 0 findings (the pre-change settings file fails it with 8 findings on the two per-project profiles), and its 22 single-defect controls each failed for exactly their rule.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-27, socraticode 1.15.0 (tag v1.15.0, commit f6191f076a42405f0d5508139f3a8b505cfef93a, released 2026-09-24T10:58:58Z) was qualified and switched into production after the user waived the recorded 7-day cooldown. The npm tarball https://registry.npmjs.org/socraticode/-/socraticode-1.15.0.tgz (1,053,928 bytes) had sha256 f1ec039e58013863c6e736d1c17876386b9fec1daf9abf72960fcc51c3e364d1, sha512 equal to npm dist.integrity sha512-vfz1G5NDepksPjZNnr/rVU5tTK91ghO/izGQQXMaZhP7Py+1hP1k+ptL/ZsYCMhB5NLj5K0XGmcNmygbE1rIWQ== and sha1 equal to dist.shasum 607f909997dcf40bd5722a08f2e7c0e4b90e8334 (read 2026-09-27T21:39:34Z); dist-tags.latest was 1.15.0, the package ships no npm-shrinkwrap.json and its dist/index.js reads no process.argv. The upstream suite passed at the tag: in a clean clone at f6191f07 with Node v24.21.0, npm ci exited 0 (425 packages), npm run test:unit exited 0 (103 files, 2,475 of 2,475 tests passed, 72.83 s), npm run check:release-versions exited 0 ('release manifests match 1.15.0'), npx biome check src/ tests/ exited 0 (175 files, no fixes), npx tsc --noEmit exited 0, and ci.yml's Qdrant-backed regressions with REQUIRE_QDRANT=1 against a disposable Qdrant 1.19.1 exited 0 (4 files, 12 of 12 tests, 28.16 s). Before the cutover, the staged tools/socraticode-1.15.0 prefix served native checks against the production external Qdrant and local embedding endpoint with the production launcher environment. Through mcporter 0.14.1 `call --output text`: codebase_health exited 0 (External Qdrant reachable, embedding endpoint reachable, model nvidia/Nemotron-3-Embed-1B-BF16 loaded); codebase_search exited 0 with stdout byte-identical to the 1.14.0 launcher's for the same query (sha256 e5cba74c163f13cece308f94eebc22640df677f51bda30d8fa557721d2bfbca7, 5 matches); codebase_status exited 0 (Status: green, 89,567 indexed chunks); codebase_graph_status exited 0 (Status: READY, 1,305 files, 441 edges, 'Built by: v1.15.0'). A headless Claude Code 2.1.283 session with --strict-mcp-config reported the server connected and completed codebase_status with is_error false. A Codex exec 0.157.1 run with an args override first failed the call with 'MCP tool call requires approval, but approval policy is never'; the rerun with default_tools_approval_mode=\"approve\" completed the mcp_tool_call with no error and returned Status: green, 89,567 chunks and 'Built by v1.14.0, this server is v1.15.0', because a 1.14.0 server had rebuilt the shared graph 30 s earlier. At 2026-09-27T21:42:49Z the coordinator repointed seven launchers and the bin/socraticode symlink together from tools/socraticode-1.14.0 to tools/socraticode-1.15.0, and restarted the mcporter daemon at 21:42:50Z. At read-back, claude mcp get and codex mcp get showed the 1.15.0 args; a production mcporter codebase_status at 21:43:01Z returned Status: green and 89,567 indexed chunks; codebase_graph_status at 21:43:00Z read 'Built by: v1.14.0 \u2014 STALE, this server is v1.15.0' (last built 21:35:09.670Z), because a 1.14.0 server had built the stored graph at 21:35:09.670Z, before the 21:42:49Z cutover, and no 1.15.0 rebuild happened until 21:43:08.450Z.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro plus one second distro (the independent-observation class of docs/acceptance-evidence-policy.md). Another host collects its own evidence, and none of the new files is in the pinned release: a new host gets them only after a release carries them and the manifest is re-pinned.", - "No Windows Terminal tab was opened or measured after the second distro's profile change, and no session of that distro was started or observed after its overlay. Claude Code applies edits to `hooks` to a running session without a restart (settings reference, \"When edits take effect\"), so open sessions there should pick the overlay up; that was not observed, and an audible or taskbar bell for the alert path was not observed by the user in this work.", - "The profile example was checked as JSON against the policy. It declares no `guid`, so Windows Terminal derives a stable one from the folder and profile names (read in its source at the installed tag); it was not loaded into Windows Terminal or installed on any host. The host's deployed fragment is the practice repository's own file.", - "The `--login-shell` check reads file metadata only and models bash's login search from the source of bash 5.3 (shell.c execute_profile_file, builtins/evalfile.c) and the installed 5.2.21 on Linux; it does not run a login shell, read a startup file (so a non-empty file's hand-off is unknown, reported as null), or cover /etc/profile, ~/.bashrc, another shell, --noprofile, POSIX mode, an sh-mode login or macOS's bash 3.2. A special file is reported unusable: bash reads a device as empty and blocks on a FIFO, and both end the search; an unusable ~/.profile is reached but not read, so profile_read is false; HOME is the environment's, else the passwd entry's, else \"/\", the way bash falls back.", - "The Codex acceptance is a configuration load: no Codex notification was produced in this work, `async-question` does not exist at the macOS pin's tag (inert there) and Codex 0.155.1 was not run. Codex does not validate keys inside `[tui]`, so the repository's test pins that table's setting names. A `request_user_input` question notifies as `plan-mode-prompt` at both tags (tool_requests.rs L449-458), so `async-question` adds only the asynchronous questions 0.155.1 lacks.", - "The second distro's `tui` is `fullscreen` by its own setting; `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` was not set, as the upstream documentation makes it a reactive fix and no stale rendering was observed or measured.", - "The host practice repository has no remote (commits fcd291f, 396d1c1, 9500656, c14e8c3, 9f615ad and d0c7d9c); its check and controls are recorded here as results only. The Windows Terminal settings patch and the second distro's merge were host operations on private files, recorded as values.", - "The second distro's Claude Code is 2.1.283, one release before this host's. A scan of the installed binaries (this host's 2.1.282, 2.1.283 and 2.1.284, and that distro's 2.1.283) found the `notifications_disabled` and `terminalSequence` literals and `worker_permission_prompt` emitted from the same two team-inbox call sites in each (the second distro's binary is byte-identical to this host's 2.1.283 by SHA-256 prefix, and its occurrence counts by `grep -a -o` equal this host's scan), so the whole matcher is live there. The changelog dates `terminalSequence` to 2.1.141 and has no entry for `notifications_disabled`, which the settings reference documents. The hook was run in that distro.", - "The merge de-duplicates hooks by command anywhere in the event, so it never changes the matcher of a Notification hook that already runs the bell command: after a later matcher change the old group must be edited or removed first. The acceptance script checks the group count and the matcher for that reason, and a unit test proves it refuses a catch-all group and an older matcher.", - "The Codex `[tui] notifications` list is in the template that a macOS host also renders. Codex keeps its own per-terminal channel there, so needed kinds still notify natively and the turn-complete one stops; at the macOS pin `async-question` does not exist and is inert. This was decided and documented, and not observed on a Mac.", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): codex_tui_strict_check.py counts a run as loaded only with Codex's session banner and exits 1 unless the template loaded and both configuration controls were refused; overlay_noop_check.py also requires disableAllHooks not to be true and labels its verdict as a check of the user settings file only; login_shell_bash_truth.py and the 512-combination test now also compare first_read; the platform page's advice about profiles.defaults was corrected (Windows Terminal ranks a profile's own value, then profiles.defaults, then a fragment's profile). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + "Not every live session runs 1.15.0 yet, and nothing in the claim rests on that. At the cutover read-back 12 already-running 1.14.0 servers remained; at 2026-09-28T02:03:14Z a process listing still showed 2 processes on the 1.14.0 prefix, the MCP children of two long-running Claude Code sessions that each need their own /mcp reconnect. A codebase_graph_status read-back at about 02:07Z, served by one of those 1.14.0 servers, showed the stored graph still 'Built by: v1.15.0' (last built 2026-09-27T21:43:08.450Z). A 1.14.0 server that rebuilds the graph before its session reconnects would restart the flip-flop (data.all_sessions_on_1150).", + "The pre-cutover checks ran from the staged 1.15.0 prefix against production services while 1.14.0 servers were still running, and shared their lock directory. The 1.15.0 server rebuilt the production code graph ('Built by: v1.15.0', last built 2026-09-27T21:34:21.531Z); a 1.14.0 server rebuilt it again at 21:35:09.670Z, as the post-cutover graph status shows. The decision record predicted this graph flip-flop from source (graph-inputs.ts:609); this is the first native observation of it on this host. No vector reindex was observed: the collection stayed green at 89,567 chunks throughout.", + "Evidence classes differ by part. The upstream suite is the unchanged upstream test code at the tag, with the deviations in data.upstream_suite.deviations. The client checks are local integration evidence, one run per client; the Claude probe ran on claude-haiku-4-5 as a connectivity check, and its model does not change the server's behaviour. The cutover and its read-back are native operations by the coordinator: the mcporter read-backs quote retained captures, while the claude mcp get and codex mcp get results are the coordinator's reported observations, whose raw output is not retained. The 2026-09-25 qualification is documented in docs/decisions/2026-09-25-workstation-sota-refresh.md, but its artifacts were never published, so it is not cited as output here.", + "The Codex check needed default_tools_approval_mode=\"approve\": socraticode declares no MCP tool annotations, and `codex exec` runs with approval policy never, so an unapproved call is refused (docs/decisions/2026-09-26-codex-worker-lane.md, decisions 4 and 5). This is not a 1.15.0 change: the src/tools tree is 7044488e at both tags, so tool names and parameters are unchanged.", + "The upstream suite does not cover everything upstream CI runs. Node 24.21.0 is outside the CI unit matrix (18/20/22/26), and the Qdrant job runs on Node 26. Qdrant 1.19.1 replaced CI's v1.17.0. npm run build was skipped before the regressions, because no test references dist/. Not run: the Docker-backed test:integration and test:e2e suites (this host has no Docker), the rust-graph-vs-cargo job, and the packaged-artifact consumer jobs. npm ci warned that 19 packages have install scripts not yet covered by allowScripts, and its audit reported 3 moderate severity vulnerabilities; neither was reviewed here.", + "The sha256 pin covers socraticode's own tarball only. The package ships no shrinkwrap, and later releases inside its dependency ranges now resolve: undici 6.29.0 (2026-09-25T09:45:19.865Z) and @lumis-sh/wasm-eex 0.26.2 (2026-09-26T00:38:34.735Z). recipes/README.md therefore installs with --before=2026-09-24T12:00:00Z. adoption/bootstrap-linux.sh install_npm passes no --before, so a bootstrap install can resolve a different dependency tree from the qualified one.", + "The landscape ledger does not move: catalogs/landscape/foundation.json keeps the winner pin socraticode 1.14.0 from the sealed 2026-09-22 layer-verdict packets (decision record, Scope). A host receipt recorded at 1.15.0 therefore matches no winner pin. scripts/host_receipts.py record refuses it unless --allow-unbound-version is passed, and it stays unbound until a new verdict wave re-records the layer.", + "Linux x86_64 only: adoption/pins-macos-arm64.json keeps socraticode 1.14.0. The npm tarball is platform-independent, but a Mac needs its own acceptance, and nothing here is macOS evidence.", + "The user waived the recorded 7-day cooldown (earliest cutover 2026-10-01T11:01Z), so it was not served; the release was about 3.4 days old at the decision. The upstream check at 2026-09-27T21:45Z found no newer release, main 9 commits ahead with documentation changes only, and no issue reporting a 1.15.0 regression. That rules out only regressions already reported.", + "Not repointed: 16 ephemeral scratch CODEX_HOMEs under other sessions' scratchpads, plus dated backups and archived documents. The scratch homes are live launchers, not history: a dated reviewer observation (PR #446 review, 2026-09-28) found a peer session's scratch Codex review home whose config.toml was created at 2026-09-27T22:37:21Z, 54 min after the cutover, from main's pre-merge template, and names tools/socraticode-1.14.0. Such homes keep launching 1.14.0 until this change merges and they are re-rendered, and each such server can rebuild the shared graph as 1.14.0, restarting the flip-flop in the first limitation.", + "The notifications/message counts are untested (no discriminating control): the zero matches in data.pre_cutover_native and data.post_cutover_readback come from captures with no failing control of the same predicate, so docs/acceptance-evidence-policy.md records them as untested and the claim does not rest on them.", + "Not exercised: interactive sessions over time with the newly delivered notifications/message stream, beyond the single calls here (its volume at SOCRATICODE_LOG_LEVEL info); the mcporter daemon keep-alive path under load; and the two mixed-session hazards known from source only, the cross-process symbol-graph staging cleanup race (symbol-graph-store.ts:843-866, startup.ts:324-336) and codebase_stop's SIGTERM to another session's indexer (index-tools.ts:478-499)." ], - "path": "evidence/receipts/wsl-terminal-defaults-20260929.json" + "path": "evidence/receipts/socraticode-1150-qualification-20260927.json" }, { "id": "socraticode-1160-qualification-20260929", @@ -3584,112 +3710,152 @@ "path": "evidence/receipts/socraticode-1160-qualification-20260929.json" }, { - "id": "omniroute-3851-npm-qualification-20260930", - "kind": "compatibility_attempt", + "id": "sota-convergence-20260922", + "kind": "historical_inventory", "component_ids": [ - "omniroute" + "affaan-m/ECC", + "agent-browser", + "agentsview", + "ai-memory", + "alertmanager", + "apple-container", + "ast-grep", + "beads", + "ccusage", + "claude-code", + "claude-hud", + "codebase-memory-mcp", + "codex", + "codex-for-claude", + "context-hub", + "context-mode", + "dagu", + "davila7/claude-code-templates", + "difftastic", + "fastapi", + "gitleaks", + "grafana", + "headroom", + "huggingface-hub-native", + "jcodemunch-mcp", + "llama-cpp", + "loki", + "markitdown", + "mcp-inspector", + "mcporter", + "nextjs", + "ntfy", + "omniroute", + "openresearch", + "opentelemetry-collector-contrib", + "otel-tui", + "playwright-cli", + "playwright-test", + "poppler", + "postgresql", + "prometheus", + "promptfoo", + "qdrant", + "qmd", + "react", + "repomix", + "restic", + "rtk", + "sandbox-runtime", + "serena", + "shanraisshan/claude-code-best-practice", + "shellcheck", + "skills-ref", + "socraticode", + "syft", + "systemd", + "tavily-cli", + "toon", + "vllm", + "worktrunk", + "zizmor" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, the published npm package omniroute@3.8.51 (tarball https://registry.npmjs.org/omniroute/-/omniroute-3.8.51.tgz, 137,907,369 bytes, 26,761 entries, sha256 421699fdda34bd85bcf035257e88e359edc033c01b85d54b6a4921c1cda4d2ef, sha1 and sha512 equal to the registry's dist.shasum and dist.integrity) was installed with the install and rebuild commands of the repository's recipe (docs/foundation-stack.md, 'Optional OmniRoute installation and bounded gateway acceptance', which pins omniroute@3.8.50; run here with the version changed to 3.8.51) into a fresh prefix in a clean environment (Node v24.21.0, npm 11.19.0; npm install exit 0 from 2026-09-30T04:44:05Z to 2026-09-30T04:45:40Z, npm rebuild exit 0 at 2026-09-30T04:45:45Z), printed omniroute --version 3.8.51 and dist/BUILD_SHA c1e30b7, and, started twice on one throwaway data directory in a fresh user and network namespace with the real /usr/bin/lsof on PATH and no shim, answered /api/health 200 after 3 s and 4 s, kept its store at 193 migration rows, integrity ok and 138 tables across the restart, and ended each start with exit 143 on SIGTERM with no process or listener left. The registry's SLSA provenance attestation for the package names a subject sha512 equal to the tarball's, the workflow .github/workflows/npm-publish.yml at refs/tags/v3.8.51 of github.com/diegosouzapw/OmniRoute and source commit c1e30b7676975feb298b49eff6ff58923c04b89e, the commit of upstream's v3.8.51 tag, and npm audit signatures (npm 11.19.0), run on the tree of a separate throwaway project that installed omniroute@3.8.51 as a dependency (1156 packages; the smoke-tested global install added 1153, a difference not investigated), reported 0 invalid and 0 missing, verified registry signatures for 1156 of 1156 packages and attestations for 233, among them omniroute@3.8.51's own (npm publish and SLSA provenance). The package contains neither carry of the running gateways (0 alpha/search route files, 0 occurrences of the affinity function). This qualifies the published package as a candidate for the manifests/stack.json omniroute pin; the pin stays 3.8.50 in the change that adds this receipt, and the running gateways are untouched.", + "claim": "Dated per-layer SOTA repository convergence: 16 foundation layers and 12 consolidated trading layers confirmed against authenticated GitHub metadata for 396 repositories (0 archived, 1 rename, 15 component pins with a newer release); 34 newcomers from 342 stars, 26 in-scope awesome lists and a bounded web sweep were adversarially verified and one (snyk/agent-scan) is a targeted candidate; the engine card was reconciled with the NautilusTrader 2.0.0rc5 destination.", "limitations": [ - "Not a pin move and not a cutover. manifests/stack.json keeps omniroute 3.8.50 and its source_pin in the change that adds this receipt; moving them is a separate lane:shared change, because the landscape check binds the row's version and source_pin to catalogs/landscape/upstream-snapshot.json. The two running gateways were not touched: no write, restart or unit change (Gate A window W). They are source builds of upstream's release/v3.8.51 tip 2f42a9ac1, whose tree equals the v3.8.51 tag commit's, plus carries; the published package contains neither carry (data.carries: 0 alpha/search route files and 0 occurrences of the affinity function, against 6 and 23 on the 20128 build and 6 and 0 on the 20129 build), so installing it would not replace either gateway without dropping upstream PR 13788 (still open upstream) or the local affinity patch.", - "Evidence classes. The install, the boot, restart and stop smoke, the provenance read and the carry counts are our integration checks (scripts as published, outputs as printed); npm audit signatures is npm's own verification. Upstream's own checks (check:pack-artifact, check:pack-boot, test:unit) were not run on this package: they need the source checkout and ran on the source builds only (evidence/artifacts/omniroute-rebuild-20260930).", - "The provenance read is not our signature verification. The probe decoded the two attestation payloads and compared the subject digest with the tarball's; the certificate and signature verification is npm audit signatures' (checks/audit-signatures-20260930.txt, and its JSON form summarized in checks/audit-signatures-summary-20260930.json), which ran in a separate throwaway project that installed the package as a dependency with --ignore-scripts (not on the smoke-tested prefix, which npm audit signatures refuses: EAUDITGLOBAL, checks/audit-signatures-global-refused-20260930.txt); the audited tree has 1156 packages and the smoke-tested install added 1153, and why they differ was not investigated. The smoke-tested install fetched its own copy through npm install, which checks each download against the registry's dist.integrity itself (that check's output is not part of this record); the digests recorded here are of the separate tarball that npm pack wrote at 2026-09-30T04:44:01Z.", - "Recipe deviations. The recipe's last steps (serve --daemon, omniroute status, and curl of /api/health as written) were not run as written: the smoke started serve in the foreground (scripts/smoke_inner.sh.txt) with REQUIRE_API_KEY=true, OMNIROUTE_SERVER_HOST=127.0.0.1, port 20197 and sidecar ports 20198 and 20199, and read /api/health with curl. The smoke ran in a fresh namespace with only its own loopback; npm install and rebuild used the host network.", - "Nothing beyond boot was exercised: no provider connection, credential, model call or request through the gateway, and none of the rebuild record's settings (compression, combos, Codex client version). The store was a fresh one that the package created (193 migration rows). Native modules were rebuilt per the recipe's allowlist (rebuild exit 0) and loaded only as far as the server's boot reaches them.", - "A first run of scripts/smoke_npm.sh.txt failed: a wrong PREFIX argument (a path with no bin/omniroute) made the serve step exit 127 and the store read print an sqlite open error. Its throwaway directory and logs were deleted before the second run and are not retained, so the failed attempt rests on the coordinator's reading of that printed output and on nothing retained; the second run (2026-09-30T04:46:36Z to 2026-09-30T04:46:57Z) used the correct prefix and is the recorded one.", - "The lsof shim of the unit templates (adoption/templates/systemd/omniroute.service, 'The lsof shim') is to be dropped at the next rebuild after a free-port start passes without it. This package's free-port start passed without it (real /usr/bin/lsof, port 20197 free, no shim), which is evidence about the published package and not a test of the running builds' prefixes; the units are unchanged.", - "Cooldown. docs/decisions/2026-09-25-workstation-sota-refresh.md records a 7-day cooldown for a release that is not a security fix (applied to socraticode 1.15.0 and waived by the user on 2026-09-27). No recorded decision applies or waives it to an OmniRoute pin move; if it applies, the earliest move is 2026-10-07T02:54:04Z, seven days after the npm publish of 3.8.51 (2026-09-30T02:54:04.736Z, evidence/artifacts/omniroute-rebuild-20260930/checks/upstream-release-check-20260930.json).", - "One workstation, Linux x86_64 under WSL2, Node v24.21.0 only. Other platforms, upstream's Electron and Docker artifacts, and other Node versions are not covered. The registry returned no gitHead for 3.8.51, so the tie of the tarball to upstream's tag commit rests on the provenance attestation, not on registry metadata." + "Historical inventory of metadata and source review only; not installation, execution, benchmark or license-file inspection, and not a superiority claim.", + "Freshness is GitHub REST metadata observed on 2026-09-22; a newer release is information, not a reason to upgrade, and release notes were not read.", + "Review lanes and refuters are native model judgments over cited evidence; agreement is not acceptance. Codex cross-family review ran after the usage limit was lifted: four passes on the canonical branch (7/2/1/0 findings) and three on the agent-lab saved workflow (3/1/0); all supported findings were fixed with regression tests and the final passes found no actionable regressions.", + "Critic-named gaps remain open: dated security identity, pre-2020 delisting coverage, point-in-time news/filing availability, IBKR acceptance, LEAN/SPY parity, source-review-only evaluation and portfolio layers." ], - "path": "evidence/receipts/omniroute-3851-npm-qualification-20260930.json" + "path": "evidence/receipts/sota-convergence-20260922.json" }, { - "id": "codex-01592-qualification-20260930", + "id": "syft-1540-qualification-20261003", "kind": "native_cli_e2e", "component_ids": [ - "codex" + "syft" ], - "claim": "On host nativestack-5975wx-20260925 on 2026-09-30, Codex CLI 0.159.2 was qualified in its existing prefix tools/codex-0.159.2 and the Linux pin moved to it from 0.157.1. The host launcher bin/codex already executes that prefix (its exec line names it, and `codex --version` through the launcher printed codex-cli 0.159.2 at 2026-09-30T04:32:26Z): a peer installed that prefix and wrote the launcher at 2026-09-30T03:21Z to 03:22Z, before this unit, which installed, relinked and wrote nothing on the host. The npm wrapper @openai/codex@0.159.2 (4,904 bytes, sha256 cf1e5d7b6e317a4a1d36dbff2ebd9b3cf048ac98d06fcb6682c57248e023cad2) and its platform package @openai/codex@0.159.2-linux-x64 (162,475,310 bytes, sha256 84a6b35fb45bdcb94cef9fcb329438045a8911f53876cc9a9a7e6f9bb1382eba) matched npm dist.integrity; `npm audit signatures` verified both registry signatures and both attestations; each attestation's subject digest equals the downloaded tarball's sha512, and the SLSA provenance names .github/workflows/rust-release.yml at refs/tags/rust-v0.159.2, commit ff6aec96948b70d94983af2641a6b67c94faeff5, the commit the tag object 8b9fa496bbf2c47aebd62e85a080b9a522a455b5 peels to. The native binary in the platform package (sha256 1748767b230ebfc3d4ab7e4e254920d0c0ad9691fd8c11f190e7d44511a4a92e, 286,754,152 bytes) is byte-identical to the one in the GitHub release asset codex-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals the release API digest, and the package's whole vendor tree (44 files, with codex-code-mode-host, rg and bwrap) is byte-identical to the complete native package codex-package-x86_64-unknown-linux-musl.tar.gz, whose sha256 equals both its API digest and its line in codex-package_SHA256SUMS. All 49 files of the existing prefix are byte-identical to the two verified tarballs; its only other entry is npm's bin/codex link. Each of these comparisons failed on a copy with one byte changed. In bwrap sandboxes with no network, a read-only root and a fresh scratch HOME and CODEX_HOME per case (~/.codex never used, no credential read), 0.159.2 and the 0.157.1 baseline printed their own versions; `codex exec --help` and `codex --help` were byte-identical between them and to the committed 0.157.1 outputs of the previous qualification; `codex mcp list --json` printed [] in an empty home, and after `codex mcp add` both versions returned the same entry and transport keys from `codex mcp list --json` and `codex mcp get --json`; `codex features list` still lists daemon_auto_start as stable and on, and `codex features disable daemon_auto_start` still writes [features] daemon_auto_start = false; `codex debug prompt-input` rendered the stack's AGENTS.md top-rule marker once from a scratch home holding adoption/templates/codex.AGENTS.template.md and zero times from an empty home, on both versions; offline `codex debug models` lists gpt-6.1-sol at priority 1 in 0.159.2's bundled catalog (gpt-6-astra moves to priority 2) and not at all in 0.157.1's or in the 0.155.1 build's (`codex debug models --bundled`). At the two tag commits the exec layer (codex-rs/exec/src/cli.rs, exec_events.rs, event_processor_with_jsonl_output.rs and codex-rs/utils/cli/src/shared_options.rs) is byte-identical, so the `codex exec --json` events that tools/adoption/prove_codex_lane.py and tools/sota-convergence/landscape-sweep/codex_job.py read keep their shapes, and the config schema adds 18 key paths and removes none. `prove_codex_lane.py --help` exited 0, and its static checks (no --live) in a scratch home gave 0.159.2 and 0.157.1 the same row verdicts, the lane not being applied there, and printed byte-identical output when re-run with this branch's prove_codex_lane.py. tools/adoption/apply_codex_lane.py's dry run failed its codex version precondition on 0.159.2 while its CODEX_VERSION was 0.157.1; with the constant moved to 0.159.2 on the same branch it prints '[ok] codex version: codex-cli 0.159.2 (pin 0.159.2)' and refuses only on the three preconditions an empty scratch home cannot meet (HOST_PATH, config.toml, daemon_auto_start), while the 0.157.1 control adds '[fail] codex version: codex-cli 0.157.1 (pin 0.159.2)' to those three; and the opt-in CodexIntegrationTests of tests/test_codex_worker_lane.py passed 10 of 10 against the prefix's native binary, while all 10 skip with 0.157.1 on PATH. The repository's merged rollout parsers (tools/token-e2e/evidence.py and tools/skill-usage/skill_usage.py), run unchanged and read-only over the host's 19 existing rollouts written by 0.159.2 (3,783 records), reported 0 parse errors, as over the 1,350 rollouts written by 0.157.1; a synthetic malformed line counted as 1 error in each. No live model call ran.", + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", "limitations": [ - "No live model call ran (not run): `prove_codex_lane.py --live`, a GPT-6 or GPT-6.1 turn through 0.159.2 and any provider request are outside this unit, because the native Codex allowance belongs to the sealed Gate A run. The sandbox cases exercise the CLI surface (version, help, MCP registration, features, prompt input, the bundled catalog) without a provider, a sign-in, streamed turns, sandboxed tool execution, compaction or a running MCP server.", - "Live 0.159.2 behaviour on this stack (role spawn through agent_type, --ignore-user-config with the role carriers, sandbox behaviour and the join proof) is covered by the Gate A owner's rehearsal receipts: peer rehearsal (session native-agent-stack-2d), not re-run here.", - "The switch was not made by this unit: a peer installed tools/codex-0.159.2 (files written 2026-09-30T03:21:27Z to 03:21:30Z) and wrote the launcher with its exec line naming that prefix at 2026-09-30T03:22:59Z, and ~/.local/share/codex-ecosystem/installed-versions.txt still reads codex-cli 0.157.1, a host record this unit does not own and did not change.", - "The lane is not accepted on 0.159.2 here: in a scratch home the static rows marker, rtk-inline, binding (from / and from the checkout), profile and roles fail because the lane is not applied there, with the same verdicts on 0.157.1; blind failed with exit 127 when --codex named the prefix's npm bin (the row's PATH is that directory plus the default path, which has no node) and passed through the launcher. The opt-in CodexIntegrationTests meet the same gap: they build PATH from codex's own directory plus the default path, so with the prefix's npm bin first on PATH codex never started (FAILED, failures=15, skipped=2), and a scratch directory pairing that launcher with node sits under /tmp, which their bwrap hides (4 failures and 2 skips on 'bwrap: execvp codex'). Their 10 of 10 pass ran the prefix's native binary directly, without the two CODEX_MANAGED_* variables the npm launcher adds. Neither the lane's apply nor its --live proof ran on a real Codex home.", - "The `npm audit signatures` control did not discriminate: flipping one character of the wrapper's integrity in both lockfiles still gave exit 0 and the same report, because npm 11.19.0 verifies the registry's own manifest for each name and version (lib/utils/verify-signatures.js lines 296-303), not the lockfile. The audit therefore shows only that the registry metadata of both versions is signed and attested; the downloaded bytes are bound to that metadata by the integrity check and to the attestations by their subject digests, each with a failing control.", - "The .sigstore bundles of the two GitHub assets were downloaded but not verified: no sigstore verifier is installed here, and `gh attestation verify` needs the GitHub REST API, which was rate-limited for the host's shared login. The tag's own signature was not checked.", - "GitHub REST through gh answered HTTP 403 'API rate limit exceeded' for the shared login at 2026-09-30T04:14:32Z and 04:15:10Z, before and after its bucket reset, so the four release records came from the unauthenticated REST endpoint (HTTP 200 at 04:15:38Z), tag objects from git ls-remote and source files from raw.githubusercontent.com at the two tag commits.", - "The background app-server probe of the 0.157.1 qualification was not repeated at 0.159.2: only the feature's listing and the disable path were checked, so the interactive-launch copy into CODEX_HOME/packages/app-server-daemon and its updater loop are measured at 0.157.1 only.", - "The rollout check covers 19 rollouts written by 0.159.2 (3,783 records) and retains counts and schema type names only. Types present in the 0.157.1 rollouts but absent from that sample (compacted, CollabAgentToolCall, ContextCompaction) were not observed, which is no evidence that 0.159.2 removed them; the one type new to the sample, retained_context, is a RolloutItemWire variant at both tags (codex-rs/history/src/rollout_payload.rs line 51 at rust-v0.157.1, line 60 at rust-v0.159.2).", - "rust-v0.159.2 was published 2026-09-29T23:57:16Z, so the pin moves inside the 7-day cooldown that docs/decisions/2026-09-25-workstation-sota-refresh.md applied to a release that is not a security fix; it moves because the Gate A owner chose 0.159.2 as the candidate frozen Codex version (relayed by the coordinator) and the host launcher already runs it.", - "The Linux pin, manifests/stack.json and the records that mirror its version move (catalogs/landscape/upstream-snapshot.json, whose codex entry was re-checked on 2026-09-30, blueprints/token-native-focus/saturation-audit.json and the generated new-host grand list), and so do tools/adoption/apply_codex_lane.py's CODEX_VERSION with its test fakes and the current-pin statements of recipes/README.md, adoption/bootstrap.md and the two platform pages; adoption/pins-macos-arm64.json keeps 0.155.1 until its own qualification, catalogs/landscape/foundation.json keeps its winner pins, and dated measurements and source citations made at 0.157.1 stay as recorded.", - "Upstream tests (cargo test) were not run on this host. The qualification and this receipt come from one worker family (Claude Opus 5.5) and were not independently reviewed.", - "The shared Codex template's new default does not fit the macOS pin: gpt-6.1-sol, which offline `codex debug models --bundled` lists for the Linux 0.159.2 build but not for the Linux 0.155.1 or 0.157.1 builds (the rust-v0.159.1 release notes add it to the bundled catalog), while adoption/pins-macos-arm64.json stays 0.155.1. adoption/templates/codex.config.template.toml therefore names its model and default_subagent_model through the CODEX_MODEL placeholder, which tools/adoption/render_config.py fills from the selected platform's Codex pin as it fills SOCRATICODE_VERSION (gpt-6.1-sol from 0.159.1, gpt-6-astra before it), so a macOS render keeps gpt-6-astra until macOS has its own 0.159.x qualification (data.checks_after_the_constant_move.template_model_per_platform, run with Linux builds only).", - "Linux x86_64 only, one host; nothing here is macOS evidence." + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." ], - "path": "evidence/receipts/codex-01592-qualification-20260930.json" + "path": "evidence/receipts/syft-1540-qualification-20261003.json" }, { - "id": "notification-types-20260929", + "path": "blueprints/us-equities/supply-chain/receipt.json", + "id": "syft-sdk-inventory-20260919", "kind": "native_cli_e2e", "component_ids": [ - "claude-code" + "syft" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.285, and 2.1.283 in a second distro; tmux 3.4; Windows Terminal 1.24.11911.0) the installed client knows 17 distinct notification types, all valid matcher values (a 15-item base array plus the two elicitation completion types), the same 17 in 2.1.283, 2.1.284 and 2.1.285; 12 are documented in the hooks reference. 8 now ring through the overlay's bell hook and 9 stay quiet, each with a reason in one table that the scan and the repository's test share; none is without a decision. The type the bell missed was `push_notification`, the model's own PushNotification. In an interactive pty probe with no user-scope settings a model push raised one Notification event of that type and rang nothing; with one more hook that matches the type, exactly one BEL reached the terminal; and with this host's own settings after the change, the same one BEL. The tool sends only while the client judges the user away: the probe's arms show both branches of the rule read from the binary (with a focus-out report the event fires whatever the elapsed time; with no focus report it fires after more than 60 s without input and does not fire after 15 s); once a focus report has arrived its last state decides, so a tab last reported focused counts as present however long the user is away, and how Windows Terminal reports a background tab was not measured. Before the change, the same probe on this host's settings gave one event and no BEL (the coordinator's own output, recorded as values). Both Claude settings files (this host's and the second distro's) were brought to the overlay with the repository's merge tool on a private copy, backed up, and differ from their originals only in the bell group; a rerun of the hardened replacement tool reports nothing to do on both. The scan's first catalog pattern read 15 of the 17 matcher values on 2.1.283 without an error (a `$` in a minified name); the reader now reads 17 on all three releases, exits 1 when it finds nothing, and the fix is covered by tests and negative controls. tmux 3.4 forwards a pane's BEL to the outer terminal (a pty in the probe) by default, and `bell-action none` or `visual-bell on` stops it.", + "claim": "Pinned upstream Syft 1.52.0 enumerated the existing equity-worker-sdk directory with networking isolated and source read-only; all 36 package name/version/PURL tuples agree between native Syft and CycloneDX outputs and all 36 installed Python metadata distributions match.", "limitations": [ - "One workstation, one probe model (Haiku) and one Ubuntu 24.04 distro plus a second distro (the independent-observation class of docs/acceptance-evidence-policy.md). No audible bell in Windows Terminal was observed by the user in this work, and the probe's outer terminal is a Python pty, not Windows Terminal: Windows Terminal defines DECSET 1004 focus reporting (microsoft/terminal v1.24.11911.0 DispatchTypes.hpp L541), but whether it reports focus for a background tab or an unfocused window, and what the last report is when a real user walks away, was not measured.", - "The presence rule is read from the installed client, not run against a real absence (`function V4r`, called only by the PushNotification tool: the terminal's focus state is undefined until the first focus report and then the last reported state decides; before any report, input within 60 seconds (`var KWt=60000`); `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` bypasses it). The probe measures both branches with a synthetic focus-out report or none. A tab last reported focused counts as present however long the user is away, so the bell can stay silent for a user who left a focused tab; in a terminal session the permission prompt's notification is timed by inactivity (source read: the terminal path compares the time with the later of the prompt's appearance and the last interaction; the fixed-delay timer is the Agent SDK path). Two more conditions leave the bell silent and were read from the binary, not run: with Remote Control connected and `agentPushNotifEnabled` off the tool returns `config_off` before it raises the event, and the tool exists only where the server-side flag `tengu_kairos_push_notifications` is on (it is on for this account).", - "The probe does not record the tool's reply, so the \"Not sent because you're active in this terminal.\" text (`disabledReason: user_present`) comes from the binary. A headless `-p` run of a few seconds (the elapsed time was not recorded) raised no Notification event and the tool's result began \"Not sent\"; the same presence rule applies to `-p`, and a longer run was not measured.", - "The probe cannot say how often a model chooses to send a push, so the decision's overturn condition (models over-notify) is the check.", - "The 'before' run on this host's own settings (one event, no BEL) is the coordinator's own output of the same probe, recorded here as values; it cannot be repeated now that the live matcher changed. Arms A and B reproduce the same causal pair independently of any user setting. The first recorded runs of arms A and B ended without a tool call (state waiting_tool) while the host was heavily loaded by a peer's build; both are kept in recorded/push_probe_arms.txt and the arms above are the reruns after the load fell.", - "The scan counts `notificationType:\"\"` literals, which is a lower bound: seven types show zero (the documented quota and elicitation dialog types that fire through other spellings, and `computer_use_enter` and `model_refusal_fallback`). `computer_use_enter` occurs once in the binary, in the matcher list; `model_refusal_fallback` is a matcher value and a system-message subtype with no such call site; a text search cannot prove absence (this host also sets `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1`), while `computer_use_exit` has a call site (the client says \"Claude is done using your computer\"). Five types are outside the hooks reference (`worker_permission_prompt`, `push_notification`, `computer_use_enter`, `computer_use_exit`, `model_refusal_fallback`); all rest on the installed binary and a later release can change them.", - "The second distro's binary is byte-identical to this host's 2.1.283 (recorded by SHA-256 prefix in the receipt wsl-terminal-defaults-20260929); the type list was scanned on this host's copy of that release, and the second distro's settings were read back as values. No session of that distro was observed ringing. The hardened replacement tool's `polaris` write path (a `mktemp` staging file, refusals for a symlink and an existing backup) was not run against a real distro after the change; only its read-only dry run was; its shell snippet ran under this host's dash on a synthetic home in the coordinator's own scratch check (a normal install, a symlink and an existing backup; not retained), and its `local` path in the controls.", - "The agent-teams statements are a source review of the documentation fetched on 2026-09-29, not a team run: in-process display works in any terminal and keeps the teammates in the lead's terminal, split panes need tmux or iTerm2, and the same page's limitations say split-pane mode isn't supported in Windows Terminal (it may mean native panes; tmux inside WSL is outside its stated support and unmeasured for teams here). Whether an alert a teammate raises (`worker_permission_prompt`) reaches the hook was not observed. No `teammateMode` setting and no team hook was added.", - "The change touches ~/.claude/settings.json, which the Gate A freeze list names; it was made before any seal announcement and reported to that lane's owner, who verified the hash and the single-group difference. The file was rewritten later the same day (its hash moved, see the sha256 prefix in the dry-run output; the cause is not established here); the bell group is unchanged (the dry run).", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): the presence rule and the agentPushNotifEnabled check apply to a local session only (a remote workspace skips both); the permission prompt's notification in a terminal is timed by inactivity (the fixed-delay timer the earlier wording took for it is the Agent SDK path); notification_types_scan.py now resolves the catalog's spread identifier to its single array assignment (twelve reader tests, eleven mutants after the final read: an assignment counts only as a complete initializer, a member assignment of the same short name, also through whitespace or a comment, is not the catalog's array, every declared catalog must be one the reader recognizes, and the scope and later-mutation limits are stated); replace_bell_group.py compares the live file with the bytes it read before the backup and right before the rename (a save between the last comparison and the rename is still lost and is in neither file: a documented residual with a case of its own), refuses keys beyond matcher and hooks on the bell group, names no matcher value in a refusal and has no second-distro target (27 controls, 15 mutants); the tmux and push probes' verdicts, signal handling and printing were repaired (the tmux verdict now requires all five arms, the tmux sockets live inside the probes' private directories, and the derived push probe's hooks-disabled control exits 1 on a BEL). The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." - ], - "path": "evidence/receipts/notification-types-20260929.json" + "Inventory is scoped to one existing SDK prefix; it does not cover every Codex/Claude runtime, host OS, external interpreter or services.", + "Three symlinks resolving outside the selected prefix were not followed; externally installed interpreter and system libraries are outside this inventory.", + "Checksums matched publisher release files and GitHub asset digests. Release signature and build provenance were not verified; this is not a broader authenticity verdict.", + "No vulnerability scanner or vulnerability database was run or downloaded; no vulnerability-free claim follows from inventory success.", + "License metadata was present for 34 of 36 packages and an SPDX expression for 31. Missing or unparsed metadata is not evidence of absent licenses or an approved compliance policy.", + "All 36 installed Python distributions matched native METADATA names/versions after standard case/separator normalization. This does not establish completeness for vendored native libraries or other package types.", + "CycloneDX 1.7 contains 36 library components plus 87 file components; file components are not additional installed packages.", + "Raw reports and source-file manifest stay private; their hashes and selected public package metadata are published. The source fingerprint includes host-specific symlink targets and is not a portable lockfile.", + "This is a point-in-time inventory, not dependency upgrade, recurring scan, model inference, agent quality evaluation or measured provider token savings.", + "One initial summary reader assumed every CycloneDX component had a version and raised KeyError. The native scan was unaffected; corrected enumeration separates package and file components." + ] }, { - "id": "login-shell-contract-20260929", + "id": "synthetic-catalyst-contract-20260920", "kind": "native_cli_e2e", "component_ids": [ - "claude-code", - "codex" + "duckdb" ], - "claim": "On this host on 2026-09-29 (Claude Code 2.1.284, bubblewrap 0.9.0, Windows Terminal 1.24.11911.0): a login shell started the way the Windows Terminal profiles start it (wsl.exe --exec /bin/bash -lc) could not find claude, codex or rtk while an empty ~/.bash_profile hid ~/.profile; the empty file had been created within about a second of 14 other empty entries (13 in the home directory, one in the system temp directory) by a scrub-mode `claude -p` probe of a peer session, and removing that one file restored the commands. In an isolated home with the installed client, CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 created an empty ~/.bash_profile and removed ~/.local/bin from the login PATH; the same run without the variable created no empty files; and a real ~/.bash_profile that hands off to ~/.profile stayed byte-identical and kept the PATH. The doctor's login-shell-path check failed on the three broken temporary homes and passed on the two healthy ones and on the real host, and the real host's login PATH was identical before and after the hand-off file was created. The reproduction was re-run after the bounded re-check with the client's temporary state redirected to a short private directory beside each throwaway home (TMPDIR and CLAUDE_CODE_TMPDIR): the real /tmp and /tmp/claude- gained no top-level entry during the recorded run apart from /tmp/inline-comments-buffer.jsonl, which was absent before, appeared during the run and was removed by the script, the real home's placeholder names were unchanged, and the arm counts were 0 empty files with no variable, 27 with it in the stock home and 26 with a real hand-off file. A control run whose socket path (121 bytes, from a 99-byte private path) exceeded the client's own 103-byte cap on `/cc-socks/.sock` put the messaging-socket directory into a fixed /tmp/cc-socks- directory in the real /tmp instead, so the redirect holds only while the private path is short (under about 81 bytes with a 7-digit pid) and XDG_RUNTIME_DIR stays unset. The native `claude doctor` warned 3 times with the sandbox off and 4 times with it enabled and a planted stale mask file; it named the planted file (the warning is live) and named the scrub-created ~/.bash_profile, a writable 0644 file outside the warning's documented scope of 0-byte read-only placeholders, in neither run. The upstream landscape on 2026-09-29 gave no trigger to change the terminal settings: no new Windows Terminal release, both toast signals unchanged, Claude Code 2.1.284 still the newest, and Codex's notification, palette and kind sources identical between the installed tag and the newest stable tag (rust-v0.159.0 at the re-run).", + "claim": "Native DuckDB1.5.5 executed an exact BIGINT availability query on five synthetic observations in a network-disabled process. Thirteen focused standard-library tests exercise threshold, label, timing, units, interval and inspection-registry failures. No empirical trading experiment or new LEAN/skfolio run.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). The second distro's two per-project Claude profiles were not measured (that distro was later unregistered). Another host collects its own evidence.", - "The incident's creator is established by timing, by the same-second leftovers in the probe's scratch working directory (present in its scrub arm, absent in its no-scrub arm), by the owning session's confirmation, and by the isolated reproduction plus public reports (anthropics/claude-code #76236, #78072). The peer probe itself was not re-run. The reproduction stops at the API-key check: it shows the files are created at startup, and says nothing about a full session or about exit. Upstream states the placeholders persist after exit and is considering cleaning them up; that was not measured here.", - "The observations of the incident (login probes before and after, the leftover list, the journal and unit checks) are the coordinator's own shell output of 2026-09-29, recorded here as values; no raw output is retained.", - "The hand-off file protects only the name ~/.bash_profile. A creator that truncates or replaces an existing file is not covered; the doctor check catches an empty ~/.bash_profile or ~/.bash_login and any missing command, but the doctor has no scheduler, so it finds a recurrence only when it is run.", - "The doctor code lives in a repository with no remote (practice repository commit 512c3e3); this receipt's artifact folder carries a copy of the function with the home made a parameter. The full doctor run predates the creation of the hand-off file; the check alone was re-run after it.", - "The Codex comparison is a source diff of four files between two tags plus a check of the notification definitions; Codex 0.159.0 (the newest stable at the re-run) was not run. The candidate notifiers were compared by repository head and latest release only, not run. The three candidates agent-deck, ccmanager and zellij were first recorded by the refresh script on 2026-09-29, so their heads have no earlier pin to be compared with.", - "The reproduction and the five controls are isolated fixtures (synthetic class); the incident probes and the real-host runs are native observations. Entry counts of the reproduction varied by one between runs of the same script (50 entries in the stock-home arm in the first run, 49 in the re-runs); the conclusions rest on the booleans and the empty-file counts. The native `claude doctor` was run in one throwaway home with the scrub-created file, with the sandbox off and with it enabled plus a planted stale mask file. That planted file shows the warning is live; it is not a positive control for the scrub placeholder, which the warning's documented scope (0-byte read-only placeholders at settings paths) does not cover, so the doctor's silence about ~/.bash_profile follows from that scope and is not evidence about the file.", - "The `claude agents --json` figures are a live snapshot of this host's sessions at the time of the run; the same command with a path that holds no session printed no rows, and `--all` added one completed background session.", - "The private temporary directory changes where the client's temporary state goes, not what it creates in the home or the working directory, and it holds only while it is short: the client caps its messaging-socket path, /cc-socks/.sock, at 103 bytes (its own constant), and a private path of 99 bytes, which gives a 121-byte socket path, made it use a fixed /tmp/cc-socks- directory in the real /tmp (the control run; the client also prefers XDG_RUNTIME_DIR, which the probes never set). That the real /tmp and /tmp/claude- gained no other top-level entry is a property of the recorded run (about three seconds, on a host where other sessions were running): a concurrent session can add an entry inside that window, and one would have counted. What each arm's private directory held varies a little between runs, so those counts are one run's observation. The shared /tmp/inline-comments-buffer.jsonl sits at a path the client hard-codes; the script cannot tell its own arms' creation of it from a concurrent session's, so it reports that the file appeared during the run and removes it only when it was absent before and is an empty regular file created after the run began.", - "Corrected after the 2026-09-30 cross-family review (receipt cross-family-review-terminal-lane-20260930): login_shell_check_controls.py (and the practice repository's doctor) now needs an answer for every command and an end marker, probes with type -P and accepts a name only when the printed path is an executable regular file (a stale hashed pathname and a non-executable file are refused), and lets only the first startup file bash reads shadow ~/.profile (eleven homes); login_path_digest.py reads the PATH from a nonce-framed record (a startup file's ordinary output cannot pass for it; one that replays the command string can, since shell stdout is not authenticated) and exits 1 on a measurement error (a rerun on this host gives 13 entries and the digest prefix that this receipt records before and after the hand-off file); scrub_placeholder_probe.py compares 19 named files of the real home by lstat (a native rerun with the revised script is recorded in the 2026-09-30 receipt) and reads its PATH the same nonce-framed way; landscape_refresh.py compares the whole notification and terminal-title definitions, multi-line attributes and the default of notifications included, and answers null when a part is missing. The values recorded in this receipt were produced by the earlier versions of those scripts (their SHA-256 values are in this receipt); the versions in the tree are the repaired ones." + "Protocol thresholds are exploratory choices, not fitted or proven optimal.", + "Full feature construction, historical universe/availability, matched controls, fills, cash/corporate-action/margin accounting, statistical inference and promotion are future work.", + "The chronological2025reserved calendar requires a complete case-specific inspection registry and is not asserted globally unseen.", + "Synthetic labels are independent arithmetic fixtures, not market outcomes or simulated P&L.", + "No provider calls, broker orders, new model turn or net token-savings measurement." ], - "path": "evidence/receipts/login-shell-contract-20260929.json" + "path": "blueprints/us-equities/catalyst-experiment/receipt.json" }, { - "id": "cross-family-review-terminal-lane-20260930", - "kind": "native_model_e2e", + "id": "tavily-research-qualification-20260926", + "kind": "native_cli_e2e", "component_ids": [ - "codex", - "omniroute", - "claude-code" + "tavily-cli" ], - "claim": "On 2026-09-30 nine read-only jobs of the packaged Codex lane reviewed the four merged pull requests of the terminal lane (#484 tab titles and alert probes, #498 login-shell contract, #510 repository-carried defaults, #519 the model's own push notification): model gpt-6.1-sol at effort max through the local OmniRoute gateway, Codex CLI 0.159.2, every job exit 0. They returned 46 findings (3 high, 34 medium, 9 low; 41 with a command the reviewer ran). An independent Claude verifier (Opus, effort max, read-only) graded 23 of them (17 confirmed, 4 partly, 2 refuted); 11 are duplicates of a graded finding, 12 were checked by the coordinator against the code or the upstream source. 39 findings led to a repair, 2 were refuted (the client runs identical command hooks once; a terminal's permission notification is timed by inactivity, the fixed-delay timer being the Agent SDK path), 3 concern a code path that no longer exists (the second-distro target) and 2 duplicates of one convention were kept (the host id in receipts). Each repair has a check that fails without it: 260 unit tests in the five affected modules, 27 controls and 15 mutants (and the unmutated script) for the settings-swap tool, 11 reader mutants, selftests of the two pty probes (53 and 53 passes, each with ten end-to-end cases and ten in-process tests, among them a SIGTERM at each line a dry run reaches in the end-to-end cases) and 48 mutants (twenty-four per probe; each unmutated probe passes all twelve cases) showing that each guard's removal fails exactly its cases, the colour counter (28 cases; a native rerun on the installed client shows the pattern recorded in 2026-09-28, no truecolor sequence without COLORTERM and no 256-colour sequence with it, with other exact counts), the login-shell controls (11 homes) and the practice repository's profile check (29 cases); the scrub probe and the PATH digest were rerun natively (19 real-home names unchanged; 13 entries). The first wave used 24.47M input tokens (95.0% cache reads) and 0.36M output tokens in 71 minutes of wall clock and four points of the gateway pool's hundred. One bounded re-check of the repairs followed (three jobs of the same model, one of cx/gpt-6-astra-ultra, all exit 0): 33 findings (1 high, 24 medium, 8 low), 12 duplicates, 2 coordinator checks and 19 graded by Claude verifiers (16 confirmed, 3 partly, none refuted); every one was repaired in a fifth round, which found that several first repairs were incomplete or wrong (a false recovery claim in the settings-swap tool, signal handling that still left the client behind, controls that could not fail, two claims with no recorded rerun). The re-check used 17.47M input tokens (96.0% cache reads) and 0.18M output tokens in 46 minutes of wall clock. A final read of the re-check's repairs followed (three jobs of gpt-6.1-sol and three of cx/gpt-6-astra-ultra, effort max, all exit 0): 37 findings (1 high, 30 medium, 6 low; each with a command the reviewer ran), 16 duplicates and 21 graded by Claude verifiers (17 confirmed, 4 partly, none refuted); all 37 were repaired in one round: the probes' signal handling was rebuilt around a latch and is tested by a signal at each line a dry run reaches, the tmux probes verify their server is gone by its identity before removing the socket, the scan's and the landscape comparison's readers were completed, the colour counter follows the pinned terminal parser, and the documentation says what each check proves. The final read used 26.26M input tokens (95.7% cache reads) and 0.33M output tokens in 50 minutes of wall clock. After the merge of those repairs one more read followed, by one read-only Claude Opus agent (effort max, no shell) on the signal handling and shutdown code only, because the gateway pool's one usable account was at 83 of 100 points: 11 findings (3 medium, 8 low), each verified by a measurement or by reading before it was repaired in one round: the pty probes now end BY a latched signal instead of exiting 128 plus its number (a bash loop goes on after an exit 130 and stops after a death by SIGINT when the shell got the signal too, measured), the sweep observes the spawn guard, the documents state the sweep's real coverage, an inherited SIG_IGN stays ignored, typing stops at a latched signal, and a third tmux control only the command-line check of the identity can fail. After that, on the user's instruction to keep going with the highest-quality GPT lane, the packaged lane read the merged repairs: six read-only jobs (three lenses, each on gpt-6.1-sol and on cx/gpt-6-astra-ultra, effort max, Codex CLI 0.159.3, all exit 0) returned 38 findings (5 high, 31 medium, 2 low; each with a command the reviewer ran): 16 distinct issues and 22 duplicates, all 16 reproduced by the coordinator (13 by execution, 3 by reading; no Claude verifier agent ran because the shared five-hour meter read 89%) and all 38 repaired in one round: the probes' latch stays installed to the end of the process, nothing is flushed before the final kill and the signal is unblocked, the Enter is written under a signal block, the sweep counts the client's creation (the guard carries a marker and its mutant must fail through that count), a truncated record is reported and the stand-in killed, the tmux identity is an exact comparison with a fourth control and a cleanup control, the shell statements are scoped to the shells measured (bash and dash) and the scripts that measured them were repaired. The GPT read used 27.69M input tokens (96.1% cache reads) and 0.36M output tokens in 47 minutes of wall clock. The Codex review bot (GitHub's, chatgpt-codex-connector) then read the first push of those repairs on its own, at 07:27Z, and left three P2 threads, which the repository's ruleset makes a merge gate: a SIGTERM that landed after the final snapshot of the latch was lost, a stuck stdout held the probe for good, and the tmux selftests left socket directories behind. All three were reproduced by execution (verify_codex_bot_findings.py: before the repairs a child exit 0, a probe still running after 6 s, and two directories left by each tmux selftest; after them -15 four times and none left) and repaired in one round: the handoff ends the latch's life (block, read, die BY the first signal or give the handlers back to the default action), nothing is written while the latch is installed, the controls remove and count their socket directories and have a scope control, and the sweep covers the handoff and requires death BY SIGTERM. Before the second head was pushed one read-only Claude Opus reader (no shell) read those repairs and returned nine findings (four high, one medium, four low): the sweep's driver repeated the handoff call that hid its window, two expected sets of new mutants were wrong, the flush case failed under PYTHONUNBUFFERED=1, a closed stdout made a normal run exit 120, and more; five were confirmed by execution and four by reading, and all nine were repaired.", + "claim": "On host nativestack-5975wx-20260925 on 2026-09-26, tavily-cli 0.1.8 (a uv tool, tavily-python 0.8.4) returned 33 Tavily Research reports with model pro, and every one has status completed. The 32 runs of the per-layer landscape sweep were started by the retained launcher tavily_layer.sh, one per catalog layer, each as `python3 kernel_keyring.py exec tavily_api_key TAVILY_API_KEY -- tvly research run --model pro --json --citation-format numbered --timeout 1500 --client-name native-agent-stack -o .json `, so TAVILY_API_KEY came from the Linux kernel user keyring and was set only in the tvly process's environment. They were created between 04:17:21Z and 04:49:21Z. The retained run.log has one `rc=0` line per layer; every run left an empty stdout and only tvly's `Output saved to` message on stderr, and every saved report has the six expected fields and a distinct UUID-shaped request id. Response times were 168.49 to 367.68 s (median 248.18), with 11 to 25 sources per report (median 17). The earlier Alpaca platform landscape report, retained in evidence/artifacts/alpaca-platform-landscape-20260926/tavily-research-pro.json and created at 03:00:49Z, records model pro, status completed, 32 sources and a response time of 291.57 s. Across all 33 reports the response time was 168.49 / 248.85 / 367.68 s (min / median / max) and the sources per report 11 / 17 / 32. Evidence class: native provider execution of the Tavily Research endpoint (tvly research run --model pro) through the kernel keyring exec; no quality comparison with another research endpoint. The runs show that the endpoint accepted the keyring-held key and returned completed reports; they do not show that the reports are correct, complete or better than another research path.", "limitations": [ - "One workstation and one Ubuntu 24.04 distro (the independent-observation class of docs/acceptance-evidence-policy.md). No live Windows Terminal or interactive Claude Code session was run: the reviewers and the verifiers read code, upstream sources and ran scripts, synthetic homes and private tmux servers; the bell, the tab icon and focus reports in Windows Terminal remain unobserved.", - "One review family (GPT-6: gpt-6.1-sol in all four GPT reads and cx/gpt-6-astra-ultra beside it in the re-check, the final read and the post-merge GPT read, effort max: the gateway may clamp the outbound effort for a model its registry does not know, which was not observable) and one verifier family (Claude Opus); the Codex review bot is a third, automated reader of the last repairs, and one Claude Opus reader without a shell read the second head's repairs before its push. The jobs did not see each other's findings, and the verifiers saw the reviewers' evidence, so the graded findings of the three passes (23, 19 and 21) are not blind grades. Findings the reviewers did not raise are not covered: this is a sample of what a second family finds, not an audit.", - "Twelve findings of the first wave and two of the re-check were checked by the coordinator, not by a verifier (of the twelve: eight against the code or upstream source, three concerning the removed second-distro target, one convention). The removed target's code was not run before it was removed.", - "The repairs were made and checked by the coordinator (a Sonnet 5.5 session). Six further reads followed the first round of repairs (a re-check: 33 findings; a final read: 37 findings; a one-lens Claude Opus read after the merge: 11; a GPT read of the merged repairs: 38; the Codex review bot's read of the first push of those repairs: 3; an Opus read of the second head's repairs before its push: 9; each repaired in one round); the last round's repairs were checked by controls, 50 mutant runs (25 per probe), a signal sweep and native reruns and were not read again by a reviewer when this receipt was recorded, and their residuals are listed in the decision record. The recorded values in the four older receipts come from the earlier versions of the scripts (their hashes are in those receipts) and each of them now carries a correction limitation.", - "Residuals of the last round: the lines after the prompt is typed are not swept (122 of 184 lines with code for the alert probe, 135 of 210 for the push probe) and the writes to the client's pty in `measure` are not bounded while the latch is installed; signals pending together run their handlers in ascending number, so the first signal wins only one dispatch apart; a kill by pid after the tmux identity check has a gap that pidfd_open would close; SIGHUP is covered in process only; the tmux probes install no signal handler; a save between the settings-swap tool's last comparison and the rename is still lost and is in neither file; the scan cannot resolve a minified name by scope or see a later `.push` (stated, not triggered by the three release binaries); the login-shell scripts' nonce and answer lines are not authenticated against a startup file that replays the `-c` string (they guard against accidental output, not a hostile startup file); the second model of the re-check and of the final read is a second GPT-6 model, not another vendor, and the post-merge read is a single Claude Opus reader without a shell: it read code and documents and ran nothing. The GPT read's findings were reproduced by the coordinator alone (no verifier agent): a defect in a reproduction would not have been caught by a second reader, and the bot's findings were reproduced by the coordinator alone too; only bash and dash were measured for the shell statements; the tmux selftests must run one at a time (the two probes share the /tmp/tw* control directories).", - "Some claims rest on source reading only and were not run: the remote-workspace branch of the PushNotification tool (installed client 2.1.285, `CLAUDE_CODE_REMOTE` or a thin-client session), Windows Terminal's parent order of profiles.defaults and fragment profiles (microsoft/terminal v1.24.11911.0, `SettingsLoader::FinalizeLayering`), and Tab.cpp's two-second indicator timer for a focused tab.", - "The gateway pool figures are the cached provider limits (numbers only) of the one account with capacity: 7 of 100 points used before the wave, 11 after it, 22 after the re-check, 36 before and 52 after the final read, and 30 before and 67 after the post-merge GPT read; other sessions may have used points in between." + "No quality comparison: no report was scored or compared with another research endpoint, a search-plus-extract pipeline or a model's own research. The summary measured status, timing, source counts and report sizes only; report text and sources were not reviewed for this receipt.", + "The runs used a prototype kernel_keyring.py from the session's scratch directory (sha256 59a39a5a6307321ecac489c5be42199a54c74daeeb947bffd33bddec134798f7, 4,456 bytes, 98 lines, modified 03:00:13Z), not the committed scripts/kernel_keyring.py (sha256 fdb72475568f48301b543bf9efc43b45c8bcf730f91c3493a3ce4c858ece864e), which #325 committed at 05:02:02Z, after the runs. The prototype's exec path reads the payload and runs `env[env_var] = _read(libc, nr_keyctl, serial).decode()` and then `os.execvpe(child[0], child, env)`, so the variable reaches only the started command, as with the committed script; unlike it, the prototype does not restrict ENV_VAR or refuse startup variables. The prototype is not retained in this repository.", + "The landscape run's launch command was not retained. Its artifact's README states that the key was held only in the kernel keyring, and the run was created 36 s after the prototype was last modified; which script started it is not recorded.", + "The raw sweep reports (report text, source URLs and request ids) stay in the session's scratch directory and are not published. summary.json keeps only statuses, times, counts, sizes and request ids hashed as uuid-sha256:; the landscape artifact's id was hashed when that artifact was written, by a rule it does not record.", + "Provider usage is unknown: Tavily credits and cost were not recorded. response_time is the provider's own field, not a wall-clock measurement by this repository.", + "run.log, as retained, has one rc=0 line per layer and no `skip` line. Attempts outside that log, if any, are not recorded.", + "One host, one day and one CLI version: tavily-cli 0.1.8 on WSL2 Linux x86_64. Not run: macOS (the login Keychain through `secret run`), aarch64, `research run --no-wait`, `research status`, `research poll`, and models other than pro.", + "At run time the installed guard hook did not inspect commands started by kernel_keyring.py exec. The keyring rules were added after the runs, in the change that records this receipt." ], - "path": "evidence/receipts/cross-family-review-terminal-lane-20260930.json" + "path": "evidence/receipts/tavily-research-qualification-20260926.json" }, { "id": "terminal-experience-20260928", @@ -3716,497 +3882,480 @@ "path": "evidence/receipts/terminal-experience-20260928.json" }, { - "id": "codex-shell-snapshot-cleanup-20260930", - "kind": "artifact_measurement", + "id": "token-native-retained-functional-20260920", + "path": "evidence/receipts/token-native-retained-functional-20260920.json", + "kind": "native_cli_e2e", "component_ids": [ - "codex" + "context-hub", + "headroom", + "mcp-inspector", + "promptfoo", + "worktrunk" ], - "claim": "On this host on 2026-09-30 a names-only scan of the shell_snapshots directories under ~/.codex, ~/.local/state, ~/.local/share, ~/code, /tmp and /var/tmp (222 directories, 12 readable files; symlinked directories not followed, named tool directories skipped, unreadable entries skipped without a count) found 2 files that declared the Claude Code messaging-token variable, both in ~/.codex/shell_snapshots with modification times on 2026-09-27, of the 19 such files the 2026-09-29 sink inventory had counted there; no open descriptor to either was observed among the processes whose descriptors were readable. After an announcement to the live peer sessions, the enumerated path list was compared byte for byte with the two literal paths and the 2 files were deleted by those paths at 03:02:25Z. The same scan afterwards found 10 readable files and 0 declaring the variable, and a names-only listing of ~/.codex before and after (21,042 and 21,040 entries) showed exactly the 2 snapshot files removed and no entry added.", + "claim": "Previously executed native functional operations are now linked to selected components: Context Hub search/retrieval, Inspector stdio arithmetic, deterministic promptfoo evaluation, Worktrunk disposable worktree lifecycle and a local guard using upstream Headroom APIs.", "limitations": [ - "Local observation on one host by names and counts only: no snapshot content or value was printed, and a match is a line that starts with the variable's declare or export form, so a file that holds the value in another form is not counted.", - "Coverage is the listed roots only: symlinked directories were not followed, node_modules, .git, __pycache__, .venv, venv, site-packages and Claude's own shell-snapshots were skipped, and entries the scan could not read were skipped without a count, so a zero means none among the readable files.", - "Why 17 of the 19 files counted on 2026-09-29 were already gone is inferred, not observed: Codex's own three-day snapshot retention (codex-rs/core/src/shell_snapshot.rs:105 at rust-v0.157.1) is the likely remover.", - "Deletion removes the files, not copies elsewhere: backups, a file-history snapshot or a sync of the home directory were not examined." - ], - "path": "evidence/receipts/codex-shell-snapshot-cleanup-20260930.json" + "Retrospective publication of retained September 20 evidence; these operations were not rerun by this documentation update.", + "The source summary and private raw operation captures were retained and reviewed on the original host. Their public hashes bind the source but do not let CI reproduce unpublished raw data.", + "Headroom was exercised through a local guarded adapter to upstream APIs, not a direct upstream compression CLI or provider proxy; no native client configuration changed.", + "Inspector launched the pinned npm Context Mode CLI for arithmetic only. It does not certify the complete client plugin, hooks, project-file scope or current desktop connection.", + "promptfoo used a local echo provider with two assertions and zero model tokens, not an external model evaluation. Worktrunk operated only in a disposable repository with hooks disabled.", + "Context Hub candidate output grew by 85 tokens for the retained query. These per-artifact comparisons are not cumulative or causal provider savings; exact lifetime provider savings remain null." + ] }, { - "id": "agent-browser-lna-20260930", + "id": "token-practice-artifacts-20260920", "kind": "artifact_measurement", "component_ids": [ "agent-browser", - "playwright-test" - ], - "claim": "On this host on 2026-09-30, Chrome for Testing 153.0.8010.12 launched by agent-browser 0.38.1, by Playwright 1.63.0 (the headless shell and its CLI Chromium configurations, headless and offscreen) and directly (headless and offscreen full browser) did not deliver a fetch, an image or an iframe request from a page placed in the public address space (--ip-address-space-overrides=127.0.0.1:=public) to a loopback listener on another port without a permission grant: Chromium's Local Network Access blocked all three in each of the six configurations. With the override off, and with --disable-features=LocalNetworkAccessChecks, all three requests reached the listener, so the probe could see a delivered request. playwright-cli 0.1.21 on Playwright 1.64.0-alpha, the manifest pin, was not found installed and was not measured.", - "limitations": [ - "One host, one Chromium build (153.0.8010.12), two listeners started by the measurement itself on loopback inside an isolated network namespace; no existing service and neither OmniRoute gateway was contacted.", - "agent-browser ran with its documented --executable-path and --args options and a CDP pipe transport instead of its ordinary TCP CDP endpoint, which the measurement's endpoint rules excluded; its page context and default flags were otherwise used.", - "Measured: fetch, image and iframe requests from a public-address-space page. Not measured: main-frame navigations and popups (which Chromium's Local Network Access does not gate), pages in the private address space, a user or tool permission grant, other Chromium versions, and the manifest-pinned playwright-cli 0.1.21.", - "The measurement shows whether an HTTP request reached the listener; it does not show whether Chromium opened a TCP connection before refusing." - ], - "path": "evidence/receipts/agent-browser-lna-20260930.json" - }, - { - "id": "guard-k3-verification-20260930", - "kind": "artifact_measurement", - "component_ids": [ - "claude-code" + "ast-grep", + "edgartools", + "markitdown", + "qmd", + "repomix", + "rtk", + "socraticode", + "syft", + "toon" ], - "claim": "The tightened command guard (scripts/hooks/secret_path_guard.py, sha256 a70a056fc27524c65ea5ce4db43fe712cabb44cf9b171866abf805d7306d3b51, PR #511 head 05acdf96) was checked on 2026-09-30 against the installed guard it replaces (sha256 f9be81b240762dc58da874f135040d182ca9fb5e9056ab9b8a977dd909453244). Every check found no command the installed guard refuses that this guard allows: the acceptance oracle (65 cases, 0 mismatches), a side-by-side probe and a launcher option-value probe (0 loosened rows each), and a replay of 1,490 documented repository commands (0 newly blocked, 0 loosened, 0 reason changed). Run through a real hook process, four inputs from the third GPT-6 verification were refused with exit 2, one stderr line and no command echo in 0.06 to 0.14 s; the installed guard timed out at 10 s on three of them and took 4.03 s on the fourth. A read-only GPT-6 verification of this head (the fourth, after one repair round) found no command the installed guard refuses and this guard allows; its one blocking-labelled finding is a command that the installed guard also allows, recorded with a documentation note as residuals for the next guard change.", + "claim": "Ten retained native input/output artifact pairs were counted exactly with gpt-tokenizer 3.4.0 / o200k_base; selection and conversion boundaries remain explicit.", "limitations": [ - "Local integration on one host plus read-only cross-family reviews, not a proof: the checks compare two text heuristics on finite corpora (the repository's test tables, fenced commands and generated mutations), and a review that finds nothing does not show that nothing exists.", - "Timings are wall-clock times on one host under its load at the time (a load average of about 7 to 20 during the day); the hook timeout of 10 s is this host's settings value, and a slower host has less margin.", - "The unit suite's one failure is by design: test_host_profile_copy_is_verbatim compares the installed host copy with the repository file, and the host copy stays the installed guard until the change is merged and reinstalled after the Gate A window closes.", - "Residuals carried to the next guard change (K4): `set 0 < /dev/null; set 0 [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1064,7 +1068,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.79.0", + "version": "0.80.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1079,20 +1083,21 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "worktrunk-0800-qualification-20261003" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" ], - "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.161.0", + "version": "0.162.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1112,13 +1117,15 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "otelcol-contrib-0162-qualification-20261003" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib" + "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The recorded scratch version and validate commands exited 0; no host service was switched. Prior 0.161.0 receipts retain their original scope. The dated upstream metadata is in catalogs/landscape/upstream-snapshot.json." }, { "id": "prometheus", @@ -1226,7 +1233,7 @@ "upstream_sources": [ "https://github.com/grafana/grafana" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head." }, { "id": "alertmanager", @@ -1401,10 +1408,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.52.0", + "version": "1.54.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1413,13 +1420,14 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "syft-1540-qualification-20261003" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.52.0" + "https://github.com/anchore/syft/releases/tag/v1.54.0" ], - "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." }, { "id": "alpaca-py", @@ -1682,7 +1690,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.319", + "version": "1.108.327", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1695,7 +1703,7 @@ } } ], - "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1708,13 +1716,14 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "jcodemunch-1108327-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", - "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", + "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" ], - "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From d74657184a5cf519bff6b921f056c1bdb9b3055e Mon Sep 17 00:00:00 2001 From: Scout Date: Tue, 6 Oct 2026 09:34:41 -0400 Subject: [PATCH 38/50] Catalog workflows: checksum-locked PyYAML 6.0.3 for the skills-lifecycle validator (the command center's item task-native-agent-stack-5f-20261006T125518Z, option A) Co-Authored-By: Claude Opus 5.5 --- .github/osv-scanner-lockfiles.json | 4 ++++ .github/requirements-validation.txt | 8 ++++++++ .github/workflows/catalog-freshness.yml | 10 ++++++++++ .github/workflows/publish-catalog.yml | 5 +++++ manifests/evidence.json | 17 +++++++++++------ 5 files changed, 38 insertions(+), 6 deletions(-) create mode 100644 .github/requirements-validation.txt diff --git a/.github/osv-scanner-lockfiles.json b/.github/osv-scanner-lockfiles.json index 114c87c1d..deff6ed41 100644 --- a/.github/osv-scanner-lockfiles.json +++ b/.github/osv-scanner-lockfiles.json @@ -33,6 +33,10 @@ "path": ".github/requirements-calendar.txt", "parser": "requirements.txt" }, + { + "path": ".github/requirements-validation.txt", + "parser": "requirements.txt" + }, { "path": "blueprints/us-equities/sim-crosscheck-hftbacktest/requirements.lock", "parser": "requirements.txt" diff --git a/.github/requirements-validation.txt b/.github/requirements-validation.txt new file mode 100644 index 000000000..9aaf1634f --- /dev/null +++ b/.github/requirements-validation.txt @@ -0,0 +1,8 @@ +# Native validation dependencies for the catalog workflows (catalog-freshness.yml freshness and propose jobs, Python +# 3.13 through setup-python; publish-catalog.yml publish job, the ubuntu-24.04 runner's CPython 3.12.3). +# PyYAML 6.0.3, the latest release: Linux x86_64 CPython 3.12-3.14 binary wheels only, no source distribution. The +# hashes match https://pypi.org/pypi/PyYAML/6.0.3/json (uploaded 2025-09-25, not yanked; re-checked 2026-10-06). +PyYAML==6.0.3 \ + --hash=sha256:ba1cc08a7ccde2d2ec775841541641e4548226580ab850948cbfda66a1befcdc \ + --hash=sha256:0f29edc409a6392443abf94b9cf89ce99889a1dd5376d94316ae5145dfedd5d6 \ + --hash=sha256:c458b6d084f9b935061bc36216e8a69a7e293a2f1e68bf956dcd9e6cbcd143f5 diff --git a/.github/workflows/catalog-freshness.yml b/.github/workflows/catalog-freshness.yml index 22392fa6b..4bdb8cb22 100644 --- a/.github/workflows/catalog-freshness.yml +++ b/.github/workflows/catalog-freshness.yml @@ -55,6 +55,11 @@ jobs: - name: Install the hash-locked session calendar run: | python3 -m pip install --require-hashes --only-binary=:all: -r .github/requirements-calendar.txt + - name: Install checksum-locked native validation dependencies + run: >- + python3 -m pip install --disable-pip-version-check --no-input + --only-binary=:all: --require-hashes --index-url https://pypi.org/simple + -r .github/requirements-validation.txt - name: Extract deterministic working files (no network) run: | mkdir -p "$RUNNER_TEMP/freshness" @@ -279,6 +284,11 @@ jobs: with: python-version: '3.13' check-latest: false + - name: Install checksum-locked native validation dependencies + run: >- + python3 -m pip install --disable-pip-version-check --no-input + --only-binary=:all: --require-hashes --index-url https://pypi.org/simple + -r .github/requirements-validation.txt - name: Download this run's freshness artifact uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: diff --git a/.github/workflows/publish-catalog.yml b/.github/workflows/publish-catalog.yml index 4eb4c20ce..54ecb1fa2 100644 --- a/.github/workflows/publish-catalog.yml +++ b/.github/workflows/publish-catalog.yml @@ -49,6 +49,11 @@ jobs: uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false + - name: Install checksum-locked native validation dependencies + run: >- + python3 -m pip install --disable-pip-version-check --no-input + --only-binary=:all: --require-hashes --index-url https://pypi.org/simple + -r .github/requirements-validation.txt - name: Validate the catalog and recorded evidence shell: bash run: | diff --git a/manifests/evidence.json b/manifests/evidence.json index e3bffc4cc..7075b1710 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4631,8 +4631,8 @@ }, { "path": ".github/osv-scanner-lockfiles.json", - "sha256": "6ac40e443963ca0bc93d75e440c697268682bd11810ea6203794d063a4d6be76", - "bytes": 15075 + "sha256": "3c7bed9c3899e22a022acf4172719dd510124d45664f24cf656def14e6ad999b", + "bytes": 15176 }, { "path": ".github/osv-scanner.toml", @@ -4654,6 +4654,11 @@ "sha256": "0b37433fb0fb165c893737e8e887581a07a6469683fbdf67ada1a08288758605", "bytes": 467 }, + { + "path": ".github/requirements-validation.txt", + "sha256": "458d8cb1fef26d0d0a9a6a76707c0bad04fe84558550db750d50af206fecba81", + "bytes": 719 + }, { "path": ".github/tag-ruleset.json", "sha256": "b11fda27d1e2011ff3c001ac830fa3b2c0c3af6090e929ee2d20e4d0507dda5e", @@ -4671,8 +4676,8 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "96f2208ee271fd4fbe58a26ea281a5fb244c42a62aeb2cb9a13fcc07739c9d72", - "bytes": 26294 + "sha256": "673dbb816767e67d002b6dcdf866053c8408a7a47203683650af8d9f3be4b23a", + "bytes": 26872 }, { "path": ".github/workflows/dependency-review.yml", @@ -4716,8 +4721,8 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "652bf181e1097963b1ce23d81eefb9bc9fb4c0f3051c3c5611c07ede4ab8a291", - "bytes": 20110 + "sha256": "6f48ef65db2a270121e607aea1f08f2cad7c9f883009babd40af42b21c8f3167", + "bytes": 20399 }, { "path": ".github/workflows/receipt-staleness.yml", From 4ae82b011a3307e41264905c75867b78d004dfea Mon Sep 17 00:00:00 2001 From: Scout Date: Tue, 6 Oct 2026 10:34:02 -0400 Subject: [PATCH 39/50] Adoption docs: disclose that the Linux pins file changed after v2026.10.05.1 (orx 0.2.7 to 0.2.15), as main's docs-consistency rule requires Co-Authored-By: Claude Opus 5.5 --- adoption/bootstrap.md | 5 +++-- adoption/platforms/linux-wsl2-new-distro.md | 4 ++++ adoption/platforms/linux-wsl2.md | 2 +- adoption/platforms/macos-arm64.md | 4 ++++ 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/adoption/bootstrap.md b/adoption/bootstrap.md index 2f32225a2..0e587d8ee 100644 --- a/adoption/bootstrap.md +++ b/adoption/bootstrap.md @@ -174,8 +174,9 @@ GitHub-hosted macOS runner; see artifact-checked only; the Mac host collects its own execution evidence. On 2026-10-03, `pins-linux-x86_64.json` changed again after `v2026.09.26.2`: - `orx` 0.2.7 to 0.2.15 (URLs, hashes and install notes). A host at that tag - retains OpenResearch 0.2.7. W1 held the mcporter 0.14.2 candidate on + `orx` 0.2.7 to 0.2.15 (URLs, hashes and install notes). The file is also + changed after `v2026.10.05.1`, which still pins 0.2.7, so a host at either + tag retains OpenResearch 0.2.7. W1 held the mcporter 0.14.2 candidate on 2026-10-03 because its resolved tree was inconsistent and its persistent daemon/`serve` role was unqualified; the selected Linux pin then remained 0.14.1. Main's 2026-10-04 move in #693 selected Linux mcporter 0.14.2; see diff --git a/adoption/platforms/linux-wsl2-new-distro.md b/adoption/platforms/linux-wsl2-new-distro.md index fb282a9e0..c9ce937f6 100644 --- a/adoption/platforms/linux-wsl2-new-distro.md +++ b/adoption/platforms/linux-wsl2-new-distro.md @@ -279,6 +279,8 @@ and the real run waits until the failure is understood. The rehearsal's private outlive `--unregister`. After the required comparison records, run the page again from P1 for the default real ``, or the qualified rollback, without R1. +`pins-linux-x86_64.json` changed after `v2026.10.05.1` only in its `orx` entry (0.2.7 to 0.2.15); the Node 24.21.0 pin used here is unchanged. + ## Pre-checks in the workstation distribution P1 to P3 run as `sh` in the workstation's distribution, before W1, so before anything is downloaded on Windows or @@ -944,6 +946,8 @@ dpkg-query -W -f='${Package} ${Version}\n' jq libatomic1 uidmap Proof: both apt commands exit 0, and `dpkg-query` prints a version for each of the three packages. The historical 24.04.5 image lacked them; do not assume the selected 26.04.1 image has the same package gaps. +`pins-linux-x86_64.json` changed after `v2026.10.05.1` only in its `orx` entry (0.2.7 to 0.2.15); the Node 24.21.0 pin used here is unchanged. + ### F5. Subordinate ids Rootless Docker needs at least 65,536 subordinate uids and gids for the user. The image ships empty `/etc/subuid` and diff --git a/adoption/platforms/linux-wsl2.md b/adoption/platforms/linux-wsl2.md index 0bb0b69e2..fafab4de2 100644 --- a/adoption/platforms/linux-wsl2.md +++ b/adoption/platforms/linux-wsl2.md @@ -112,7 +112,7 @@ itself evidence the WSL UVA gap closed. `token-efficiency` profile's Linux coverage (step 2 of [`adoption/bootstrap.md`](../bootstrap.md) has the details). Its `ai-memory` and `mcporter` pins also changed after `v2026.09.25.2` (2.3.2 to 2.4.1 and 0.13.13 to 0.14.1); before an existing ai-memory service restarts on 2.4.1, follow [upgrading an existing store](../../recipes/README.md#upgrading-an-existing-store). - On 2026-10-03, the Linux pins changed after `v2026.09.26.2` again: `orx` 0.2.7 to 0.2.15 (URL, hash and note); a host at that tag keeps OpenResearch 0.2.7. W1 held mcporter at Linux 0.14.1 on 2026-10-03 after its 0.14.2 compatibility attempt. The current Linux pin follows main's 2026-10-04 move to 0.14.2 in #693; [that receipt](../../evidence/receipts/mcporter-0142-qualification-20261004.json) retains its limitations. See [W1 qualification](../../docs/decisions/2026-10-03-currency-wave-w1.md) before treating scratch evidence as a host switch. + On 2026-10-03, the Linux pins changed after `v2026.09.26.2` again: `orx` 0.2.7 to 0.2.15 (URL, hash and note); a host at that tag keeps OpenResearch 0.2.7. The pins file is also changed after `v2026.10.05.1`, which still pins 0.2.7. W1 held mcporter at Linux 0.14.1 on 2026-10-03 after its 0.14.2 compatibility attempt. The current Linux pin follows main's 2026-10-04 move to 0.14.2 in #693; [that receipt](../../evidence/receipts/mcporter-0142-qualification-20261004.json) retains its limitations. See [W1 qualification](../../docs/decisions/2026-10-03-currency-wave-w1.md) before treating scratch evidence as a host switch. 2. Recreate the SDK only for the `research-runtime` profile using [`adoption/sdk/README.md`](../sdk/README.md)'s transitive lock; retain the same exact-match and uncached-reinstall checks as diff --git a/adoption/platforms/macos-arm64.md b/adoption/platforms/macos-arm64.md index 8bf7eb8b4..439b67fa1 100644 --- a/adoption/platforms/macos-arm64.md +++ b/adoption/platforms/macos-arm64.md @@ -213,6 +213,8 @@ mechanism the Linux script does not have — a built-in skip list, currently empty, so a future undocumented gap still trips the exit-3 refusal instead of silently reusing a stale skip; `--plan` is also macOS-only. +`adoption/pins-linux-x86_64.json` changed after `v2026.10.05.1` only in its Linux `orx` entry (0.2.7 to 0.2.15), which this page does not use. + ### darwin-arm64 pinned release archives These components are installed from upstream `darwin-arm64` (or `darwin-arm64`-equivalent) @@ -463,6 +465,8 @@ directory into `tools/llama-cpp-b11057` and places a wrapper script at `bin/llama-server` that exports `DYLD_LIBRARY_PATH` before exec'ing the real binary, instead of a bare symlink. +`adoption/pins-linux-x86_64.json` changed after `v2026.10.05.1` only in its Linux `orx` entry (0.2.7 to 0.2.15), which this page does not use. + ### Codex notifications on macOS Changed after `v2026.09.26.2` (drafted, not run on a Mac): the shared `codex.config.template.toml` sets `[tui] notifications` to the needed-action kinds, so a From 55611ba7b0e53c465ce69d4bc4f6878f20fc48e1 Mon Sep 17 00:00:00 2001 From: Scout Date: Tue, 6 Oct 2026 10:34:46 -0400 Subject: [PATCH 40/50] Registry rehash for the adoption docs disclosure Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index baae4b53a..a29e065f9 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4951,8 +4951,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "1b7f5a15b75d23acb571dc5c30551919cec19e1ca4f44aa1d9bc3bc6dc4adb4f", - "bytes": 68761 + "sha256": "1a5533bfcb028ef8c952fc1ebd08a2ca36dd22f7c3538bae7717e78e44501761", + "bytes": 68841 }, { "path": "adoption/credential-inventory.json", @@ -5146,18 +5146,18 @@ }, { "path": "adoption/platforms/linux-wsl2-new-distro.md", - "sha256": "f640139255f1e093b018f47c1346c9f03b36d3fb941e08f4e910c928a08b3bec", - "bytes": 93206 + "sha256": "dc747930541b6efeddb799967e1cf82a258b055dd268568a2897ae015d38048b", + "bytes": 93494 }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "31f87db022f1fbadc33ae6483d09c9a2f094919660c9f0895c28cfa4be8952ed", - "bytes": 30087 + "sha256": "1f3b29db1d2585b548a8595dd25b7ab3c7a2ff33af7e9f9a2ba750c3b0452174", + "bytes": 30164 }, { "path": "adoption/platforms/macos-arm64.md", - "sha256": "266da883e614f767929981e8e630c34cf3958020fb5a14f162d9f385bbb9427e", - "bytes": 65623 + "sha256": "d7f026a3480e71374f25c33a92d3b0c4b30c1717846f74d0c3038872ad6d5870", + "bytes": 65911 }, { "path": "adoption/pre-login-observation.json", From 8afb992f7048e0ba18a112932e0b1b93d7f973fa Mon Sep 17 00:00:00 2001 From: Scout Date: Tue, 6 Oct 2026 10:35:59 -0400 Subject: [PATCH 41/50] Hot-file protocol: reset manifests/evidence.json manifests/stack.json to the merge base before the final hot-file commit Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 437 +++++++++------------------------------- manifests/stack.json | 81 ++++---- 2 files changed, 130 insertions(+), 388 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index a29e065f9..5cdc5ab71 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4477,155 +4477,6 @@ "Serena and MinerU are excluded from old-bar READY while condition-absent controls remain open. Difftastic, structural-search, inspect-ai, harbor and codex-sdk: fresh-session use not evidenced; installation-time checks retain original classes." ], "path": "evidence/receipts/ns2604-roadmap-evidence-20261005.json" - }, - { - "id": "claude-hud-0100-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-hud" - ], - "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", - "limitations": [ - "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", - "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", - "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" - }, - { - "id": "jcodemunch-1108327-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "jcodemunch-mcp" - ], - "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", - "limitations": [ - "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", - "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" - }, - { - "id": "mcp-inspector-290-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "mcp-inspector" - ], - "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", - "limitations": [ - "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", - "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", - "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" - }, - { - "id": "mcporter-0142-qualification-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "mcporter" - ], - "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", - "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", - "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", - "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" - }, - { - "id": "openresearch-0215-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "openresearch" - ], - "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", - "limitations": [ - "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", - "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" - }, - { - "id": "otelcol-contrib-0162-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "opentelemetry-collector-contrib" - ], - "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", - "limitations": [ - "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", - "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" - }, - { - "id": "playwright-cli-0122-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "playwright-cli" - ], - "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", - "limitations": [ - "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", - "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", - "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" - }, - { - "id": "syft-1540-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "syft" - ], - "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", - "limitations": [ - "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", - "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", - "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/syft-1540-qualification-20261003.json" - }, - { - "id": "worktrunk-0800-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "worktrunk" - ], - "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", - "limitations": [ - "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", - "The host installation and rollback launcher were not switched.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" } ], "files": [ @@ -4676,8 +4527,8 @@ }, { "path": ".github/osv-scanner-lockfiles.json", - "sha256": "3c7bed9c3899e22a022acf4172719dd510124d45664f24cf656def14e6ad999b", - "bytes": 15176 + "sha256": "6ac40e443963ca0bc93d75e440c697268682bd11810ea6203794d063a4d6be76", + "bytes": 15075 }, { "path": ".github/osv-scanner.toml", @@ -4699,11 +4550,6 @@ "sha256": "0b37433fb0fb165c893737e8e887581a07a6469683fbdf67ada1a08288758605", "bytes": 467 }, - { - "path": ".github/requirements-validation.txt", - "sha256": "458d8cb1fef26d0d0a9a6a76707c0bad04fe84558550db750d50af206fecba81", - "bytes": 719 - }, { "path": ".github/tag-ruleset.json", "sha256": "b11fda27d1e2011ff3c001ac830fa3b2c0c3af6090e929ee2d20e4d0507dda5e", @@ -4721,8 +4567,8 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "673dbb816767e67d002b6dcdf866053c8408a7a47203683650af8d9f3be4b23a", - "bytes": 26872 + "sha256": "b916c15a85c4f6a84fd6fb460001898752445242f35aebc29862868c35907a4b", + "bytes": 26294 }, { "path": ".github/workflows/dependency-review.yml", @@ -4766,8 +4612,8 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "6f48ef65db2a270121e607aea1f08f2cad7c9f883009babd40af42b21c8f3167", - "bytes": 20399 + "sha256": "5b52e3f50cf6ecb26cfe36f8ca54c577b5ff07ec4027a20102bc731c066cf4e5", + "bytes": 20110 }, { "path": ".github/workflows/receipt-staleness.yml", @@ -4801,8 +4647,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "8c70b40953230c79e3d3df75fc492d689bf8884cb53acd7b6b6eadb63f2558c9", - "bytes": 7589 + "sha256": "92ab3fa8354aa9fbaad781597354ef5a942c709b5950109bb13c8b77780a40f8", + "bytes": 7576 }, { "path": ".github/workflows/token-report.yml", @@ -4951,8 +4797,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "1a5533bfcb028ef8c952fc1ebd08a2ca36dd22f7c3538bae7717e78e44501761", - "bytes": 68841 + "sha256": "9ea67939f6e5443576cdc2aad3ff997cc554aca3292e877afbe0c000d7d9e6ae", + "bytes": 65967 }, { "path": "adoption/credential-inventory.json", @@ -5061,13 +4907,13 @@ }, { "path": "adoption/manifest.json", - "sha256": "16d9708777667b29a4c25b363fca5644b94ab7932d0735c7323ac48188f7eaec", - "bytes": 20038 + "sha256": "f3e325c8b5dcd1852a613136bb1152bf1a1f39c0dd6861f3c4752ac0d5e32c0a", + "bytes": 20102 }, { "path": "adoption/new-wsl-profile.json", - "sha256": "b837312fcf1a81a9e9d47b71496bf08550d848cfbe6be4353f01bf75659b28f3", - "bytes": 260542 + "sha256": "7504e55c2e66730d5e0b0ead2be5abef39f3989afc69e1c3640e6709bdb3db04", + "bytes": 257549 }, { "path": "adoption/new-wsl-profile.md", @@ -5136,8 +4982,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "7e210c9c56953ff5091c35909a0e3b5c94a4a519932eeda82878afb22b3c2961", - "bytes": 37151 + "sha256": "804eba0e086670c75e6b2f3725734477914318987c99fb90195680188be337c9", + "bytes": 37335 }, { "path": "adoption/pins-macos-arm64.json", @@ -5146,18 +4992,18 @@ }, { "path": "adoption/platforms/linux-wsl2-new-distro.md", - "sha256": "dc747930541b6efeddb799967e1cf82a258b055dd268568a2897ae015d38048b", - "bytes": 93494 + "sha256": "f640139255f1e093b018f47c1346c9f03b36d3fb941e08f4e910c928a08b3bec", + "bytes": 93206 }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "1f3b29db1d2585b548a8595dd25b7ab3c7a2ff33af7e9f9a2ba750c3b0452174", - "bytes": 30164 + "sha256": "317a997ce3e794298d985f035af05285e27bc3690fd9e09be068991a82fe2056", + "bytes": 29535 }, { "path": "adoption/platforms/macos-arm64.md", - "sha256": "d7f026a3480e71374f25c33a92d3b0c4b30c1717846f74d0c3038872ad6d5870", - "bytes": 65911 + "sha256": "266da883e614f767929981e8e630c34cf3958020fb5a14f162d9f385bbb9427e", + "bytes": 65623 }, { "path": "adoption/pre-login-observation.json", @@ -5211,8 +5057,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "a0e293941482230a1ccaaf8a3206a5c7e72b73690d47e3a211883e9dd6279abc", - "bytes": 12948 + "sha256": "304dc11b5fca6e4001382a8cb884712e10d28bdfa8551fcac6dbfc2b4d36cf70", + "bytes": 12744 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -10912,8 +10758,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "286c6898529e89ae3b1582f6db149f0dabf968adc917faf653057dc9d22dab21", - "bytes": 494497 + "sha256": "b2e82b633fd1594a15d1726afe8d4b1d401440b265cfaf12d07c6d6752a71641", + "bytes": 486278 }, { "path": "blueprints/trials-20260926/README.md", @@ -16377,7 +16223,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "6c9fd66ad582103f454dac9d53925bdd3ea1a412073e83efd4579298b05ee46b", + "sha256": "4ec258549f82eeb8ea709f18b8a0bd482cdcebfc690bfab87c58449b16947472", "bytes": 36223 }, { @@ -16402,8 +16248,8 @@ }, { "path": "catalogs/foundation/new-wsl-architecture-20261001.json", - "sha256": "f9ba8f70ffd7350178ef4cdb5226a5cd7040a1f43f0f416855aa156dda6f8b23", - "bytes": 325528 + "sha256": "3a8081049976785e320cfd99bc93bd3dcefa0a8a351fcc4f3cab1d8022a6b1cd", + "bytes": 325006 }, { "path": "catalogs/foundation/new-wsl-layer-crosswalk-20261001.json", @@ -16507,8 +16353,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "4b45aa982068205635f95776bbfc7a4c73d283ea48586e480f3870e613450ecf", - "bytes": 287577 + "sha256": "d1f0f17e142e8bfca223006f72cb16fce65456609248a32b5cf7958ba9f54dd2", + "bytes": 287704 }, { "path": "catalogs/landscape/research-state.json", @@ -16517,8 +16363,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "e5987d047e09f2f16ed9592cba1f7d2a7a350a6428f2904b9e481298a5f9ab5e", - "bytes": 286532 + "sha256": "85a1715168203fef8f201672d3f284ff3021797c0576a974ef05ed4b6af7446c", + "bytes": 258289 }, { "path": "catalogs/landscape/us-equities.json", @@ -16977,8 +16823,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "4334eda38f9961f971e4c5394cd6fef418cef236d3ad73c34a0e080b5b71be21", - "bytes": 56958 + "sha256": "6e7ebbe64011f460b59ab310a328211737deec2f83543fb99c41d761958bff06", + "bytes": 56411 }, { "path": "docs/comparison-progress-20260922.md", @@ -17242,7 +17088,7 @@ }, { "path": "docs/decisions/2026-10-01-new-wsl-definitive-defaults.md", - "sha256": "1d3e6dd6d86df768a2683cd9f64bd478111467efdf6f35b3c71526af93b9f1d6", + "sha256": "711038cb81075841beed0b6db4310fdab88f425c064342b7d57f9fe33603d6b7", "bytes": 80195 }, { @@ -17280,11 +17126,6 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, - { - "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "c05f4b990e731342483a51883be8e5563a2d7fa07d936b18fff6cdf5d9e1bce5", - "bytes": 50522 - }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", "sha256": "a4c5ddf98c9fa778d07b60507a183818b1d243dda789bc06ee8bcd612fcbcedb", @@ -17597,8 +17438,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "e1003554881d6ddfa464560e2596b456897408ee40a3cd012e72bd75e4a5e0ed", - "bytes": 42784 + "sha256": "9d49b5052129b31a081f356c0bc750480ac4e5cc98d7b9606f6d4df7b9471357", + "bytes": 41689 }, { "path": "docs/full-stack-convergence.md", @@ -17637,7 +17478,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "d5f2c827e9f9da7ff769d0a833c9a2b8e9a3433cab9b8979e095a74f07a7ad7e", + "sha256": "6e17a86f92414d877858c9cbd88a42703aaaefb36f04bad6a78219f869bae18a", "bytes": 99371 }, { @@ -17647,8 +17488,8 @@ }, { "path": "docs/harness-defaults.md", - "sha256": "2c8469eade8c6a3237d96c42176b93cb9f49741fc4c3affdd352e1f81e3557bb", - "bytes": 227029 + "sha256": "26ec355b96aa6bc91fba8fd4f1ff33d84b13ce7865c4eb3108d98ead4dfa534c", + "bytes": 225647 }, { "path": "docs/harness-rules-convergence-20260922.md", @@ -17767,8 +17608,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "c1b9e9cd27feb0ed823a2c0e942a741671e5ad2b84753e5196e09442b0fb1e3c", - "bytes": 18484 + "sha256": "feacb3a295970f1269ea2004127e5dd11a4f43c9e2fb29166e501346205091af", + "bytes": 18483 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -17777,13 +17618,13 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "597b8ebe58355e24473e96670b48444bfec6e3302c984ec3d90289c876031f71", - "bytes": 692111 + "sha256": "bb5a4dc62aabc938b56b038ddb4ae3df036395ccd44cc72720436ad3aa19b33d", + "bytes": 689754 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "e86f96359863af80761aa28d91b6d82ee0c702824d4b57e902b1245bd1ea7060", - "bytes": 368486 + "sha256": "05ec525a60a6bad90b5f4161473a2aa015107c724fdfe0328f2166e3e73453a0", + "bytes": 366781 }, { "path": "docs/next-host-stages.md", @@ -17877,8 +17718,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "82dd8fabc8348c4297395f54f8af7b60d4fe8f75c00bcf4b50dd6af6c91376dc", - "bytes": 594844 + "sha256": "172d1d75458d9af2c24f1a1f63615fbaa34dc6abaf9428c58d6cacee3ec58b95", + "bytes": 592422 }, { "path": "docs/token-efficiency-stack.md", @@ -17897,7 +17738,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "c0dbda10161afabaa3f35ff3b98593dcb07c44e90109dc476d8c3616b3f35f35", + "sha256": "e54b87c1e0ad36ed6f0533e70e80d05935c42fcd72058d1b1ed6174a4e9ecb6a", "bytes": 98350 }, { @@ -19545,41 +19386,6 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", - "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", - "bytes": 108109 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", - "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", - "bytes": 13041 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", - "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", - "bytes": 28233 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", - "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", - "bytes": 18135 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", - "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", - "bytes": 74214 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", - "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", - "bytes": 121015 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", - "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", - "bytes": 26125 - }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -39212,8 +39018,8 @@ }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/definitive-manifest.json", - "sha256": "2c99f8e90c434abd824238dd301ca53bccf15aa0403d10827283996f193dc2f0", - "bytes": 229459 + "sha256": "8694fff119eded04b6009c75a5d328e82b4142b0a6ec6130398748307fc556d5", + "bytes": 229325 }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/foundation-definitive.compact.json", @@ -39962,8 +39768,8 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "7e31de178995d4c174ddc7f3f5c5a53554d4cee87f87a276ba53d80ce30a38f5", - "bytes": 34020 + "sha256": "8a6efae7585476f1b8f32e490b22066910316cd56a9c2667d5670350c34ebf6f", + "bytes": 26931 }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/slot-state-and-core-recipes.json", @@ -39972,13 +39778,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md", - "sha256": "ec3b531938276ad5323bf882d597fc1e55d7ec4a960c5985cfee66bbeeeace42", - "bytes": 81255 + "sha256": "913041489fd8145fcb8b15047107c80f0f4395e711a3042db2adf5bf72125196", + "bytes": 79782 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md", - "sha256": "52c16852b31a747a9435226a53da23d2473e66cf6e353cf381832fb8a11a5262", - "bytes": 173464 + "sha256": "24d3893580420960e71dfe9c91bdf8ba547cb0db4d0bfbd6a047ad1fb8305f83", + "bytes": 171237 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/VALIDATION.md", @@ -39987,8 +39793,8 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/accept.sh", - "sha256": "5e35b0c4fb78368a8a2488cb8b2b20702c67bec8e4a7e3e13f88947af5936db2", - "bytes": 152491 + "sha256": "808fd9eef9b48db7a930573f28e660f1b5f9dfc569642ee31fac17a8fb043ba7", + "bytes": 152419 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/check_plan.py", @@ -40292,13 +40098,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json", - "sha256": "c83ee09d0f60ed9baafaf44e8e0d3e9109602f441331287d73254fb1dc8e7faa", - "bytes": 389456 + "sha256": "c4546b76fb2d7eb9dddd44b416716307d313781235c09b7945d844c5df686c0d", + "bytes": 388443 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install.sh", - "sha256": "8dc58271f17fe79535f4ce5ea2dcf79bc617a439da6eb0582aca0fd0c90c4caf", - "bytes": 120084 + "sha256": "d3448844538e508e7f83e6b545c844017e0170a057787dc051c4051133538da8", + "bytes": 119797 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/mise.toml", @@ -40322,7 +40128,7 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/owners.json", - "sha256": "3ce5fb8d821a3940ccbd05a06fdf11947ade49f0c7fad378d5c3048bc27b0982", + "sha256": "5831ddfe557023c647397c84474cb7f5277a46646bd74eb1bb62fdb725f927fa", "bytes": 35188 }, { @@ -40362,8 +40168,8 @@ }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/consensus.json", - "sha256": "21b833ade87f27616b037c9619a348223391175bd6047a2be237556bf4b7fc1e", - "bytes": 142310 + "sha256": "a34fb8c01429177cd2787a07a1edf0a0668d31898ff35fd798056964d5dab82e", + "bytes": 142174 }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/copy-notes.json", @@ -52585,11 +52391,6 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, - { - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", - "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", - "bytes": 10611 - }, { "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json", "sha256": "b0c9e1d7c58e339dc2906e6a977ec04e6c1a808e826f9422407449ab34dd4f09", @@ -52845,11 +52646,6 @@ "sha256": "99580ecf2786f53585823b7695546f67d690fa5c2a6e30e4732854fe3f107787", "bytes": 27783 }, - { - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", - "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", - "bytes": 8187 - }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -52880,21 +52676,11 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, - { - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", - "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", - "bytes": 10165 - }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, - { - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", - "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", - "bytes": 10463 - }, { "path": "evidence/receipts/mcporter-0142-qualification-20261004.json", "sha256": "9399c393875decb817d49a1ed59e1629ff445070453c2a2ba819e98d17a24cd1", @@ -53210,11 +52996,6 @@ "sha256": "9ad1db0b9e841cd780d04e544f6e75dde57fd88ebc6fc4f5b0bafd84287f20da", "bytes": 149558 }, - { - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", - "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", - "bytes": 7517 - }, { "path": "evidence/receipts/osv-captured-lumibot-lockchecks-20261005.json", "sha256": "f211de55c2cbbf1f712c35f51bbe846f8a08341d24a240b51e654a6df6fd2b6c", @@ -53255,21 +53036,11 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, - { - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", - "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", - "bytes": 6732 - }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, - { - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", - "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", - "bytes": 7731 - }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -53360,11 +53131,6 @@ "sha256": "88d94dea0829c87eecd2b6f9cc2a03c010888de130fe430abce65d5ebd39e788", "bytes": 135042 }, - { - "path": "evidence/receipts/syft-1540-qualification-20261003.json", - "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", - "bytes": 7946 - }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -53455,11 +53221,6 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, - { - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", - "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", - "bytes": 6655 - }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -54002,18 +53763,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", + "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "cbc65770d505fcc1253aa270db6d9930d884c9b22abeb34de450405b670c21a3", - "bytes": 106396 + "sha256": "3ca8f36178c4e61c9f8241fd6eb045172a9e66c38da5f4943b4532fc42f94a72", + "bytes": 103027 }, { "path": "observability/README.md", - "sha256": "adbefdbdb1f427f172c8d4b4899aaf188bf5c50e8861d117c74705d07738a38f", - "bytes": 16714 + "sha256": "7c7795560a7ef6541c91dfb8b0bf4e693f5dcdf9cfc75f262d8e4832057177e3", + "bytes": 15625 }, { "path": "observability/backends/README.md", @@ -54112,8 +53873,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "b6e15fabde242bf7e16c9a67e12e78dc5463bbe978aed5fb6ac8eec8c5df22bf", - "bytes": 46135 + "sha256": "df33394028df2a687f7e39beefe0aa02978a0d6a0b97fd9d8a14f12e6075d3d6", + "bytes": 44636 }, { "path": "observability/collector/claude-settings.json.example", @@ -54292,8 +54053,8 @@ }, { "path": "recipes/README.md", - "sha256": "cf1b7a7276d3836fa09d9ea49e7b626d1db4efb578da286b6cd8cb6b3d8888e9", - "bytes": 132632 + "sha256": "ad750498ace3022cdaab34bc6cafb42300379d9a9e0f9e76f00414916c9d8a96", + "bytes": 128978 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -54317,8 +54078,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", - "bytes": 6586 + "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", + "bytes": 5706 }, { "path": "recipes/saturation-sweep.md", @@ -54422,7 +54183,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "95d45da579b1035c4cfa54f330f1ab179b949bbdb49555dd82c5163d2367300a", + "sha256": "4c25e7d13eb9f1ee11418427b6bf9c65800ac55f5b6e6fc7e9f70e21efbc068d", "bytes": 117733 }, { @@ -54802,8 +54563,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", - "bytes": 52214 + "sha256": "6621649f533fb9b1d62e902d3953447bd43ec6bb26ee3e1f35e693023200fb06", + "bytes": 52213 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -54865,11 +54626,6 @@ "sha256": "55e47ac074cef878414ca7ec2e95d69888f245c7f334c3982dffac30dfa2b475", "bytes": 12924 }, - { - "path": "tests/test_blind_checkout.py", - "sha256": "d27efdf89e9ff89b0bd50c03a59e4efad5529e617d77ead110621616c20800f8", - "bytes": 67881 - }, { "path": "tests/test_blind_layer_decisions.py", "sha256": "327f104fc335a2b25f2a910e8cae44661fe9439764f4ab778412dbf3beeaea99", @@ -55067,8 +54823,8 @@ }, { "path": "tests/test_ecosystem_manifest.py", - "sha256": "03900b5be52d6e13a4a15ae46347eddf5eb09d3324ff973a967455fe40b18202", - "bytes": 142162 + "sha256": "d1990f63256a86d69eaa154217aba92548905ff0bafc61e574465425e9ba62bb", + "bytes": 137485 }, { "path": "tests/test_edgartools_pin_move.py", @@ -55422,18 +55178,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", - "bytes": 34441 + "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", + "bytes": 34089 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "ed7e6db7559dfb09c79be5d5a6150ec57710278b096293e73373b5681a2d5724", - "bytes": 25971 + "sha256": "01643e542017a248c166302b90f7218e42c83eceb3e4084b1a99a4bb73617a89", + "bytes": 25617 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "96b901ada162f4a9d5c7445a4f5272ca86011d5e9227211405051ad12fe79665", - "bytes": 38105 + "sha256": "2f58b64cbd4f1af2b23ed869147278e2f84ad3357fef11a13c6496154fb1f15b", + "bytes": 37789 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -55542,8 +55298,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "9eae1b97d637079056994268e754f878bbafd4702fe8182cfef21f2f7b9bfcec", - "bytes": 47956 + "sha256": "e8a7d735d73063ef82c4cff28bfa09a737d75a4fb69d84b49aec335ae2ba62b4", + "bytes": 45406 }, { "path": "tests/test_research_efficiency.py", @@ -55592,8 +55348,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", - "bytes": 9774 + "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", + "bytes": 9712 }, { "path": "tests/test_secret_path_guard.py", @@ -56065,11 +55821,6 @@ "sha256": "715c98a3ea23e71768326b19250cac5ce3e3bc1c568f540771ba64e45976a4ee", "bytes": 27482 }, - { - "path": "tools/sota-convergence/export_isolation_check.py", - "sha256": "7c0218c6545ea8d0274c71df8d4789a9f3e983dab45015905ad362dc6f0d3742", - "bytes": 34727 - }, { "path": "tools/sota-convergence/extract_layers.py", "sha256": "4be73f7d3b09fa9ea88ecb238d998e43b648c7c16bb56b8853e8672ca883bb2a", @@ -56387,7 +56138,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "f3598f338d96d838ec7307e0c2d436d354682d3c1994dbfb49e82c760c551ebc", + "sha256": "20c8f4f0b757860b0d9960809dcee36e0c4425489550df31b7c0a940798615b2", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 610b0dfb0..64ba5d796 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -603,27 +603,26 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.9.0", - "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.8.0", + "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.9.0 --help" + "npx @modelcontextprotocol/inspector@2.8.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926", - "mcp-inspector-290-qualification-20261003" + "mcp-inspector-280-qualification-20260926" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", + "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -655,7 +654,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.15", + "version": "0.2.7", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -670,20 +669,19 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "openresearch-0215-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" ], - "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", - "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." + "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", + "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -695,15 +693,13 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921", - "playwright-cli-0122-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli", - "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" + "https://github.com/microsoft/playwright-cli" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", + "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1068,7 +1064,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.80.0", + "version": "0.79.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1083,21 +1079,20 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "worktrunk-0800-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" ], - "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", + "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.162.0", + "version": "0.161.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1117,15 +1112,13 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "otelcol-contrib-0162-qualification-20261003" + "claude-repository-evidence-20260921" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" + "https://github.com/open-telemetry/opentelemetry-collector-contrib" ], - "freshness": "Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The recorded scratch version and validate commands exited 0; no host service was switched. Prior 0.161.0 receipts retain their original scope. The dated upstream metadata is in catalogs/landscape/upstream-snapshot.json." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "prometheus", @@ -1233,7 +1226,7 @@ "upstream_sources": [ "https://github.com/grafana/grafana" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "alertmanager", @@ -1408,10 +1401,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.54.0", + "version": "1.52.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", + "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1420,14 +1413,13 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921", - "syft-1540-qualification-20261003" + "claude-repository-evidence-20260921" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.54.0" + "https://github.com/anchore/syft/releases/tag/v1.52.0" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." + "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." }, { "id": "alpaca-py", @@ -1694,7 +1686,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.327", + "version": "1.108.319", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1707,7 +1699,7 @@ } } ], - "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1720,14 +1712,13 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "jcodemunch-1108327-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", - "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", + "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", + "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 90e6226ae47ddc2d76381e1240dd91ad74d4169f Mon Sep 17 00:00:00 2001 From: Scout Date: Tue, 6 Oct 2026 10:36:00 -0400 Subject: [PATCH 42/50] Reapply this branch's manifests/evidence.json manifests/stack.json edits on the merge base (hot-file protocol: every hot-file edit in the last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 437 +++++++++++++++++++++++++++++++--------- manifests/stack.json | 81 ++++---- 2 files changed, 388 insertions(+), 130 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 5cdc5ab71..a29e065f9 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4477,6 +4477,155 @@ "Serena and MinerU are excluded from old-bar READY while condition-absent controls remain open. Difftastic, structural-search, inspect-ai, harbor and codex-sdk: fresh-session use not evidenced; installation-time checks retain original classes." ], "path": "evidence/receipts/ns2604-roadmap-evidence-20261005.json" + }, + { + "id": "claude-hud-0100-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-hud" + ], + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "limitations": [ + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + }, + { + "id": "jcodemunch-1108327-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "jcodemunch-mcp" + ], + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", + "limitations": [ + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" + }, + { + "id": "mcp-inspector-290-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "mcp-inspector" + ], + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "limitations": [ + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + }, + { + "id": "mcporter-0142-qualification-20261003", + "kind": "compatibility_attempt", + "component_ids": [ + "mcporter" + ], + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", + "limitations": [ + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + }, + { + "id": "openresearch-0215-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "openresearch" + ], + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "limitations": [ + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + }, + { + "id": "otelcol-contrib-0162-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "opentelemetry-collector-contrib" + ], + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "limitations": [ + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + }, + { + "id": "playwright-cli-0122-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "playwright-cli" + ], + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "limitations": [ + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + }, + { + "id": "syft-1540-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "syft" + ], + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "limitations": [ + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/syft-1540-qualification-20261003.json" + }, + { + "id": "worktrunk-0800-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "worktrunk" + ], + "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", + "limitations": [ + "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", + "The host installation and rollback launcher were not switched.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" } ], "files": [ @@ -4527,8 +4676,8 @@ }, { "path": ".github/osv-scanner-lockfiles.json", - "sha256": "6ac40e443963ca0bc93d75e440c697268682bd11810ea6203794d063a4d6be76", - "bytes": 15075 + "sha256": "3c7bed9c3899e22a022acf4172719dd510124d45664f24cf656def14e6ad999b", + "bytes": 15176 }, { "path": ".github/osv-scanner.toml", @@ -4550,6 +4699,11 @@ "sha256": "0b37433fb0fb165c893737e8e887581a07a6469683fbdf67ada1a08288758605", "bytes": 467 }, + { + "path": ".github/requirements-validation.txt", + "sha256": "458d8cb1fef26d0d0a9a6a76707c0bad04fe84558550db750d50af206fecba81", + "bytes": 719 + }, { "path": ".github/tag-ruleset.json", "sha256": "b11fda27d1e2011ff3c001ac830fa3b2c0c3af6090e929ee2d20e4d0507dda5e", @@ -4567,8 +4721,8 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "b916c15a85c4f6a84fd6fb460001898752445242f35aebc29862868c35907a4b", - "bytes": 26294 + "sha256": "673dbb816767e67d002b6dcdf866053c8408a7a47203683650af8d9f3be4b23a", + "bytes": 26872 }, { "path": ".github/workflows/dependency-review.yml", @@ -4612,8 +4766,8 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "5b52e3f50cf6ecb26cfe36f8ca54c577b5ff07ec4027a20102bc731c066cf4e5", - "bytes": 20110 + "sha256": "6f48ef65db2a270121e607aea1f08f2cad7c9f883009babd40af42b21c8f3167", + "bytes": 20399 }, { "path": ".github/workflows/receipt-staleness.yml", @@ -4647,8 +4801,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "92ab3fa8354aa9fbaad781597354ef5a942c709b5950109bb13c8b77780a40f8", - "bytes": 7576 + "sha256": "8c70b40953230c79e3d3df75fc492d689bf8884cb53acd7b6b6eadb63f2558c9", + "bytes": 7589 }, { "path": ".github/workflows/token-report.yml", @@ -4797,8 +4951,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "9ea67939f6e5443576cdc2aad3ff997cc554aca3292e877afbe0c000d7d9e6ae", - "bytes": 65967 + "sha256": "1a5533bfcb028ef8c952fc1ebd08a2ca36dd22f7c3538bae7717e78e44501761", + "bytes": 68841 }, { "path": "adoption/credential-inventory.json", @@ -4907,13 +5061,13 @@ }, { "path": "adoption/manifest.json", - "sha256": "f3e325c8b5dcd1852a613136bb1152bf1a1f39c0dd6861f3c4752ac0d5e32c0a", - "bytes": 20102 + "sha256": "16d9708777667b29a4c25b363fca5644b94ab7932d0735c7323ac48188f7eaec", + "bytes": 20038 }, { "path": "adoption/new-wsl-profile.json", - "sha256": "7504e55c2e66730d5e0b0ead2be5abef39f3989afc69e1c3640e6709bdb3db04", - "bytes": 257549 + "sha256": "b837312fcf1a81a9e9d47b71496bf08550d848cfbe6be4353f01bf75659b28f3", + "bytes": 260542 }, { "path": "adoption/new-wsl-profile.md", @@ -4982,8 +5136,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "804eba0e086670c75e6b2f3725734477914318987c99fb90195680188be337c9", - "bytes": 37335 + "sha256": "7e210c9c56953ff5091c35909a0e3b5c94a4a519932eeda82878afb22b3c2961", + "bytes": 37151 }, { "path": "adoption/pins-macos-arm64.json", @@ -4992,18 +5146,18 @@ }, { "path": "adoption/platforms/linux-wsl2-new-distro.md", - "sha256": "f640139255f1e093b018f47c1346c9f03b36d3fb941e08f4e910c928a08b3bec", - "bytes": 93206 + "sha256": "dc747930541b6efeddb799967e1cf82a258b055dd268568a2897ae015d38048b", + "bytes": 93494 }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "317a997ce3e794298d985f035af05285e27bc3690fd9e09be068991a82fe2056", - "bytes": 29535 + "sha256": "1f3b29db1d2585b548a8595dd25b7ab3c7a2ff33af7e9f9a2ba750c3b0452174", + "bytes": 30164 }, { "path": "adoption/platforms/macos-arm64.md", - "sha256": "266da883e614f767929981e8e630c34cf3958020fb5a14f162d9f385bbb9427e", - "bytes": 65623 + "sha256": "d7f026a3480e71374f25c33a92d3b0c4b30c1717846f74d0c3038872ad6d5870", + "bytes": 65911 }, { "path": "adoption/pre-login-observation.json", @@ -5057,8 +5211,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "304dc11b5fca6e4001382a8cb884712e10d28bdfa8551fcac6dbfc2b4d36cf70", - "bytes": 12744 + "sha256": "a0e293941482230a1ccaaf8a3206a5c7e72b73690d47e3a211883e9dd6279abc", + "bytes": 12948 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -10758,8 +10912,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "b2e82b633fd1594a15d1726afe8d4b1d401440b265cfaf12d07c6d6752a71641", - "bytes": 486278 + "sha256": "286c6898529e89ae3b1582f6db149f0dabf968adc917faf653057dc9d22dab21", + "bytes": 494497 }, { "path": "blueprints/trials-20260926/README.md", @@ -16223,7 +16377,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "4ec258549f82eeb8ea709f18b8a0bd482cdcebfc690bfab87c58449b16947472", + "sha256": "6c9fd66ad582103f454dac9d53925bdd3ea1a412073e83efd4579298b05ee46b", "bytes": 36223 }, { @@ -16248,8 +16402,8 @@ }, { "path": "catalogs/foundation/new-wsl-architecture-20261001.json", - "sha256": "3a8081049976785e320cfd99bc93bd3dcefa0a8a351fcc4f3cab1d8022a6b1cd", - "bytes": 325006 + "sha256": "f9ba8f70ffd7350178ef4cdb5226a5cd7040a1f43f0f416855aa156dda6f8b23", + "bytes": 325528 }, { "path": "catalogs/foundation/new-wsl-layer-crosswalk-20261001.json", @@ -16353,8 +16507,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "d1f0f17e142e8bfca223006f72cb16fce65456609248a32b5cf7958ba9f54dd2", - "bytes": 287704 + "sha256": "4b45aa982068205635f95776bbfc7a4c73d283ea48586e480f3870e613450ecf", + "bytes": 287577 }, { "path": "catalogs/landscape/research-state.json", @@ -16363,8 +16517,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "85a1715168203fef8f201672d3f284ff3021797c0576a974ef05ed4b6af7446c", - "bytes": 258289 + "sha256": "e5987d047e09f2f16ed9592cba1f7d2a7a350a6428f2904b9e481298a5f9ab5e", + "bytes": 286532 }, { "path": "catalogs/landscape/us-equities.json", @@ -16823,8 +16977,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "6e7ebbe64011f460b59ab310a328211737deec2f83543fb99c41d761958bff06", - "bytes": 56411 + "sha256": "4334eda38f9961f971e4c5394cd6fef418cef236d3ad73c34a0e080b5b71be21", + "bytes": 56958 }, { "path": "docs/comparison-progress-20260922.md", @@ -17088,7 +17242,7 @@ }, { "path": "docs/decisions/2026-10-01-new-wsl-definitive-defaults.md", - "sha256": "711038cb81075841beed0b6db4310fdab88f425c064342b7d57f9fe33603d6b7", + "sha256": "1d3e6dd6d86df768a2683cd9f64bd478111467efdf6f35b3c71526af93b9f1d6", "bytes": 80195 }, { @@ -17126,6 +17280,11 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, + { + "path": "docs/decisions/2026-10-03-currency-wave-w1.md", + "sha256": "c05f4b990e731342483a51883be8e5563a2d7fa07d936b18fff6cdf5d9e1bce5", + "bytes": 50522 + }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", "sha256": "a4c5ddf98c9fa778d07b60507a183818b1d243dda789bc06ee8bcd612fcbcedb", @@ -17438,8 +17597,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "9d49b5052129b31a081f356c0bc750480ac4e5cc98d7b9606f6d4df7b9471357", - "bytes": 41689 + "sha256": "e1003554881d6ddfa464560e2596b456897408ee40a3cd012e72bd75e4a5e0ed", + "bytes": 42784 }, { "path": "docs/full-stack-convergence.md", @@ -17478,7 +17637,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "6e17a86f92414d877858c9cbd88a42703aaaefb36f04bad6a78219f869bae18a", + "sha256": "d5f2c827e9f9da7ff769d0a833c9a2b8e9a3433cab9b8979e095a74f07a7ad7e", "bytes": 99371 }, { @@ -17488,8 +17647,8 @@ }, { "path": "docs/harness-defaults.md", - "sha256": "26ec355b96aa6bc91fba8fd4f1ff33d84b13ce7865c4eb3108d98ead4dfa534c", - "bytes": 225647 + "sha256": "2c8469eade8c6a3237d96c42176b93cb9f49741fc4c3affdd352e1f81e3557bb", + "bytes": 227029 }, { "path": "docs/harness-rules-convergence-20260922.md", @@ -17608,8 +17767,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "feacb3a295970f1269ea2004127e5dd11a4f43c9e2fb29166e501346205091af", - "bytes": 18483 + "sha256": "c1b9e9cd27feb0ed823a2c0e942a741671e5ad2b84753e5196e09442b0fb1e3c", + "bytes": 18484 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -17618,13 +17777,13 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "bb5a4dc62aabc938b56b038ddb4ae3df036395ccd44cc72720436ad3aa19b33d", - "bytes": 689754 + "sha256": "597b8ebe58355e24473e96670b48444bfec6e3302c984ec3d90289c876031f71", + "bytes": 692111 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "05ec525a60a6bad90b5f4161473a2aa015107c724fdfe0328f2166e3e73453a0", - "bytes": 366781 + "sha256": "e86f96359863af80761aa28d91b6d82ee0c702824d4b57e902b1245bd1ea7060", + "bytes": 368486 }, { "path": "docs/next-host-stages.md", @@ -17718,8 +17877,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "172d1d75458d9af2c24f1a1f63615fbaa34dc6abaf9428c58d6cacee3ec58b95", - "bytes": 592422 + "sha256": "82dd8fabc8348c4297395f54f8af7b60d4fe8f75c00bcf4b50dd6af6c91376dc", + "bytes": 594844 }, { "path": "docs/token-efficiency-stack.md", @@ -17738,7 +17897,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "e54b87c1e0ad36ed6f0533e70e80d05935c42fcd72058d1b1ed6174a4e9ecb6a", + "sha256": "c0dbda10161afabaa3f35ff3b98593dcb07c44e90109dc476d8c3616b3f35f35", "bytes": 98350 }, { @@ -19386,6 +19545,41 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", + "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", + "bytes": 108109 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", + "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", + "bytes": 13041 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", + "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", + "bytes": 28233 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", + "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", + "bytes": 18135 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", + "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", + "bytes": 74214 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", + "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", + "bytes": 121015 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", + "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", + "bytes": 26125 + }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -39018,8 +39212,8 @@ }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/definitive-manifest.json", - "sha256": "8694fff119eded04b6009c75a5d328e82b4142b0a6ec6130398748307fc556d5", - "bytes": 229325 + "sha256": "2c99f8e90c434abd824238dd301ca53bccf15aa0403d10827283996f193dc2f0", + "bytes": 229459 }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/foundation-definitive.compact.json", @@ -39768,8 +39962,8 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "8a6efae7585476f1b8f32e490b22066910316cd56a9c2667d5670350c34ebf6f", - "bytes": 26931 + "sha256": "7e31de178995d4c174ddc7f3f5c5a53554d4cee87f87a276ba53d80ce30a38f5", + "bytes": 34020 }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/slot-state-and-core-recipes.json", @@ -39778,13 +39972,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md", - "sha256": "913041489fd8145fcb8b15047107c80f0f4395e711a3042db2adf5bf72125196", - "bytes": 79782 + "sha256": "ec3b531938276ad5323bf882d597fc1e55d7ec4a960c5985cfee66bbeeeace42", + "bytes": 81255 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md", - "sha256": "24d3893580420960e71dfe9c91bdf8ba547cb0db4d0bfbd6a047ad1fb8305f83", - "bytes": 171237 + "sha256": "52c16852b31a747a9435226a53da23d2473e66cf6e353cf381832fb8a11a5262", + "bytes": 173464 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/VALIDATION.md", @@ -39793,8 +39987,8 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/accept.sh", - "sha256": "808fd9eef9b48db7a930573f28e660f1b5f9dfc569642ee31fac17a8fb043ba7", - "bytes": 152419 + "sha256": "5e35b0c4fb78368a8a2488cb8b2b20702c67bec8e4a7e3e13f88947af5936db2", + "bytes": 152491 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/check_plan.py", @@ -40098,13 +40292,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json", - "sha256": "c4546b76fb2d7eb9dddd44b416716307d313781235c09b7945d844c5df686c0d", - "bytes": 388443 + "sha256": "c83ee09d0f60ed9baafaf44e8e0d3e9109602f441331287d73254fb1dc8e7faa", + "bytes": 389456 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install.sh", - "sha256": "d3448844538e508e7f83e6b545c844017e0170a057787dc051c4051133538da8", - "bytes": 119797 + "sha256": "8dc58271f17fe79535f4ce5ea2dcf79bc617a439da6eb0582aca0fd0c90c4caf", + "bytes": 120084 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/mise.toml", @@ -40128,7 +40322,7 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/owners.json", - "sha256": "5831ddfe557023c647397c84474cb7f5277a46646bd74eb1bb62fdb725f927fa", + "sha256": "3ce5fb8d821a3940ccbd05a06fdf11947ade49f0c7fad378d5c3048bc27b0982", "bytes": 35188 }, { @@ -40168,8 +40362,8 @@ }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/consensus.json", - "sha256": "a34fb8c01429177cd2787a07a1edf0a0668d31898ff35fd798056964d5dab82e", - "bytes": 142174 + "sha256": "21b833ade87f27616b037c9619a348223391175bd6047a2be237556bf4b7fc1e", + "bytes": 142310 }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/copy-notes.json", @@ -52391,6 +52585,11 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, + { + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", + "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", + "bytes": 10611 + }, { "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json", "sha256": "b0c9e1d7c58e339dc2906e6a977ec04e6c1a808e826f9422407449ab34dd4f09", @@ -52646,6 +52845,11 @@ "sha256": "99580ecf2786f53585823b7695546f67d690fa5c2a6e30e4732854fe3f107787", "bytes": 27783 }, + { + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", + "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", + "bytes": 8187 + }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -52676,11 +52880,21 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, + { + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", + "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", + "bytes": 10165 + }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, + { + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", + "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", + "bytes": 10463 + }, { "path": "evidence/receipts/mcporter-0142-qualification-20261004.json", "sha256": "9399c393875decb817d49a1ed59e1629ff445070453c2a2ba819e98d17a24cd1", @@ -52996,6 +53210,11 @@ "sha256": "9ad1db0b9e841cd780d04e544f6e75dde57fd88ebc6fc4f5b0bafd84287f20da", "bytes": 149558 }, + { + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", + "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", + "bytes": 7517 + }, { "path": "evidence/receipts/osv-captured-lumibot-lockchecks-20261005.json", "sha256": "f211de55c2cbbf1f712c35f51bbe846f8a08341d24a240b51e654a6df6fd2b6c", @@ -53036,11 +53255,21 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, + { + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", + "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", + "bytes": 6732 + }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, + { + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", + "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", + "bytes": 7731 + }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -53131,6 +53360,11 @@ "sha256": "88d94dea0829c87eecd2b6f9cc2a03c010888de130fe430abce65d5ebd39e788", "bytes": 135042 }, + { + "path": "evidence/receipts/syft-1540-qualification-20261003.json", + "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", + "bytes": 7946 + }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -53221,6 +53455,11 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, + { + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", + "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", + "bytes": 6655 + }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -53763,18 +54002,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", + "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "3ca8f36178c4e61c9f8241fd6eb045172a9e66c38da5f4943b4532fc42f94a72", - "bytes": 103027 + "sha256": "cbc65770d505fcc1253aa270db6d9930d884c9b22abeb34de450405b670c21a3", + "bytes": 106396 }, { "path": "observability/README.md", - "sha256": "7c7795560a7ef6541c91dfb8b0bf4e693f5dcdf9cfc75f262d8e4832057177e3", - "bytes": 15625 + "sha256": "adbefdbdb1f427f172c8d4b4899aaf188bf5c50e8861d117c74705d07738a38f", + "bytes": 16714 }, { "path": "observability/backends/README.md", @@ -53873,8 +54112,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "df33394028df2a687f7e39beefe0aa02978a0d6a0b97fd9d8a14f12e6075d3d6", - "bytes": 44636 + "sha256": "b6e15fabde242bf7e16c9a67e12e78dc5463bbe978aed5fb6ac8eec8c5df22bf", + "bytes": 46135 }, { "path": "observability/collector/claude-settings.json.example", @@ -54053,8 +54292,8 @@ }, { "path": "recipes/README.md", - "sha256": "ad750498ace3022cdaab34bc6cafb42300379d9a9e0f9e76f00414916c9d8a96", - "bytes": 128978 + "sha256": "cf1b7a7276d3836fa09d9ea49e7b626d1db4efb578da286b6cd8cb6b3d8888e9", + "bytes": 132632 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -54078,8 +54317,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", - "bytes": 5706 + "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", + "bytes": 6586 }, { "path": "recipes/saturation-sweep.md", @@ -54183,7 +54422,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "4c25e7d13eb9f1ee11418427b6bf9c65800ac55f5b6e6fc7e9f70e21efbc068d", + "sha256": "95d45da579b1035c4cfa54f330f1ab179b949bbdb49555dd82c5163d2367300a", "bytes": 117733 }, { @@ -54563,8 +54802,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "6621649f533fb9b1d62e902d3953447bd43ec6bb26ee3e1f35e693023200fb06", - "bytes": 52213 + "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", + "bytes": 52214 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -54626,6 +54865,11 @@ "sha256": "55e47ac074cef878414ca7ec2e95d69888f245c7f334c3982dffac30dfa2b475", "bytes": 12924 }, + { + "path": "tests/test_blind_checkout.py", + "sha256": "d27efdf89e9ff89b0bd50c03a59e4efad5529e617d77ead110621616c20800f8", + "bytes": 67881 + }, { "path": "tests/test_blind_layer_decisions.py", "sha256": "327f104fc335a2b25f2a910e8cae44661fe9439764f4ab778412dbf3beeaea99", @@ -54823,8 +55067,8 @@ }, { "path": "tests/test_ecosystem_manifest.py", - "sha256": "d1990f63256a86d69eaa154217aba92548905ff0bafc61e574465425e9ba62bb", - "bytes": 137485 + "sha256": "03900b5be52d6e13a4a15ae46347eddf5eb09d3324ff973a967455fe40b18202", + "bytes": 142162 }, { "path": "tests/test_edgartools_pin_move.py", @@ -55178,18 +55422,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", - "bytes": 34089 + "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", + "bytes": 34441 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "01643e542017a248c166302b90f7218e42c83eceb3e4084b1a99a4bb73617a89", - "bytes": 25617 + "sha256": "ed7e6db7559dfb09c79be5d5a6150ec57710278b096293e73373b5681a2d5724", + "bytes": 25971 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "2f58b64cbd4f1af2b23ed869147278e2f84ad3357fef11a13c6496154fb1f15b", - "bytes": 37789 + "sha256": "96b901ada162f4a9d5c7445a4f5272ca86011d5e9227211405051ad12fe79665", + "bytes": 38105 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -55298,8 +55542,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "e8a7d735d73063ef82c4cff28bfa09a737d75a4fb69d84b49aec335ae2ba62b4", - "bytes": 45406 + "sha256": "9eae1b97d637079056994268e754f878bbafd4702fe8182cfef21f2f7b9bfcec", + "bytes": 47956 }, { "path": "tests/test_research_efficiency.py", @@ -55348,8 +55592,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", - "bytes": 9712 + "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", + "bytes": 9774 }, { "path": "tests/test_secret_path_guard.py", @@ -55821,6 +56065,11 @@ "sha256": "715c98a3ea23e71768326b19250cac5ce3e3bc1c568f540771ba64e45976a4ee", "bytes": 27482 }, + { + "path": "tools/sota-convergence/export_isolation_check.py", + "sha256": "7c0218c6545ea8d0274c71df8d4789a9f3e983dab45015905ad362dc6f0d3742", + "bytes": 34727 + }, { "path": "tools/sota-convergence/extract_layers.py", "sha256": "4be73f7d3b09fa9ea88ecb238d998e43b648c7c16bb56b8853e8672ca883bb2a", @@ -56138,7 +56387,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "20c8f4f0b757860b0d9960809dcee36e0c4425489550df31b7c0a940798615b2", + "sha256": "f3598f338d96d838ec7307e0c2d436d354682d3c1994dbfb49e82c760c551ebc", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 64ba5d796..610b0dfb0 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -603,26 +603,27 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.8.0", - "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.9.0", + "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.8.0 --help" + "npx @modelcontextprotocol/inspector@2.9.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926" + "mcp-inspector-280-qualification-20260926", + "mcp-inspector-290-qualification-20261003" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" ], "source_pin": null, - "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -654,7 +655,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.7", + "version": "0.2.15", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -669,19 +670,20 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "openresearch-0215-qualification-20261003" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" ], - "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." + "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", + "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -693,13 +695,15 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "playwright-cli-0122-qualification-20261003" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli" + "https://github.com/microsoft/playwright-cli", + "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" ], "source_pin": null, - "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1064,7 +1068,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.79.0", + "version": "0.80.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1079,20 +1083,21 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "worktrunk-0800-qualification-20261003" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" ], - "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.161.0", + "version": "0.162.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1112,13 +1117,15 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "otelcol-contrib-0162-qualification-20261003" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib" + "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The recorded scratch version and validate commands exited 0; no host service was switched. Prior 0.161.0 receipts retain their original scope. The dated upstream metadata is in catalogs/landscape/upstream-snapshot.json." }, { "id": "prometheus", @@ -1226,7 +1233,7 @@ "upstream_sources": [ "https://github.com/grafana/grafana" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head." }, { "id": "alertmanager", @@ -1401,10 +1408,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.52.0", + "version": "1.54.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1413,13 +1420,14 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "syft-1540-qualification-20261003" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.52.0" + "https://github.com/anchore/syft/releases/tag/v1.54.0" ], - "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." }, { "id": "alpaca-py", @@ -1686,7 +1694,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.319", + "version": "1.108.327", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1699,7 +1707,7 @@ } } ], - "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1712,13 +1720,14 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "jcodemunch-1108327-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", - "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", + "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" ], - "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From ac5377b1095c9a6faa6967f409e69abf575cabdd Mon Sep 17 00:00:00 2001 From: Scout Date: Tue, 6 Oct 2026 11:09:47 -0400 Subject: [PATCH 43/50] Regenerate the new-WSL handbook after the adoption-docs disclosure (handbook_regen v2; --check exit 0) 4ae82b011 changed a hashed handbook input (adoption/platforms/linux-wsl2-new-distro.md) after the regeneration at 7990d2fa3. The native builder regenerated both outputs (md f2b224c2, json e5a825c8, equal to the cross-family render), and the receipt keeps every regeneration entry with one new entry naming the main it ran against. Co-Authored-By: Claude Opus 5.5 --- docs/new-wsl-handbook.json | 2 +- docs/new-wsl-handbook.md | 2 +- .../new-wsl-handbook-20261001/receipt.json | 16 ++++++++++++++-- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/docs/new-wsl-handbook.json b/docs/new-wsl-handbook.json index ebea092de..20cd83f80 100644 --- a/docs/new-wsl-handbook.json +++ b/docs/new-wsl-handbook.json @@ -7840,7 +7840,7 @@ }, { "path": "adoption/platforms/linux-wsl2-new-distro.md", - "sha256": "f640139255f1e093b018f47c1346c9f03b36d3fb941e08f4e910c928a08b3bec" + "sha256": "dc747930541b6efeddb799967e1cf82a258b055dd268568a2897ae015d38048b" }, { "path": "catalogs/foundation/new-wsl-architecture-20261001.json", diff --git a/docs/new-wsl-handbook.md b/docs/new-wsl-handbook.md index 7780768af..987c51188 100644 --- a/docs/new-wsl-handbook.md +++ b/docs/new-wsl-handbook.md @@ -2163,7 +2163,7 @@ Reference edition: [catalogs/foundation/new-wsl-architecture-20261001.json](../c | --- | --- | | [adoption/manifest.json](../adoption/manifest.json) | `67d53c69ab322a37437aeaaceaec73655710657abc08ec269d5e5bbb115abdfb` (without source.release_tag, source.release_commit, updated_at) | | [adoption/new-wsl-profile.json](../adoption/new-wsl-profile.json) | `b837312fcf1a81a9e9d47b71496bf08550d848cfbe6be4353f01bf75659b28f3` | -| [adoption/platforms/linux-wsl2-new-distro.md](../adoption/platforms/linux-wsl2-new-distro.md) | `f640139255f1e093b018f47c1346c9f03b36d3fb941e08f4e910c928a08b3bec` | +| [adoption/platforms/linux-wsl2-new-distro.md](../adoption/platforms/linux-wsl2-new-distro.md) | `dc747930541b6efeddb799967e1cf82a258b055dd268568a2897ae015d38048b` | | [catalogs/foundation/new-wsl-architecture-20261001.json](../catalogs/foundation/new-wsl-architecture-20261001.json) | `f9ba8f70ffd7350178ef4cdb5226a5cd7040a1f43f0f416855aa156dda6f8b23` | | [catalogs/landscape/research-state.json](../catalogs/landscape/research-state.json) | `fe142c1b8b8ec8b92d69ec5971d68028225899c101ffc43cea618883b119332a` | | [catalogs/landscape/us-equities.json](../catalogs/landscape/us-equities.json) | `cf441d393b1a1ee49c57d62592e2c7477de2003ca40aa9e1933a6c9b28d4a618` | diff --git a/evidence/artifacts/new-wsl-handbook-20261001/receipt.json b/evidence/artifacts/new-wsl-handbook-20261001/receipt.json index da175293b..5e0cd5f36 100644 --- a/evidence/artifacts/new-wsl-handbook-20261001/receipt.json +++ b/evidence/artifacts/new-wsl-handbook-20261001/receipt.json @@ -6,8 +6,8 @@ "generator_sha256": "1a63ce9f991ec29f7a7e00564940a178b329c47e7661c77a09a60a4c54670f99", "profile_sha256": "b837312fcf1a81a9e9d47b71496bf08550d848cfbe6be4353f01bf75659b28f3", "outputs": { - "docs/new-wsl-handbook.md": "e86f96359863af80761aa28d91b6d82ee0c702824d4b57e902b1245bd1ea7060", - "docs/new-wsl-handbook.json": "597b8ebe58355e24473e96670b48444bfec6e3302c984ec3d90289c876031f71" + "docs/new-wsl-handbook.md": "f2b224c2eb081be6ca73834ef0a589a69a9c7029f2c2233678de893dd5a061b1", + "docs/new-wsl-handbook.json": "e5a825c8542eafe57744301ed16f8bd0cae373ddc0544f39e5be194b5be117bd" }, "inventory": { "layers": 37, @@ -565,6 +565,18 @@ }, "native_exit_code": 0, "check": "python3 scripts/build_new_wsl_handbook.py --check" + }, + { + "date": "2026-10-06", + "command": "python3 scripts/build_new_wsl_handbook.py --write", + "cause": "Regeneration on PR #642 after its adoption-docs disclosure (4ae82b011) changed a hashed handbook input (adoption/platforms/linux-wsl2-new-distro.md); the native builder is unchanged; the command center's item task-native-agent-stack-5f-20261006T150622Z.", + "regenerated_against_main": "0d5e6506434fab598dee861c749a22e628beb75a", + "previous_outputs": { + "docs/new-wsl-handbook.md": "05ec525a60a6bad90b5f4161473a2aa015107c724fdfe0328f2166e3e73453a0", + "docs/new-wsl-handbook.json": "bb5a4dc62aabc938b56b038ddb4ae3df036395ccd44cc72720436ad3aa19b33d" + }, + "native_exit_code": 0, + "check": "python3 scripts/build_new_wsl_handbook.py --check" } ] } From 7b09f24c45e0361a91cfa6608260f873421fd1b8 Mon Sep 17 00:00:00 2001 From: Scout Date: Tue, 6 Oct 2026 11:10:44 -0400 Subject: [PATCH 44/50] Registry rehash for the handbook regeneration Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index a29e065f9..c0885c547 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -17777,12 +17777,12 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "597b8ebe58355e24473e96670b48444bfec6e3302c984ec3d90289c876031f71", + "sha256": "e5a825c8542eafe57744301ed16f8bd0cae373ddc0544f39e5be194b5be117bd", "bytes": 692111 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "e86f96359863af80761aa28d91b6d82ee0c702824d4b57e902b1245bd1ea7060", + "sha256": "f2b224c2eb081be6ca73834ef0a589a69a9c7029f2c2233678de893dd5a061b1", "bytes": 368486 }, { @@ -39962,8 +39962,8 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "7e31de178995d4c174ddc7f3f5c5a53554d4cee87f87a276ba53d80ce30a38f5", - "bytes": 34020 + "sha256": "154b0cd9c3bb688051f1743d649637d13a07f48feb2a162bce162539bd32ce7d", + "bytes": 34823 }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/slot-state-and-core-recipes.json", From a2afb61553f0f5c37f99cddf4a2327764601af8e Mon Sep 17 00:00:00 2001 From: Scout Date: Tue, 6 Oct 2026 11:10:45 -0400 Subject: [PATCH 45/50] Hot-file protocol: reset manifests/evidence.json manifests/stack.json to the merge base before the final hot-file commit Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 437 +++++++++------------------------------- manifests/stack.json | 81 ++++---- 2 files changed, 130 insertions(+), 388 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index c0885c547..5cdc5ab71 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4477,155 +4477,6 @@ "Serena and MinerU are excluded from old-bar READY while condition-absent controls remain open. Difftastic, structural-search, inspect-ai, harbor and codex-sdk: fresh-session use not evidenced; installation-time checks retain original classes." ], "path": "evidence/receipts/ns2604-roadmap-evidence-20261005.json" - }, - { - "id": "claude-hud-0100-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-hud" - ], - "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", - "limitations": [ - "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", - "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", - "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" - }, - { - "id": "jcodemunch-1108327-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "jcodemunch-mcp" - ], - "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", - "limitations": [ - "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", - "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" - }, - { - "id": "mcp-inspector-290-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "mcp-inspector" - ], - "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", - "limitations": [ - "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", - "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", - "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" - }, - { - "id": "mcporter-0142-qualification-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "mcporter" - ], - "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", - "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", - "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", - "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" - }, - { - "id": "openresearch-0215-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "openresearch" - ], - "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", - "limitations": [ - "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", - "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" - }, - { - "id": "otelcol-contrib-0162-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "opentelemetry-collector-contrib" - ], - "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", - "limitations": [ - "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", - "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" - }, - { - "id": "playwright-cli-0122-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "playwright-cli" - ], - "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", - "limitations": [ - "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", - "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", - "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" - }, - { - "id": "syft-1540-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "syft" - ], - "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", - "limitations": [ - "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", - "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", - "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/syft-1540-qualification-20261003.json" - }, - { - "id": "worktrunk-0800-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "worktrunk" - ], - "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", - "limitations": [ - "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", - "The host installation and rollback launcher were not switched.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" } ], "files": [ @@ -4676,8 +4527,8 @@ }, { "path": ".github/osv-scanner-lockfiles.json", - "sha256": "3c7bed9c3899e22a022acf4172719dd510124d45664f24cf656def14e6ad999b", - "bytes": 15176 + "sha256": "6ac40e443963ca0bc93d75e440c697268682bd11810ea6203794d063a4d6be76", + "bytes": 15075 }, { "path": ".github/osv-scanner.toml", @@ -4699,11 +4550,6 @@ "sha256": "0b37433fb0fb165c893737e8e887581a07a6469683fbdf67ada1a08288758605", "bytes": 467 }, - { - "path": ".github/requirements-validation.txt", - "sha256": "458d8cb1fef26d0d0a9a6a76707c0bad04fe84558550db750d50af206fecba81", - "bytes": 719 - }, { "path": ".github/tag-ruleset.json", "sha256": "b11fda27d1e2011ff3c001ac830fa3b2c0c3af6090e929ee2d20e4d0507dda5e", @@ -4721,8 +4567,8 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "673dbb816767e67d002b6dcdf866053c8408a7a47203683650af8d9f3be4b23a", - "bytes": 26872 + "sha256": "b916c15a85c4f6a84fd6fb460001898752445242f35aebc29862868c35907a4b", + "bytes": 26294 }, { "path": ".github/workflows/dependency-review.yml", @@ -4766,8 +4612,8 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "6f48ef65db2a270121e607aea1f08f2cad7c9f883009babd40af42b21c8f3167", - "bytes": 20399 + "sha256": "5b52e3f50cf6ecb26cfe36f8ca54c577b5ff07ec4027a20102bc731c066cf4e5", + "bytes": 20110 }, { "path": ".github/workflows/receipt-staleness.yml", @@ -4801,8 +4647,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "8c70b40953230c79e3d3df75fc492d689bf8884cb53acd7b6b6eadb63f2558c9", - "bytes": 7589 + "sha256": "92ab3fa8354aa9fbaad781597354ef5a942c709b5950109bb13c8b77780a40f8", + "bytes": 7576 }, { "path": ".github/workflows/token-report.yml", @@ -4951,8 +4797,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "1a5533bfcb028ef8c952fc1ebd08a2ca36dd22f7c3538bae7717e78e44501761", - "bytes": 68841 + "sha256": "9ea67939f6e5443576cdc2aad3ff997cc554aca3292e877afbe0c000d7d9e6ae", + "bytes": 65967 }, { "path": "adoption/credential-inventory.json", @@ -5061,13 +4907,13 @@ }, { "path": "adoption/manifest.json", - "sha256": "16d9708777667b29a4c25b363fca5644b94ab7932d0735c7323ac48188f7eaec", - "bytes": 20038 + "sha256": "f3e325c8b5dcd1852a613136bb1152bf1a1f39c0dd6861f3c4752ac0d5e32c0a", + "bytes": 20102 }, { "path": "adoption/new-wsl-profile.json", - "sha256": "b837312fcf1a81a9e9d47b71496bf08550d848cfbe6be4353f01bf75659b28f3", - "bytes": 260542 + "sha256": "7504e55c2e66730d5e0b0ead2be5abef39f3989afc69e1c3640e6709bdb3db04", + "bytes": 257549 }, { "path": "adoption/new-wsl-profile.md", @@ -5136,8 +4982,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "7e210c9c56953ff5091c35909a0e3b5c94a4a519932eeda82878afb22b3c2961", - "bytes": 37151 + "sha256": "804eba0e086670c75e6b2f3725734477914318987c99fb90195680188be337c9", + "bytes": 37335 }, { "path": "adoption/pins-macos-arm64.json", @@ -5146,18 +4992,18 @@ }, { "path": "adoption/platforms/linux-wsl2-new-distro.md", - "sha256": "dc747930541b6efeddb799967e1cf82a258b055dd268568a2897ae015d38048b", - "bytes": 93494 + "sha256": "f640139255f1e093b018f47c1346c9f03b36d3fb941e08f4e910c928a08b3bec", + "bytes": 93206 }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "1f3b29db1d2585b548a8595dd25b7ab3c7a2ff33af7e9f9a2ba750c3b0452174", - "bytes": 30164 + "sha256": "317a997ce3e794298d985f035af05285e27bc3690fd9e09be068991a82fe2056", + "bytes": 29535 }, { "path": "adoption/platforms/macos-arm64.md", - "sha256": "d7f026a3480e71374f25c33a92d3b0c4b30c1717846f74d0c3038872ad6d5870", - "bytes": 65911 + "sha256": "266da883e614f767929981e8e630c34cf3958020fb5a14f162d9f385bbb9427e", + "bytes": 65623 }, { "path": "adoption/pre-login-observation.json", @@ -5211,8 +5057,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "a0e293941482230a1ccaaf8a3206a5c7e72b73690d47e3a211883e9dd6279abc", - "bytes": 12948 + "sha256": "304dc11b5fca6e4001382a8cb884712e10d28bdfa8551fcac6dbfc2b4d36cf70", + "bytes": 12744 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -10912,8 +10758,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "286c6898529e89ae3b1582f6db149f0dabf968adc917faf653057dc9d22dab21", - "bytes": 494497 + "sha256": "b2e82b633fd1594a15d1726afe8d4b1d401440b265cfaf12d07c6d6752a71641", + "bytes": 486278 }, { "path": "blueprints/trials-20260926/README.md", @@ -16377,7 +16223,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "6c9fd66ad582103f454dac9d53925bdd3ea1a412073e83efd4579298b05ee46b", + "sha256": "4ec258549f82eeb8ea709f18b8a0bd482cdcebfc690bfab87c58449b16947472", "bytes": 36223 }, { @@ -16402,8 +16248,8 @@ }, { "path": "catalogs/foundation/new-wsl-architecture-20261001.json", - "sha256": "f9ba8f70ffd7350178ef4cdb5226a5cd7040a1f43f0f416855aa156dda6f8b23", - "bytes": 325528 + "sha256": "3a8081049976785e320cfd99bc93bd3dcefa0a8a351fcc4f3cab1d8022a6b1cd", + "bytes": 325006 }, { "path": "catalogs/foundation/new-wsl-layer-crosswalk-20261001.json", @@ -16507,8 +16353,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "4b45aa982068205635f95776bbfc7a4c73d283ea48586e480f3870e613450ecf", - "bytes": 287577 + "sha256": "d1f0f17e142e8bfca223006f72cb16fce65456609248a32b5cf7958ba9f54dd2", + "bytes": 287704 }, { "path": "catalogs/landscape/research-state.json", @@ -16517,8 +16363,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "e5987d047e09f2f16ed9592cba1f7d2a7a350a6428f2904b9e481298a5f9ab5e", - "bytes": 286532 + "sha256": "85a1715168203fef8f201672d3f284ff3021797c0576a974ef05ed4b6af7446c", + "bytes": 258289 }, { "path": "catalogs/landscape/us-equities.json", @@ -16977,8 +16823,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "4334eda38f9961f971e4c5394cd6fef418cef236d3ad73c34a0e080b5b71be21", - "bytes": 56958 + "sha256": "6e7ebbe64011f460b59ab310a328211737deec2f83543fb99c41d761958bff06", + "bytes": 56411 }, { "path": "docs/comparison-progress-20260922.md", @@ -17242,7 +17088,7 @@ }, { "path": "docs/decisions/2026-10-01-new-wsl-definitive-defaults.md", - "sha256": "1d3e6dd6d86df768a2683cd9f64bd478111467efdf6f35b3c71526af93b9f1d6", + "sha256": "711038cb81075841beed0b6db4310fdab88f425c064342b7d57f9fe33603d6b7", "bytes": 80195 }, { @@ -17280,11 +17126,6 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, - { - "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "c05f4b990e731342483a51883be8e5563a2d7fa07d936b18fff6cdf5d9e1bce5", - "bytes": 50522 - }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", "sha256": "a4c5ddf98c9fa778d07b60507a183818b1d243dda789bc06ee8bcd612fcbcedb", @@ -17597,8 +17438,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "e1003554881d6ddfa464560e2596b456897408ee40a3cd012e72bd75e4a5e0ed", - "bytes": 42784 + "sha256": "9d49b5052129b31a081f356c0bc750480ac4e5cc98d7b9606f6d4df7b9471357", + "bytes": 41689 }, { "path": "docs/full-stack-convergence.md", @@ -17637,7 +17478,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "d5f2c827e9f9da7ff769d0a833c9a2b8e9a3433cab9b8979e095a74f07a7ad7e", + "sha256": "6e17a86f92414d877858c9cbd88a42703aaaefb36f04bad6a78219f869bae18a", "bytes": 99371 }, { @@ -17647,8 +17488,8 @@ }, { "path": "docs/harness-defaults.md", - "sha256": "2c8469eade8c6a3237d96c42176b93cb9f49741fc4c3affdd352e1f81e3557bb", - "bytes": 227029 + "sha256": "26ec355b96aa6bc91fba8fd4f1ff33d84b13ce7865c4eb3108d98ead4dfa534c", + "bytes": 225647 }, { "path": "docs/harness-rules-convergence-20260922.md", @@ -17767,8 +17608,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "c1b9e9cd27feb0ed823a2c0e942a741671e5ad2b84753e5196e09442b0fb1e3c", - "bytes": 18484 + "sha256": "feacb3a295970f1269ea2004127e5dd11a4f43c9e2fb29166e501346205091af", + "bytes": 18483 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -17777,13 +17618,13 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "e5a825c8542eafe57744301ed16f8bd0cae373ddc0544f39e5be194b5be117bd", - "bytes": 692111 + "sha256": "bb5a4dc62aabc938b56b038ddb4ae3df036395ccd44cc72720436ad3aa19b33d", + "bytes": 689754 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "f2b224c2eb081be6ca73834ef0a589a69a9c7029f2c2233678de893dd5a061b1", - "bytes": 368486 + "sha256": "05ec525a60a6bad90b5f4161473a2aa015107c724fdfe0328f2166e3e73453a0", + "bytes": 366781 }, { "path": "docs/next-host-stages.md", @@ -17877,8 +17718,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "82dd8fabc8348c4297395f54f8af7b60d4fe8f75c00bcf4b50dd6af6c91376dc", - "bytes": 594844 + "sha256": "172d1d75458d9af2c24f1a1f63615fbaa34dc6abaf9428c58d6cacee3ec58b95", + "bytes": 592422 }, { "path": "docs/token-efficiency-stack.md", @@ -17897,7 +17738,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "c0dbda10161afabaa3f35ff3b98593dcb07c44e90109dc476d8c3616b3f35f35", + "sha256": "e54b87c1e0ad36ed6f0533e70e80d05935c42fcd72058d1b1ed6174a4e9ecb6a", "bytes": 98350 }, { @@ -19545,41 +19386,6 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", - "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", - "bytes": 108109 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", - "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", - "bytes": 13041 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", - "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", - "bytes": 28233 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", - "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", - "bytes": 18135 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", - "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", - "bytes": 74214 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", - "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", - "bytes": 121015 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", - "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", - "bytes": 26125 - }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -39212,8 +39018,8 @@ }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/definitive-manifest.json", - "sha256": "2c99f8e90c434abd824238dd301ca53bccf15aa0403d10827283996f193dc2f0", - "bytes": 229459 + "sha256": "8694fff119eded04b6009c75a5d328e82b4142b0a6ec6130398748307fc556d5", + "bytes": 229325 }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/foundation-definitive.compact.json", @@ -39962,8 +39768,8 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "154b0cd9c3bb688051f1743d649637d13a07f48feb2a162bce162539bd32ce7d", - "bytes": 34823 + "sha256": "8a6efae7585476f1b8f32e490b22066910316cd56a9c2667d5670350c34ebf6f", + "bytes": 26931 }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/slot-state-and-core-recipes.json", @@ -39972,13 +39778,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md", - "sha256": "ec3b531938276ad5323bf882d597fc1e55d7ec4a960c5985cfee66bbeeeace42", - "bytes": 81255 + "sha256": "913041489fd8145fcb8b15047107c80f0f4395e711a3042db2adf5bf72125196", + "bytes": 79782 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md", - "sha256": "52c16852b31a747a9435226a53da23d2473e66cf6e353cf381832fb8a11a5262", - "bytes": 173464 + "sha256": "24d3893580420960e71dfe9c91bdf8ba547cb0db4d0bfbd6a047ad1fb8305f83", + "bytes": 171237 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/VALIDATION.md", @@ -39987,8 +39793,8 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/accept.sh", - "sha256": "5e35b0c4fb78368a8a2488cb8b2b20702c67bec8e4a7e3e13f88947af5936db2", - "bytes": 152491 + "sha256": "808fd9eef9b48db7a930573f28e660f1b5f9dfc569642ee31fac17a8fb043ba7", + "bytes": 152419 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/check_plan.py", @@ -40292,13 +40098,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json", - "sha256": "c83ee09d0f60ed9baafaf44e8e0d3e9109602f441331287d73254fb1dc8e7faa", - "bytes": 389456 + "sha256": "c4546b76fb2d7eb9dddd44b416716307d313781235c09b7945d844c5df686c0d", + "bytes": 388443 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install.sh", - "sha256": "8dc58271f17fe79535f4ce5ea2dcf79bc617a439da6eb0582aca0fd0c90c4caf", - "bytes": 120084 + "sha256": "d3448844538e508e7f83e6b545c844017e0170a057787dc051c4051133538da8", + "bytes": 119797 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/mise.toml", @@ -40322,7 +40128,7 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/owners.json", - "sha256": "3ce5fb8d821a3940ccbd05a06fdf11947ade49f0c7fad378d5c3048bc27b0982", + "sha256": "5831ddfe557023c647397c84474cb7f5277a46646bd74eb1bb62fdb725f927fa", "bytes": 35188 }, { @@ -40362,8 +40168,8 @@ }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/consensus.json", - "sha256": "21b833ade87f27616b037c9619a348223391175bd6047a2be237556bf4b7fc1e", - "bytes": 142310 + "sha256": "a34fb8c01429177cd2787a07a1edf0a0668d31898ff35fd798056964d5dab82e", + "bytes": 142174 }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/copy-notes.json", @@ -52585,11 +52391,6 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, - { - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", - "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", - "bytes": 10611 - }, { "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json", "sha256": "b0c9e1d7c58e339dc2906e6a977ec04e6c1a808e826f9422407449ab34dd4f09", @@ -52845,11 +52646,6 @@ "sha256": "99580ecf2786f53585823b7695546f67d690fa5c2a6e30e4732854fe3f107787", "bytes": 27783 }, - { - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", - "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", - "bytes": 8187 - }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -52880,21 +52676,11 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, - { - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", - "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", - "bytes": 10165 - }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, - { - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", - "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", - "bytes": 10463 - }, { "path": "evidence/receipts/mcporter-0142-qualification-20261004.json", "sha256": "9399c393875decb817d49a1ed59e1629ff445070453c2a2ba819e98d17a24cd1", @@ -53210,11 +52996,6 @@ "sha256": "9ad1db0b9e841cd780d04e544f6e75dde57fd88ebc6fc4f5b0bafd84287f20da", "bytes": 149558 }, - { - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", - "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", - "bytes": 7517 - }, { "path": "evidence/receipts/osv-captured-lumibot-lockchecks-20261005.json", "sha256": "f211de55c2cbbf1f712c35f51bbe846f8a08341d24a240b51e654a6df6fd2b6c", @@ -53255,21 +53036,11 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, - { - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", - "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", - "bytes": 6732 - }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, - { - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", - "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", - "bytes": 7731 - }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -53360,11 +53131,6 @@ "sha256": "88d94dea0829c87eecd2b6f9cc2a03c010888de130fe430abce65d5ebd39e788", "bytes": 135042 }, - { - "path": "evidence/receipts/syft-1540-qualification-20261003.json", - "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", - "bytes": 7946 - }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -53455,11 +53221,6 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, - { - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", - "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", - "bytes": 6655 - }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -54002,18 +53763,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", + "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "cbc65770d505fcc1253aa270db6d9930d884c9b22abeb34de450405b670c21a3", - "bytes": 106396 + "sha256": "3ca8f36178c4e61c9f8241fd6eb045172a9e66c38da5f4943b4532fc42f94a72", + "bytes": 103027 }, { "path": "observability/README.md", - "sha256": "adbefdbdb1f427f172c8d4b4899aaf188bf5c50e8861d117c74705d07738a38f", - "bytes": 16714 + "sha256": "7c7795560a7ef6541c91dfb8b0bf4e693f5dcdf9cfc75f262d8e4832057177e3", + "bytes": 15625 }, { "path": "observability/backends/README.md", @@ -54112,8 +53873,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "b6e15fabde242bf7e16c9a67e12e78dc5463bbe978aed5fb6ac8eec8c5df22bf", - "bytes": 46135 + "sha256": "df33394028df2a687f7e39beefe0aa02978a0d6a0b97fd9d8a14f12e6075d3d6", + "bytes": 44636 }, { "path": "observability/collector/claude-settings.json.example", @@ -54292,8 +54053,8 @@ }, { "path": "recipes/README.md", - "sha256": "cf1b7a7276d3836fa09d9ea49e7b626d1db4efb578da286b6cd8cb6b3d8888e9", - "bytes": 132632 + "sha256": "ad750498ace3022cdaab34bc6cafb42300379d9a9e0f9e76f00414916c9d8a96", + "bytes": 128978 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -54317,8 +54078,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", - "bytes": 6586 + "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", + "bytes": 5706 }, { "path": "recipes/saturation-sweep.md", @@ -54422,7 +54183,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "95d45da579b1035c4cfa54f330f1ab179b949bbdb49555dd82c5163d2367300a", + "sha256": "4c25e7d13eb9f1ee11418427b6bf9c65800ac55f5b6e6fc7e9f70e21efbc068d", "bytes": 117733 }, { @@ -54802,8 +54563,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", - "bytes": 52214 + "sha256": "6621649f533fb9b1d62e902d3953447bd43ec6bb26ee3e1f35e693023200fb06", + "bytes": 52213 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -54865,11 +54626,6 @@ "sha256": "55e47ac074cef878414ca7ec2e95d69888f245c7f334c3982dffac30dfa2b475", "bytes": 12924 }, - { - "path": "tests/test_blind_checkout.py", - "sha256": "d27efdf89e9ff89b0bd50c03a59e4efad5529e617d77ead110621616c20800f8", - "bytes": 67881 - }, { "path": "tests/test_blind_layer_decisions.py", "sha256": "327f104fc335a2b25f2a910e8cae44661fe9439764f4ab778412dbf3beeaea99", @@ -55067,8 +54823,8 @@ }, { "path": "tests/test_ecosystem_manifest.py", - "sha256": "03900b5be52d6e13a4a15ae46347eddf5eb09d3324ff973a967455fe40b18202", - "bytes": 142162 + "sha256": "d1990f63256a86d69eaa154217aba92548905ff0bafc61e574465425e9ba62bb", + "bytes": 137485 }, { "path": "tests/test_edgartools_pin_move.py", @@ -55422,18 +55178,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", - "bytes": 34441 + "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", + "bytes": 34089 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "ed7e6db7559dfb09c79be5d5a6150ec57710278b096293e73373b5681a2d5724", - "bytes": 25971 + "sha256": "01643e542017a248c166302b90f7218e42c83eceb3e4084b1a99a4bb73617a89", + "bytes": 25617 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "96b901ada162f4a9d5c7445a4f5272ca86011d5e9227211405051ad12fe79665", - "bytes": 38105 + "sha256": "2f58b64cbd4f1af2b23ed869147278e2f84ad3357fef11a13c6496154fb1f15b", + "bytes": 37789 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -55542,8 +55298,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "9eae1b97d637079056994268e754f878bbafd4702fe8182cfef21f2f7b9bfcec", - "bytes": 47956 + "sha256": "e8a7d735d73063ef82c4cff28bfa09a737d75a4fb69d84b49aec335ae2ba62b4", + "bytes": 45406 }, { "path": "tests/test_research_efficiency.py", @@ -55592,8 +55348,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", - "bytes": 9774 + "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", + "bytes": 9712 }, { "path": "tests/test_secret_path_guard.py", @@ -56065,11 +55821,6 @@ "sha256": "715c98a3ea23e71768326b19250cac5ce3e3bc1c568f540771ba64e45976a4ee", "bytes": 27482 }, - { - "path": "tools/sota-convergence/export_isolation_check.py", - "sha256": "7c0218c6545ea8d0274c71df8d4789a9f3e983dab45015905ad362dc6f0d3742", - "bytes": 34727 - }, { "path": "tools/sota-convergence/extract_layers.py", "sha256": "4be73f7d3b09fa9ea88ecb238d998e43b648c7c16bb56b8853e8672ca883bb2a", @@ -56387,7 +56138,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "f3598f338d96d838ec7307e0c2d436d354682d3c1994dbfb49e82c760c551ebc", + "sha256": "20c8f4f0b757860b0d9960809dcee36e0c4425489550df31b7c0a940798615b2", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 610b0dfb0..64ba5d796 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -603,27 +603,26 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.9.0", - "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.8.0", + "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.9.0 --help" + "npx @modelcontextprotocol/inspector@2.8.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926", - "mcp-inspector-290-qualification-20261003" + "mcp-inspector-280-qualification-20260926" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", + "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -655,7 +654,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.15", + "version": "0.2.7", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -670,20 +669,19 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "openresearch-0215-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" ], - "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", - "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." + "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", + "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -695,15 +693,13 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921", - "playwright-cli-0122-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli", - "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" + "https://github.com/microsoft/playwright-cli" ], "source_pin": null, - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", + "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1068,7 +1064,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.80.0", + "version": "0.79.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1083,21 +1079,20 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "worktrunk-0800-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" ], - "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", + "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", + "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.162.0", + "version": "0.161.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1117,15 +1112,13 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "otelcol-contrib-0162-qualification-20261003" + "claude-repository-evidence-20260921" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" + "https://github.com/open-telemetry/opentelemetry-collector-contrib" ], - "freshness": "Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The recorded scratch version and validate commands exited 0; no host service was switched. Prior 0.161.0 receipts retain their original scope. The dated upstream metadata is in catalogs/landscape/upstream-snapshot.json." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "prometheus", @@ -1233,7 +1226,7 @@ "upstream_sources": [ "https://github.com/grafana/grafana" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." }, { "id": "alertmanager", @@ -1408,10 +1401,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.54.0", + "version": "1.52.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", + "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1420,14 +1413,13 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921", - "syft-1540-qualification-20261003" + "claude-repository-evidence-20260921" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.54.0" + "https://github.com/anchore/syft/releases/tag/v1.52.0" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." + "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." }, { "id": "alpaca-py", @@ -1694,7 +1686,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.327", + "version": "1.108.319", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1707,7 +1699,7 @@ } } ], - "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", + "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1720,14 +1712,13 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921", - "jcodemunch-1108327-qualification-20261003" + "claude-repository-evidence-20260921" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", - "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", + "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" ], - "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", + "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 06194d0742f54dc07b5cc7796e877c66acaa540f Mon Sep 17 00:00:00 2001 From: Scout Date: Tue, 6 Oct 2026 11:10:46 -0400 Subject: [PATCH 46/50] Reapply this branch's manifests/evidence.json manifests/stack.json edits on the merge base (hot-file protocol: every hot-file edit in the last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 437 +++++++++++++++++++++++++++++++--------- manifests/stack.json | 81 ++++---- 2 files changed, 388 insertions(+), 130 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 5cdc5ab71..c0885c547 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4477,6 +4477,155 @@ "Serena and MinerU are excluded from old-bar READY while condition-absent controls remain open. Difftastic, structural-search, inspect-ai, harbor and codex-sdk: fresh-session use not evidenced; installation-time checks retain original classes." ], "path": "evidence/receipts/ns2604-roadmap-evidence-20261005.json" + }, + { + "id": "claude-hud-0100-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-hud" + ], + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "limitations": [ + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + }, + { + "id": "jcodemunch-1108327-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "jcodemunch-mcp" + ], + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", + "limitations": [ + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" + }, + { + "id": "mcp-inspector-290-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "mcp-inspector" + ], + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "limitations": [ + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + }, + { + "id": "mcporter-0142-qualification-20261003", + "kind": "compatibility_attempt", + "component_ids": [ + "mcporter" + ], + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", + "limitations": [ + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + }, + { + "id": "openresearch-0215-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "openresearch" + ], + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "limitations": [ + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + }, + { + "id": "otelcol-contrib-0162-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "opentelemetry-collector-contrib" + ], + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "limitations": [ + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + }, + { + "id": "playwright-cli-0122-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "playwright-cli" + ], + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "limitations": [ + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + }, + { + "id": "syft-1540-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "syft" + ], + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "limitations": [ + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/syft-1540-qualification-20261003.json" + }, + { + "id": "worktrunk-0800-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "worktrunk" + ], + "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", + "limitations": [ + "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", + "The host installation and rollback launcher were not switched.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" } ], "files": [ @@ -4527,8 +4676,8 @@ }, { "path": ".github/osv-scanner-lockfiles.json", - "sha256": "6ac40e443963ca0bc93d75e440c697268682bd11810ea6203794d063a4d6be76", - "bytes": 15075 + "sha256": "3c7bed9c3899e22a022acf4172719dd510124d45664f24cf656def14e6ad999b", + "bytes": 15176 }, { "path": ".github/osv-scanner.toml", @@ -4550,6 +4699,11 @@ "sha256": "0b37433fb0fb165c893737e8e887581a07a6469683fbdf67ada1a08288758605", "bytes": 467 }, + { + "path": ".github/requirements-validation.txt", + "sha256": "458d8cb1fef26d0d0a9a6a76707c0bad04fe84558550db750d50af206fecba81", + "bytes": 719 + }, { "path": ".github/tag-ruleset.json", "sha256": "b11fda27d1e2011ff3c001ac830fa3b2c0c3af6090e929ee2d20e4d0507dda5e", @@ -4567,8 +4721,8 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "b916c15a85c4f6a84fd6fb460001898752445242f35aebc29862868c35907a4b", - "bytes": 26294 + "sha256": "673dbb816767e67d002b6dcdf866053c8408a7a47203683650af8d9f3be4b23a", + "bytes": 26872 }, { "path": ".github/workflows/dependency-review.yml", @@ -4612,8 +4766,8 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "5b52e3f50cf6ecb26cfe36f8ca54c577b5ff07ec4027a20102bc731c066cf4e5", - "bytes": 20110 + "sha256": "6f48ef65db2a270121e607aea1f08f2cad7c9f883009babd40af42b21c8f3167", + "bytes": 20399 }, { "path": ".github/workflows/receipt-staleness.yml", @@ -4647,8 +4801,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "92ab3fa8354aa9fbaad781597354ef5a942c709b5950109bb13c8b77780a40f8", - "bytes": 7576 + "sha256": "8c70b40953230c79e3d3df75fc492d689bf8884cb53acd7b6b6eadb63f2558c9", + "bytes": 7589 }, { "path": ".github/workflows/token-report.yml", @@ -4797,8 +4951,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "9ea67939f6e5443576cdc2aad3ff997cc554aca3292e877afbe0c000d7d9e6ae", - "bytes": 65967 + "sha256": "1a5533bfcb028ef8c952fc1ebd08a2ca36dd22f7c3538bae7717e78e44501761", + "bytes": 68841 }, { "path": "adoption/credential-inventory.json", @@ -4907,13 +5061,13 @@ }, { "path": "adoption/manifest.json", - "sha256": "f3e325c8b5dcd1852a613136bb1152bf1a1f39c0dd6861f3c4752ac0d5e32c0a", - "bytes": 20102 + "sha256": "16d9708777667b29a4c25b363fca5644b94ab7932d0735c7323ac48188f7eaec", + "bytes": 20038 }, { "path": "adoption/new-wsl-profile.json", - "sha256": "7504e55c2e66730d5e0b0ead2be5abef39f3989afc69e1c3640e6709bdb3db04", - "bytes": 257549 + "sha256": "b837312fcf1a81a9e9d47b71496bf08550d848cfbe6be4353f01bf75659b28f3", + "bytes": 260542 }, { "path": "adoption/new-wsl-profile.md", @@ -4982,8 +5136,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "804eba0e086670c75e6b2f3725734477914318987c99fb90195680188be337c9", - "bytes": 37335 + "sha256": "7e210c9c56953ff5091c35909a0e3b5c94a4a519932eeda82878afb22b3c2961", + "bytes": 37151 }, { "path": "adoption/pins-macos-arm64.json", @@ -4992,18 +5146,18 @@ }, { "path": "adoption/platforms/linux-wsl2-new-distro.md", - "sha256": "f640139255f1e093b018f47c1346c9f03b36d3fb941e08f4e910c928a08b3bec", - "bytes": 93206 + "sha256": "dc747930541b6efeddb799967e1cf82a258b055dd268568a2897ae015d38048b", + "bytes": 93494 }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "317a997ce3e794298d985f035af05285e27bc3690fd9e09be068991a82fe2056", - "bytes": 29535 + "sha256": "1f3b29db1d2585b548a8595dd25b7ab3c7a2ff33af7e9f9a2ba750c3b0452174", + "bytes": 30164 }, { "path": "adoption/platforms/macos-arm64.md", - "sha256": "266da883e614f767929981e8e630c34cf3958020fb5a14f162d9f385bbb9427e", - "bytes": 65623 + "sha256": "d7f026a3480e71374f25c33a92d3b0c4b30c1717846f74d0c3038872ad6d5870", + "bytes": 65911 }, { "path": "adoption/pre-login-observation.json", @@ -5057,8 +5211,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "304dc11b5fca6e4001382a8cb884712e10d28bdfa8551fcac6dbfc2b4d36cf70", - "bytes": 12744 + "sha256": "a0e293941482230a1ccaaf8a3206a5c7e72b73690d47e3a211883e9dd6279abc", + "bytes": 12948 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -10758,8 +10912,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "b2e82b633fd1594a15d1726afe8d4b1d401440b265cfaf12d07c6d6752a71641", - "bytes": 486278 + "sha256": "286c6898529e89ae3b1582f6db149f0dabf968adc917faf653057dc9d22dab21", + "bytes": 494497 }, { "path": "blueprints/trials-20260926/README.md", @@ -16223,7 +16377,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "4ec258549f82eeb8ea709f18b8a0bd482cdcebfc690bfab87c58449b16947472", + "sha256": "6c9fd66ad582103f454dac9d53925bdd3ea1a412073e83efd4579298b05ee46b", "bytes": 36223 }, { @@ -16248,8 +16402,8 @@ }, { "path": "catalogs/foundation/new-wsl-architecture-20261001.json", - "sha256": "3a8081049976785e320cfd99bc93bd3dcefa0a8a351fcc4f3cab1d8022a6b1cd", - "bytes": 325006 + "sha256": "f9ba8f70ffd7350178ef4cdb5226a5cd7040a1f43f0f416855aa156dda6f8b23", + "bytes": 325528 }, { "path": "catalogs/foundation/new-wsl-layer-crosswalk-20261001.json", @@ -16353,8 +16507,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "d1f0f17e142e8bfca223006f72cb16fce65456609248a32b5cf7958ba9f54dd2", - "bytes": 287704 + "sha256": "4b45aa982068205635f95776bbfc7a4c73d283ea48586e480f3870e613450ecf", + "bytes": 287577 }, { "path": "catalogs/landscape/research-state.json", @@ -16363,8 +16517,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "85a1715168203fef8f201672d3f284ff3021797c0576a974ef05ed4b6af7446c", - "bytes": 258289 + "sha256": "e5987d047e09f2f16ed9592cba1f7d2a7a350a6428f2904b9e481298a5f9ab5e", + "bytes": 286532 }, { "path": "catalogs/landscape/us-equities.json", @@ -16823,8 +16977,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "6e7ebbe64011f460b59ab310a328211737deec2f83543fb99c41d761958bff06", - "bytes": 56411 + "sha256": "4334eda38f9961f971e4c5394cd6fef418cef236d3ad73c34a0e080b5b71be21", + "bytes": 56958 }, { "path": "docs/comparison-progress-20260922.md", @@ -17088,7 +17242,7 @@ }, { "path": "docs/decisions/2026-10-01-new-wsl-definitive-defaults.md", - "sha256": "711038cb81075841beed0b6db4310fdab88f425c064342b7d57f9fe33603d6b7", + "sha256": "1d3e6dd6d86df768a2683cd9f64bd478111467efdf6f35b3c71526af93b9f1d6", "bytes": 80195 }, { @@ -17126,6 +17280,11 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, + { + "path": "docs/decisions/2026-10-03-currency-wave-w1.md", + "sha256": "c05f4b990e731342483a51883be8e5563a2d7fa07d936b18fff6cdf5d9e1bce5", + "bytes": 50522 + }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", "sha256": "a4c5ddf98c9fa778d07b60507a183818b1d243dda789bc06ee8bcd612fcbcedb", @@ -17438,8 +17597,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "9d49b5052129b31a081f356c0bc750480ac4e5cc98d7b9606f6d4df7b9471357", - "bytes": 41689 + "sha256": "e1003554881d6ddfa464560e2596b456897408ee40a3cd012e72bd75e4a5e0ed", + "bytes": 42784 }, { "path": "docs/full-stack-convergence.md", @@ -17478,7 +17637,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "6e17a86f92414d877858c9cbd88a42703aaaefb36f04bad6a78219f869bae18a", + "sha256": "d5f2c827e9f9da7ff769d0a833c9a2b8e9a3433cab9b8979e095a74f07a7ad7e", "bytes": 99371 }, { @@ -17488,8 +17647,8 @@ }, { "path": "docs/harness-defaults.md", - "sha256": "26ec355b96aa6bc91fba8fd4f1ff33d84b13ce7865c4eb3108d98ead4dfa534c", - "bytes": 225647 + "sha256": "2c8469eade8c6a3237d96c42176b93cb9f49741fc4c3affdd352e1f81e3557bb", + "bytes": 227029 }, { "path": "docs/harness-rules-convergence-20260922.md", @@ -17608,8 +17767,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "feacb3a295970f1269ea2004127e5dd11a4f43c9e2fb29166e501346205091af", - "bytes": 18483 + "sha256": "c1b9e9cd27feb0ed823a2c0e942a741671e5ad2b84753e5196e09442b0fb1e3c", + "bytes": 18484 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -17618,13 +17777,13 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "bb5a4dc62aabc938b56b038ddb4ae3df036395ccd44cc72720436ad3aa19b33d", - "bytes": 689754 + "sha256": "e5a825c8542eafe57744301ed16f8bd0cae373ddc0544f39e5be194b5be117bd", + "bytes": 692111 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "05ec525a60a6bad90b5f4161473a2aa015107c724fdfe0328f2166e3e73453a0", - "bytes": 366781 + "sha256": "f2b224c2eb081be6ca73834ef0a589a69a9c7029f2c2233678de893dd5a061b1", + "bytes": 368486 }, { "path": "docs/next-host-stages.md", @@ -17718,8 +17877,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "172d1d75458d9af2c24f1a1f63615fbaa34dc6abaf9428c58d6cacee3ec58b95", - "bytes": 592422 + "sha256": "82dd8fabc8348c4297395f54f8af7b60d4fe8f75c00bcf4b50dd6af6c91376dc", + "bytes": 594844 }, { "path": "docs/token-efficiency-stack.md", @@ -17738,7 +17897,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "e54b87c1e0ad36ed6f0533e70e80d05935c42fcd72058d1b1ed6174a4e9ecb6a", + "sha256": "c0dbda10161afabaa3f35ff3b98593dcb07c44e90109dc476d8c3616b3f35f35", "bytes": 98350 }, { @@ -19386,6 +19545,41 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", + "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", + "bytes": 108109 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", + "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", + "bytes": 13041 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", + "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", + "bytes": 28233 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", + "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", + "bytes": 18135 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", + "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", + "bytes": 74214 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", + "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", + "bytes": 121015 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", + "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", + "bytes": 26125 + }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -39018,8 +39212,8 @@ }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/definitive-manifest.json", - "sha256": "8694fff119eded04b6009c75a5d328e82b4142b0a6ec6130398748307fc556d5", - "bytes": 229325 + "sha256": "2c99f8e90c434abd824238dd301ca53bccf15aa0403d10827283996f193dc2f0", + "bytes": 229459 }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/foundation-definitive.compact.json", @@ -39768,8 +39962,8 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "8a6efae7585476f1b8f32e490b22066910316cd56a9c2667d5670350c34ebf6f", - "bytes": 26931 + "sha256": "154b0cd9c3bb688051f1743d649637d13a07f48feb2a162bce162539bd32ce7d", + "bytes": 34823 }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/slot-state-and-core-recipes.json", @@ -39778,13 +39972,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md", - "sha256": "913041489fd8145fcb8b15047107c80f0f4395e711a3042db2adf5bf72125196", - "bytes": 79782 + "sha256": "ec3b531938276ad5323bf882d597fc1e55d7ec4a960c5985cfee66bbeeeace42", + "bytes": 81255 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md", - "sha256": "24d3893580420960e71dfe9c91bdf8ba547cb0db4d0bfbd6a047ad1fb8305f83", - "bytes": 171237 + "sha256": "52c16852b31a747a9435226a53da23d2473e66cf6e353cf381832fb8a11a5262", + "bytes": 173464 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/VALIDATION.md", @@ -39793,8 +39987,8 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/accept.sh", - "sha256": "808fd9eef9b48db7a930573f28e660f1b5f9dfc569642ee31fac17a8fb043ba7", - "bytes": 152419 + "sha256": "5e35b0c4fb78368a8a2488cb8b2b20702c67bec8e4a7e3e13f88947af5936db2", + "bytes": 152491 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/check_plan.py", @@ -40098,13 +40292,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json", - "sha256": "c4546b76fb2d7eb9dddd44b416716307d313781235c09b7945d844c5df686c0d", - "bytes": 388443 + "sha256": "c83ee09d0f60ed9baafaf44e8e0d3e9109602f441331287d73254fb1dc8e7faa", + "bytes": 389456 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install.sh", - "sha256": "d3448844538e508e7f83e6b545c844017e0170a057787dc051c4051133538da8", - "bytes": 119797 + "sha256": "8dc58271f17fe79535f4ce5ea2dcf79bc617a439da6eb0582aca0fd0c90c4caf", + "bytes": 120084 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/mise.toml", @@ -40128,7 +40322,7 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/owners.json", - "sha256": "5831ddfe557023c647397c84474cb7f5277a46646bd74eb1bb62fdb725f927fa", + "sha256": "3ce5fb8d821a3940ccbd05a06fdf11947ade49f0c7fad378d5c3048bc27b0982", "bytes": 35188 }, { @@ -40168,8 +40362,8 @@ }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/consensus.json", - "sha256": "a34fb8c01429177cd2787a07a1edf0a0668d31898ff35fd798056964d5dab82e", - "bytes": 142174 + "sha256": "21b833ade87f27616b037c9619a348223391175bd6047a2be237556bf4b7fc1e", + "bytes": 142310 }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/copy-notes.json", @@ -52391,6 +52585,11 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, + { + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", + "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", + "bytes": 10611 + }, { "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json", "sha256": "b0c9e1d7c58e339dc2906e6a977ec04e6c1a808e826f9422407449ab34dd4f09", @@ -52646,6 +52845,11 @@ "sha256": "99580ecf2786f53585823b7695546f67d690fa5c2a6e30e4732854fe3f107787", "bytes": 27783 }, + { + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", + "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", + "bytes": 8187 + }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -52676,11 +52880,21 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, + { + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", + "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", + "bytes": 10165 + }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, + { + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", + "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", + "bytes": 10463 + }, { "path": "evidence/receipts/mcporter-0142-qualification-20261004.json", "sha256": "9399c393875decb817d49a1ed59e1629ff445070453c2a2ba819e98d17a24cd1", @@ -52996,6 +53210,11 @@ "sha256": "9ad1db0b9e841cd780d04e544f6e75dde57fd88ebc6fc4f5b0bafd84287f20da", "bytes": 149558 }, + { + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", + "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", + "bytes": 7517 + }, { "path": "evidence/receipts/osv-captured-lumibot-lockchecks-20261005.json", "sha256": "f211de55c2cbbf1f712c35f51bbe846f8a08341d24a240b51e654a6df6fd2b6c", @@ -53036,11 +53255,21 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, + { + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", + "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", + "bytes": 6732 + }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, + { + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", + "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", + "bytes": 7731 + }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -53131,6 +53360,11 @@ "sha256": "88d94dea0829c87eecd2b6f9cc2a03c010888de130fe430abce65d5ebd39e788", "bytes": 135042 }, + { + "path": "evidence/receipts/syft-1540-qualification-20261003.json", + "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", + "bytes": 7946 + }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -53221,6 +53455,11 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, + { + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", + "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", + "bytes": 6655 + }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -53763,18 +54002,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", + "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "3ca8f36178c4e61c9f8241fd6eb045172a9e66c38da5f4943b4532fc42f94a72", - "bytes": 103027 + "sha256": "cbc65770d505fcc1253aa270db6d9930d884c9b22abeb34de450405b670c21a3", + "bytes": 106396 }, { "path": "observability/README.md", - "sha256": "7c7795560a7ef6541c91dfb8b0bf4e693f5dcdf9cfc75f262d8e4832057177e3", - "bytes": 15625 + "sha256": "adbefdbdb1f427f172c8d4b4899aaf188bf5c50e8861d117c74705d07738a38f", + "bytes": 16714 }, { "path": "observability/backends/README.md", @@ -53873,8 +54112,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "df33394028df2a687f7e39beefe0aa02978a0d6a0b97fd9d8a14f12e6075d3d6", - "bytes": 44636 + "sha256": "b6e15fabde242bf7e16c9a67e12e78dc5463bbe978aed5fb6ac8eec8c5df22bf", + "bytes": 46135 }, { "path": "observability/collector/claude-settings.json.example", @@ -54053,8 +54292,8 @@ }, { "path": "recipes/README.md", - "sha256": "ad750498ace3022cdaab34bc6cafb42300379d9a9e0f9e76f00414916c9d8a96", - "bytes": 128978 + "sha256": "cf1b7a7276d3836fa09d9ea49e7b626d1db4efb578da286b6cd8cb6b3d8888e9", + "bytes": 132632 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -54078,8 +54317,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", - "bytes": 5706 + "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", + "bytes": 6586 }, { "path": "recipes/saturation-sweep.md", @@ -54183,7 +54422,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "4c25e7d13eb9f1ee11418427b6bf9c65800ac55f5b6e6fc7e9f70e21efbc068d", + "sha256": "95d45da579b1035c4cfa54f330f1ab179b949bbdb49555dd82c5163d2367300a", "bytes": 117733 }, { @@ -54563,8 +54802,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "6621649f533fb9b1d62e902d3953447bd43ec6bb26ee3e1f35e693023200fb06", - "bytes": 52213 + "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", + "bytes": 52214 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -54626,6 +54865,11 @@ "sha256": "55e47ac074cef878414ca7ec2e95d69888f245c7f334c3982dffac30dfa2b475", "bytes": 12924 }, + { + "path": "tests/test_blind_checkout.py", + "sha256": "d27efdf89e9ff89b0bd50c03a59e4efad5529e617d77ead110621616c20800f8", + "bytes": 67881 + }, { "path": "tests/test_blind_layer_decisions.py", "sha256": "327f104fc335a2b25f2a910e8cae44661fe9439764f4ab778412dbf3beeaea99", @@ -54823,8 +55067,8 @@ }, { "path": "tests/test_ecosystem_manifest.py", - "sha256": "d1990f63256a86d69eaa154217aba92548905ff0bafc61e574465425e9ba62bb", - "bytes": 137485 + "sha256": "03900b5be52d6e13a4a15ae46347eddf5eb09d3324ff973a967455fe40b18202", + "bytes": 142162 }, { "path": "tests/test_edgartools_pin_move.py", @@ -55178,18 +55422,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", - "bytes": 34089 + "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", + "bytes": 34441 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "01643e542017a248c166302b90f7218e42c83eceb3e4084b1a99a4bb73617a89", - "bytes": 25617 + "sha256": "ed7e6db7559dfb09c79be5d5a6150ec57710278b096293e73373b5681a2d5724", + "bytes": 25971 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "2f58b64cbd4f1af2b23ed869147278e2f84ad3357fef11a13c6496154fb1f15b", - "bytes": 37789 + "sha256": "96b901ada162f4a9d5c7445a4f5272ca86011d5e9227211405051ad12fe79665", + "bytes": 38105 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -55298,8 +55542,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "e8a7d735d73063ef82c4cff28bfa09a737d75a4fb69d84b49aec335ae2ba62b4", - "bytes": 45406 + "sha256": "9eae1b97d637079056994268e754f878bbafd4702fe8182cfef21f2f7b9bfcec", + "bytes": 47956 }, { "path": "tests/test_research_efficiency.py", @@ -55348,8 +55592,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", - "bytes": 9712 + "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", + "bytes": 9774 }, { "path": "tests/test_secret_path_guard.py", @@ -55821,6 +56065,11 @@ "sha256": "715c98a3ea23e71768326b19250cac5ce3e3bc1c568f540771ba64e45976a4ee", "bytes": 27482 }, + { + "path": "tools/sota-convergence/export_isolation_check.py", + "sha256": "7c0218c6545ea8d0274c71df8d4789a9f3e983dab45015905ad362dc6f0d3742", + "bytes": 34727 + }, { "path": "tools/sota-convergence/extract_layers.py", "sha256": "4be73f7d3b09fa9ea88ecb238d998e43b648c7c16bb56b8853e8672ca883bb2a", @@ -56138,7 +56387,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "20c8f4f0b757860b0d9960809dcee36e0c4425489550df31b7c0a940798615b2", + "sha256": "f3598f338d96d838ec7307e0c2d436d354682d3c1994dbfb49e82c760c551ebc", "bytes": 25833 }, { diff --git a/manifests/stack.json b/manifests/stack.json index 64ba5d796..610b0dfb0 100644 --- a/manifests/stack.json +++ b/manifests/stack.json @@ -603,26 +603,27 @@ { "id": "mcp-inspector", "repository": "https://github.com/modelcontextprotocol/inspector", - "version": "2.8.0", - "license": "Apache-2.0 AND MIT (2.8.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", + "version": "2.9.0", + "license": "Apache-2.0 AND MIT (2.9.0 LICENSE: MIT-to-Apache-2.0 relicensing transition; documentation CC-BY-4.0)", "profile": "supporting", "role": "Upstream direct stdio tool inspection/calls", "commands": [ - "npx @modelcontextprotocol/inspector@2.8.0 --help" + "npx @modelcontextprotocol/inspector@2.9.0 --help" ], "evidence_ids": [ "component-history", "token-practice-coverage-20260920", "token-native-retained-functional-20260920", "claude-repository-evidence-20260921", - "mcp-inspector-280-qualification-20260926" + "mcp-inspector-280-qualification-20260926", + "mcp-inspector-290-qualification-20261003" ], "upstream_sources": [ "https://github.com/modelcontextprotocol/inspector", - "https://github.com/modelcontextprotocol/inspector/releases/tag/2.8.0" + "https://github.com/modelcontextprotocol/inspector/releases/tag/2.9.0" ], "source_pin": null, - "freshness": "2.8.0 serves bin/mcp-inspector on the NativeStack WSL2 host since 2026-09-26, after a matched comparison against 2.7.0: 15 of 15 gated steps on both, including 10 CLI calls over stdio and streamable HTTP to a scratch QMD server, with identical outputs once per-run paths and markers are normalized. 2.8.0 closes the fail-open DANGEROUSLY_OMIT_AUTH parse (PR #2390): with 'false', '0' or 'yes', 2.7.0 served the web API without its token and 2.8.0 answered 401 (measured). 2.7.0 is kept for rollback. The landscape winner pin stays 2.7.0 until a new verdict wave.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 2.8.0 receipts retain their original scope.", "command_scope": "Direct upstream Inspector stdio call proved arithmetic execution; full plugin hooks and current desktop scope are separate." }, { @@ -654,7 +655,7 @@ { "id": "openresearch", "repository": "https://github.com/alphaXiv/OpenResearch", - "version": "0.2.7", + "version": "0.2.15", "license": "MIT", "profile": "supporting", "role": "Selected public literature discovery and extracted paper retrieval", @@ -669,19 +670,20 @@ "token-practice-gap-followup-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "openresearch-0215-qualification-20261003" ], "upstream_sources": [ "https://github.com/alphaXiv/OpenResearch", - "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.7" + "https://github.com/alphaXiv/OpenResearch/releases/tag/v0.2.15" ], - "source_pin": "24e404ecbe19cb9184ea8177e8e9f90d4f3205b0", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json." + "source_pin": "ee36ef0333ca3c533eace915f1bec322a1efde1c", + "freshness": "2026-10-03 W1 scratch qualification: The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel. Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.2.7 receipts retain their original scope." }, { "id": "playwright-cli", "repository": "https://github.com/microsoft/playwright-cli", - "version": "0.1.21; Playwright 1.64.0-alpha-1789764292000", + "version": "0.1.22; Playwright 1.64.0-alpha-1790635538000", "license": "Apache-2.0", "profile": "optional", "role": "Native browser CLI with bounded Linux fixture acceptance and separately scoped Windows history", @@ -693,13 +695,15 @@ "component-history", "token-practice-coverage-20260920", "token-practice-gap-followup-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "playwright-cli-0122-qualification-20261003" ], "upstream_sources": [ - "https://github.com/microsoft/playwright-cli" + "https://github.com/microsoft/playwright-cli", + "https://github.com/microsoft/playwright-cli/releases/tag/v0.1.22" ], "source_pin": null, - "freshness": "Exact 0.1.21 package integrity verified against registry and lock; alpha Playwright dependencies and existing-Chrome acceptance are recorded in the dated gap follow-up receipt.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.1.21; Playwright 1.64.0-alpha-1789764292000 receipts retain their original scope. npm sha512 matches dist.integrity and the provenance subject; SHA256 is a local rehash. The existing-Chrome fixture was not repeated and bundled Playwright remains alpha.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { @@ -1064,7 +1068,7 @@ { "id": "worktrunk", "repository": "https://github.com/max-sixty/worktrunk", - "version": "0.79.0", + "version": "0.80.0", "license": "MIT OR Apache-2.0", "profile": "optional", "role": "Native Git worktree convenience CLI", @@ -1079,20 +1083,21 @@ "velanext-native-quality-tools-20260920", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "worktrunk-0800-qualification-20261003" ], "upstream_sources": [ "https://github.com/max-sixty/worktrunk", - "https://github.com/max-sixty/worktrunk/releases/tag/v0.79.0" + "https://github.com/max-sixty/worktrunk/releases/tag/v0.80.0" ], - "source_pin": "5ba6f148e8505c20794f2d8bc706aa4f26335c95", - "freshness": "Installed tested pin; latest release identity is separately recorded in manifests/landscape.json.", + "source_pin": "b49ca7eea9b03145791a5b94eccaf9c59412ed37", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 0.79.0 receipts retain their original scope.", "optional_reason": "Useful specialist/reference component; not a required condition for the demonstrated native core." }, { "id": "opentelemetry-collector-contrib", "repository": "https://github.com/open-telemetry/opentelemetry-collector-contrib", - "version": "0.161.0", + "version": "0.162.0", "license": "Apache-2.0", "profile": "observability", "role": "Single native core/contrib Collector process; content filtering, metric conversion, upstream exporters and SDK file receiver", @@ -1112,13 +1117,15 @@ "native-token-stack-final-20260920", "foundation-native-20260920", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "otelcol-contrib-0162-qualification-20261003" ], "source_pin": null, "upstream_sources": [ - "https://github.com/open-telemetry/opentelemetry-collector-contrib" + "https://github.com/open-telemetry/opentelemetry-collector-contrib", + "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.162.0" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "Selected 0.162.0; qualified on scratch/synthetic validation only (evidence/receipts/otelcol-contrib-0162-qualification-20261003.json:11-15); host acceptance pending. NativeStack2604 release hold: the release-tag build-and-test failed (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The recorded scratch version and validate commands exited 0; no host service was switched. Prior 0.161.0 receipts retain their original scope. The dated upstream metadata is in catalogs/landscape/upstream-snapshot.json." }, { "id": "prometheus", @@ -1226,7 +1233,7 @@ "upstream_sources": [ "https://github.com/grafana/grafana" ], - "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy." + "freshness": "Pinned official release verified on2026-09-19; not an automatic latest-update policy. Selected 13.2.3 in the WSL profile/install plan; qualified on scratch/synthetic validation only (W1b receipt:11-14, https://github.com/seathatflowsinourveins/native-agent-stack/blob/748f701e1ac871dca378f9ef41bfd81e457cb3f7/evidence/receipts/grafana-1323-qualification-20261003.json#L11-L14); host acceptance pending. NativeStack2604 release hold: open regression reports grafana/grafana#133835 and #133856 (docs/decisions/2026-10-04-2604-e2e-fix-wave.md:117). The host stack remains 13.2.2 at this head." }, { "id": "alertmanager", @@ -1401,10 +1408,10 @@ { "id": "syft", "repository": "https://github.com/anchore/syft", - "version": "1.52.0", + "version": "1.54.0", "license": "Apache-2.0", "role": "Scoped native SDK dependency inventory; no vulnerability verdict", - "source_pin": "02ba369d13b4248395b20a504eca94b0cab564d8", + "source_pin": "cc326e45a6213360266dda4b30cc68095946d676", "commands": [ "syft version -o json", "syft scan dir:/sdk --base-path /sdk --source-name equity-worker-sdk --parallelism 2 -o syft-json=/output/runtime.syft.json -o cyclonedx-json=/output/runtime.cdx.json" @@ -1413,13 +1420,14 @@ "syft-sdk-inventory-20260919", "token-practice-artifacts-20260920", "token-practice-coverage-20260920", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "syft-1540-qualification-20261003" ], "profile": "supporting", "upstream_sources": [ - "https://github.com/anchore/syft/releases/tag/v1.52.0" + "https://github.com/anchore/syft/releases/tag/v1.54.0" ], - "freshness": "Native acceptance on 2026-09-19; actual selected SDK inventory, not a whole-host or automatic-update policy." + "freshness": "2026-10-03 W1 scratch qualification: The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.52.0 receipts retain their original scope." }, { "id": "alpaca-py", @@ -1686,7 +1694,7 @@ { "id": "jcodemunch-mcp", "repository": "https://github.com/jgravelle/jcodemunch-mcp", - "version": "1.108.319", + "version": "1.108.327", "license": "Dual-Use License 1.1; upstream non-commercial/commercial terms retained", "profile": "supporting", "role": "Explicitly scoped code index and exact symbol retrieval through a six-tool MCP surface", @@ -1699,7 +1707,7 @@ } } ], - "source_pin": "8f7b34abe16fb459e0bf1c04747d584216dfe32e", + "source_pin": "6d5ae86c130f96624e2ca2d797fa3b853c210b9d", "evidence_ids": [ "native-jcodemunch-20260920", "native-token-focus-clients-20260920", @@ -1712,13 +1720,14 @@ "native-returned-results-20260921", "full-stack-convergence-20260921", "claude-upstream-checks-20260921", - "claude-repository-evidence-20260921" + "claude-repository-evidence-20260921", + "jcodemunch-1108327-qualification-20261003" ], "upstream_sources": [ - "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.319", - "https://github.com/jgravelle/jcodemunch-mcp/blob/8f7b34abe16fb459e0bf1c04747d584216dfe32e/LICENSE" + "https://github.com/jgravelle/jcodemunch-mcp/releases/tag/v1.108.327", + "https://github.com/jgravelle/jcodemunch-mcp/blob/6d5ae86c130f96624e2ca2d797fa3b853c210b9d/LICENSE" ], - "freshness": "Pinned upstream installation, direct artifact acceptance and one bounded task in each native client verified 2026-09-20; no causal provider savings claim.", + "freshness": "2026-10-03 W1 scratch qualification: The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0). Current upstream metadata is in catalogs/landscape/upstream-snapshot.json. This integration changes repository pins; it does not switch a host installation. Prior 1.108.319 receipts retain their original scope.", "command_scope": "Index only selected code; default upstream index root; sharing, AI summaries, watchers, cross-repository defaults and external context providers disabled. See native recipe and receipt for whole-file versus focused-source baselines." }, { From 78d65d7f765b015a0d84d35b7a5f7ad15d369418 Mon Sep 17 00:00:00 2001 From: Scout Date: Tue, 6 Oct 2026 16:59:39 -0400 Subject: [PATCH 47/50] Hot-file protocol: reset manifests/evidence.json to the merge base before the final hot-file commit Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 437 +++++++++------------------------------- 1 file changed, 94 insertions(+), 343 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index f8d0f707b..86267cef1 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4477,155 +4477,6 @@ "Serena and MinerU are excluded from old-bar READY while condition-absent controls remain open. Difftastic, structural-search, inspect-ai, harbor and codex-sdk: fresh-session use not evidenced; installation-time checks retain original classes." ], "path": "evidence/receipts/ns2604-roadmap-evidence-20261005.json" - }, - { - "id": "claude-hud-0100-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-hud" - ], - "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", - "limitations": [ - "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", - "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", - "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" - }, - { - "id": "jcodemunch-1108327-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "jcodemunch-mcp" - ], - "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", - "limitations": [ - "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", - "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" - }, - { - "id": "mcp-inspector-290-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "mcp-inspector" - ], - "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", - "limitations": [ - "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", - "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", - "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" - }, - { - "id": "mcporter-0142-qualification-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "mcporter" - ], - "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", - "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", - "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", - "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" - }, - { - "id": "openresearch-0215-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "openresearch" - ], - "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", - "limitations": [ - "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", - "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" - }, - { - "id": "otelcol-contrib-0162-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "opentelemetry-collector-contrib" - ], - "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", - "limitations": [ - "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", - "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" - }, - { - "id": "playwright-cli-0122-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "playwright-cli" - ], - "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", - "limitations": [ - "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", - "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", - "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" - }, - { - "id": "syft-1540-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "syft" - ], - "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", - "limitations": [ - "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", - "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", - "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/syft-1540-qualification-20261003.json" - }, - { - "id": "worktrunk-0800-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "worktrunk" - ], - "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", - "limitations": [ - "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", - "The host installation and rollback launcher were not switched.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" } ], "files": [ @@ -4676,8 +4527,8 @@ }, { "path": ".github/osv-scanner-lockfiles.json", - "sha256": "3c7bed9c3899e22a022acf4172719dd510124d45664f24cf656def14e6ad999b", - "bytes": 15176 + "sha256": "6ac40e443963ca0bc93d75e440c697268682bd11810ea6203794d063a4d6be76", + "bytes": 15075 }, { "path": ".github/osv-scanner.toml", @@ -4699,11 +4550,6 @@ "sha256": "0b37433fb0fb165c893737e8e887581a07a6469683fbdf67ada1a08288758605", "bytes": 467 }, - { - "path": ".github/requirements-validation.txt", - "sha256": "458d8cb1fef26d0d0a9a6a76707c0bad04fe84558550db750d50af206fecba81", - "bytes": 719 - }, { "path": ".github/tag-ruleset.json", "sha256": "b11fda27d1e2011ff3c001ac830fa3b2c0c3af6090e929ee2d20e4d0507dda5e", @@ -4721,8 +4567,8 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "673dbb816767e67d002b6dcdf866053c8408a7a47203683650af8d9f3be4b23a", - "bytes": 26872 + "sha256": "b916c15a85c4f6a84fd6fb460001898752445242f35aebc29862868c35907a4b", + "bytes": 26294 }, { "path": ".github/workflows/dependency-review.yml", @@ -4766,8 +4612,8 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "6f48ef65db2a270121e607aea1f08f2cad7c9f883009babd40af42b21c8f3167", - "bytes": 20399 + "sha256": "5b52e3f50cf6ecb26cfe36f8ca54c577b5ff07ec4027a20102bc731c066cf4e5", + "bytes": 20110 }, { "path": ".github/workflows/receipt-staleness.yml", @@ -4801,8 +4647,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "8c70b40953230c79e3d3df75fc492d689bf8884cb53acd7b6b6eadb63f2558c9", - "bytes": 7589 + "sha256": "92ab3fa8354aa9fbaad781597354ef5a942c709b5950109bb13c8b77780a40f8", + "bytes": 7576 }, { "path": ".github/workflows/token-report.yml", @@ -4951,8 +4797,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "1a5533bfcb028ef8c952fc1ebd08a2ca36dd22f7c3538bae7717e78e44501761", - "bytes": 68841 + "sha256": "9ea67939f6e5443576cdc2aad3ff997cc554aca3292e877afbe0c000d7d9e6ae", + "bytes": 65967 }, { "path": "adoption/credential-inventory.json", @@ -5061,13 +4907,13 @@ }, { "path": "adoption/manifest.json", - "sha256": "16d9708777667b29a4c25b363fca5644b94ab7932d0735c7323ac48188f7eaec", - "bytes": 20038 + "sha256": "f3e325c8b5dcd1852a613136bb1152bf1a1f39c0dd6861f3c4752ac0d5e32c0a", + "bytes": 20102 }, { "path": "adoption/new-wsl-profile.json", - "sha256": "b837312fcf1a81a9e9d47b71496bf08550d848cfbe6be4353f01bf75659b28f3", - "bytes": 260542 + "sha256": "7504e55c2e66730d5e0b0ead2be5abef39f3989afc69e1c3640e6709bdb3db04", + "bytes": 257549 }, { "path": "adoption/new-wsl-profile.md", @@ -5136,8 +4982,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "7e210c9c56953ff5091c35909a0e3b5c94a4a519932eeda82878afb22b3c2961", - "bytes": 37151 + "sha256": "804eba0e086670c75e6b2f3725734477914318987c99fb90195680188be337c9", + "bytes": 37335 }, { "path": "adoption/pins-macos-arm64.json", @@ -5146,18 +4992,18 @@ }, { "path": "adoption/platforms/linux-wsl2-new-distro.md", - "sha256": "dc747930541b6efeddb799967e1cf82a258b055dd268568a2897ae015d38048b", - "bytes": 93494 + "sha256": "f640139255f1e093b018f47c1346c9f03b36d3fb941e08f4e910c928a08b3bec", + "bytes": 93206 }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "1f3b29db1d2585b548a8595dd25b7ab3c7a2ff33af7e9f9a2ba750c3b0452174", - "bytes": 30164 + "sha256": "317a997ce3e794298d985f035af05285e27bc3690fd9e09be068991a82fe2056", + "bytes": 29535 }, { "path": "adoption/platforms/macos-arm64.md", - "sha256": "d7f026a3480e71374f25c33a92d3b0c4b30c1717846f74d0c3038872ad6d5870", - "bytes": 65911 + "sha256": "266da883e614f767929981e8e630c34cf3958020fb5a14f162d9f385bbb9427e", + "bytes": 65623 }, { "path": "adoption/pre-login-observation.json", @@ -5211,8 +5057,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "a0e293941482230a1ccaaf8a3206a5c7e72b73690d47e3a211883e9dd6279abc", - "bytes": 12948 + "sha256": "304dc11b5fca6e4001382a8cb884712e10d28bdfa8551fcac6dbfc2b4d36cf70", + "bytes": 12744 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -10962,8 +10808,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "286c6898529e89ae3b1582f6db149f0dabf968adc917faf653057dc9d22dab21", - "bytes": 494497 + "sha256": "b2e82b633fd1594a15d1726afe8d4b1d401440b265cfaf12d07c6d6752a71641", + "bytes": 486278 }, { "path": "blueprints/trials-20260926/README.md", @@ -16427,7 +16273,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "6c9fd66ad582103f454dac9d53925bdd3ea1a412073e83efd4579298b05ee46b", + "sha256": "4ec258549f82eeb8ea709f18b8a0bd482cdcebfc690bfab87c58449b16947472", "bytes": 36223 }, { @@ -16452,8 +16298,8 @@ }, { "path": "catalogs/foundation/new-wsl-architecture-20261001.json", - "sha256": "f9ba8f70ffd7350178ef4cdb5226a5cd7040a1f43f0f416855aa156dda6f8b23", - "bytes": 325528 + "sha256": "3a8081049976785e320cfd99bc93bd3dcefa0a8a351fcc4f3cab1d8022a6b1cd", + "bytes": 325006 }, { "path": "catalogs/foundation/new-wsl-layer-crosswalk-20261001.json", @@ -16557,8 +16403,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "4b45aa982068205635f95776bbfc7a4c73d283ea48586e480f3870e613450ecf", - "bytes": 287577 + "sha256": "d1f0f17e142e8bfca223006f72cb16fce65456609248a32b5cf7958ba9f54dd2", + "bytes": 287704 }, { "path": "catalogs/landscape/research-state.json", @@ -16567,8 +16413,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "e5987d047e09f2f16ed9592cba1f7d2a7a350a6428f2904b9e481298a5f9ab5e", - "bytes": 286532 + "sha256": "85a1715168203fef8f201672d3f284ff3021797c0576a974ef05ed4b6af7446c", + "bytes": 258289 }, { "path": "catalogs/landscape/us-equities.json", @@ -17027,8 +16873,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "4334eda38f9961f971e4c5394cd6fef418cef236d3ad73c34a0e080b5b71be21", - "bytes": 56958 + "sha256": "6e7ebbe64011f460b59ab310a328211737deec2f83543fb99c41d761958bff06", + "bytes": 56411 }, { "path": "docs/comparison-progress-20260922.md", @@ -17292,7 +17138,7 @@ }, { "path": "docs/decisions/2026-10-01-new-wsl-definitive-defaults.md", - "sha256": "1d3e6dd6d86df768a2683cd9f64bd478111467efdf6f35b3c71526af93b9f1d6", + "sha256": "711038cb81075841beed0b6db4310fdab88f425c064342b7d57f9fe33603d6b7", "bytes": 80195 }, { @@ -17330,11 +17176,6 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, - { - "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "c05f4b990e731342483a51883be8e5563a2d7fa07d936b18fff6cdf5d9e1bce5", - "bytes": 50522 - }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", "sha256": "a4c5ddf98c9fa778d07b60507a183818b1d243dda789bc06ee8bcd612fcbcedb", @@ -17652,8 +17493,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "e1003554881d6ddfa464560e2596b456897408ee40a3cd012e72bd75e4a5e0ed", - "bytes": 42784 + "sha256": "9d49b5052129b31a081f356c0bc750480ac4e5cc98d7b9606f6d4df7b9471357", + "bytes": 41689 }, { "path": "docs/full-stack-convergence.md", @@ -17692,7 +17533,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "d5f2c827e9f9da7ff769d0a833c9a2b8e9a3433cab9b8979e095a74f07a7ad7e", + "sha256": "6e17a86f92414d877858c9cbd88a42703aaaefb36f04bad6a78219f869bae18a", "bytes": 99371 }, { @@ -17702,8 +17543,8 @@ }, { "path": "docs/harness-defaults.md", - "sha256": "2c8469eade8c6a3237d96c42176b93cb9f49741fc4c3affdd352e1f81e3557bb", - "bytes": 227029 + "sha256": "26ec355b96aa6bc91fba8fd4f1ff33d84b13ce7865c4eb3108d98ead4dfa534c", + "bytes": 225647 }, { "path": "docs/harness-rules-convergence-20260922.md", @@ -17822,8 +17663,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "c1b9e9cd27feb0ed823a2c0e942a741671e5ad2b84753e5196e09442b0fb1e3c", - "bytes": 18484 + "sha256": "feacb3a295970f1269ea2004127e5dd11a4f43c9e2fb29166e501346205091af", + "bytes": 18483 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -17832,13 +17673,13 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "e5a825c8542eafe57744301ed16f8bd0cae373ddc0544f39e5be194b5be117bd", - "bytes": 692111 + "sha256": "bb5a4dc62aabc938b56b038ddb4ae3df036395ccd44cc72720436ad3aa19b33d", + "bytes": 689754 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "f2b224c2eb081be6ca73834ef0a589a69a9c7029f2c2233678de893dd5a061b1", - "bytes": 368486 + "sha256": "05ec525a60a6bad90b5f4161473a2aa015107c724fdfe0328f2166e3e73453a0", + "bytes": 366781 }, { "path": "docs/next-host-stages.md", @@ -17932,8 +17773,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "82dd8fabc8348c4297395f54f8af7b60d4fe8f75c00bcf4b50dd6af6c91376dc", - "bytes": 594844 + "sha256": "172d1d75458d9af2c24f1a1f63615fbaa34dc6abaf9428c58d6cacee3ec58b95", + "bytes": 592422 }, { "path": "docs/token-efficiency-stack.md", @@ -17952,7 +17793,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "c0dbda10161afabaa3f35ff3b98593dcb07c44e90109dc476d8c3616b3f35f35", + "sha256": "e54b87c1e0ad36ed6f0533e70e80d05935c42fcd72058d1b1ed6174a4e9ecb6a", "bytes": 98350 }, { @@ -19600,41 +19441,6 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", - "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", - "bytes": 108109 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", - "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", - "bytes": 13041 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", - "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", - "bytes": 28233 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", - "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", - "bytes": 18135 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", - "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", - "bytes": 74214 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", - "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", - "bytes": 121015 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", - "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", - "bytes": 26125 - }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -39267,8 +39073,8 @@ }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/definitive-manifest.json", - "sha256": "2c99f8e90c434abd824238dd301ca53bccf15aa0403d10827283996f193dc2f0", - "bytes": 229459 + "sha256": "8694fff119eded04b6009c75a5d328e82b4142b0a6ec6130398748307fc556d5", + "bytes": 229325 }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/foundation-definitive.compact.json", @@ -40017,8 +39823,8 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "154b0cd9c3bb688051f1743d649637d13a07f48feb2a162bce162539bd32ce7d", - "bytes": 34823 + "sha256": "8a6efae7585476f1b8f32e490b22066910316cd56a9c2667d5670350c34ebf6f", + "bytes": 26931 }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/slot-state-and-core-recipes.json", @@ -40027,13 +39833,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md", - "sha256": "ec3b531938276ad5323bf882d597fc1e55d7ec4a960c5985cfee66bbeeeace42", - "bytes": 81255 + "sha256": "913041489fd8145fcb8b15047107c80f0f4395e711a3042db2adf5bf72125196", + "bytes": 79782 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md", - "sha256": "52c16852b31a747a9435226a53da23d2473e66cf6e353cf381832fb8a11a5262", - "bytes": 173464 + "sha256": "24d3893580420960e71dfe9c91bdf8ba547cb0db4d0bfbd6a047ad1fb8305f83", + "bytes": 171237 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/VALIDATION.md", @@ -40042,8 +39848,8 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/accept.sh", - "sha256": "5e35b0c4fb78368a8a2488cb8b2b20702c67bec8e4a7e3e13f88947af5936db2", - "bytes": 152491 + "sha256": "808fd9eef9b48db7a930573f28e660f1b5f9dfc569642ee31fac17a8fb043ba7", + "bytes": 152419 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/check_plan.py", @@ -40347,13 +40153,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json", - "sha256": "c83ee09d0f60ed9baafaf44e8e0d3e9109602f441331287d73254fb1dc8e7faa", - "bytes": 389456 + "sha256": "c4546b76fb2d7eb9dddd44b416716307d313781235c09b7945d844c5df686c0d", + "bytes": 388443 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install.sh", - "sha256": "8dc58271f17fe79535f4ce5ea2dcf79bc617a439da6eb0582aca0fd0c90c4caf", - "bytes": 120084 + "sha256": "d3448844538e508e7f83e6b545c844017e0170a057787dc051c4051133538da8", + "bytes": 119797 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/mise.toml", @@ -40377,7 +40183,7 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/owners.json", - "sha256": "3ce5fb8d821a3940ccbd05a06fdf11947ade49f0c7fad378d5c3048bc27b0982", + "sha256": "5831ddfe557023c647397c84474cb7f5277a46646bd74eb1bb62fdb725f927fa", "bytes": 35188 }, { @@ -40417,8 +40223,8 @@ }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/consensus.json", - "sha256": "21b833ade87f27616b037c9619a348223391175bd6047a2be237556bf4b7fc1e", - "bytes": 142310 + "sha256": "a34fb8c01429177cd2787a07a1edf0a0668d31898ff35fd798056964d5dab82e", + "bytes": 142174 }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/copy-notes.json", @@ -52640,11 +52446,6 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, - { - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", - "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", - "bytes": 10611 - }, { "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json", "sha256": "b0c9e1d7c58e339dc2906e6a977ec04e6c1a808e826f9422407449ab34dd4f09", @@ -52900,11 +52701,6 @@ "sha256": "99580ecf2786f53585823b7695546f67d690fa5c2a6e30e4732854fe3f107787", "bytes": 27783 }, - { - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", - "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", - "bytes": 8187 - }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -52935,21 +52731,11 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, - { - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", - "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", - "bytes": 10165 - }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, - { - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", - "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", - "bytes": 10463 - }, { "path": "evidence/receipts/mcporter-0142-qualification-20261004.json", "sha256": "9399c393875decb817d49a1ed59e1629ff445070453c2a2ba819e98d17a24cd1", @@ -53265,11 +53051,6 @@ "sha256": "9ad1db0b9e841cd780d04e544f6e75dde57fd88ebc6fc4f5b0bafd84287f20da", "bytes": 149558 }, - { - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", - "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", - "bytes": 7517 - }, { "path": "evidence/receipts/osv-captured-lumibot-lockchecks-20261005.json", "sha256": "f211de55c2cbbf1f712c35f51bbe846f8a08341d24a240b51e654a6df6fd2b6c", @@ -53310,21 +53091,11 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, - { - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", - "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", - "bytes": 6732 - }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, - { - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", - "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", - "bytes": 7731 - }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -53425,11 +53196,6 @@ "sha256": "88d94dea0829c87eecd2b6f9cc2a03c010888de130fe430abce65d5ebd39e788", "bytes": 135042 }, - { - "path": "evidence/receipts/syft-1540-qualification-20261003.json", - "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", - "bytes": 7946 - }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -53520,11 +53286,6 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, - { - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", - "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", - "bytes": 6655 - }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -54067,18 +53828,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", + "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "cbc65770d505fcc1253aa270db6d9930d884c9b22abeb34de450405b670c21a3", - "bytes": 106396 + "sha256": "3ca8f36178c4e61c9f8241fd6eb045172a9e66c38da5f4943b4532fc42f94a72", + "bytes": 103027 }, { "path": "observability/README.md", - "sha256": "adbefdbdb1f427f172c8d4b4899aaf188bf5c50e8861d117c74705d07738a38f", - "bytes": 16714 + "sha256": "7c7795560a7ef6541c91dfb8b0bf4e693f5dcdf9cfc75f262d8e4832057177e3", + "bytes": 15625 }, { "path": "observability/backends/README.md", @@ -54177,8 +53938,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "b6e15fabde242bf7e16c9a67e12e78dc5463bbe978aed5fb6ac8eec8c5df22bf", - "bytes": 46135 + "sha256": "df33394028df2a687f7e39beefe0aa02978a0d6a0b97fd9d8a14f12e6075d3d6", + "bytes": 44636 }, { "path": "observability/collector/claude-settings.json.example", @@ -54357,8 +54118,8 @@ }, { "path": "recipes/README.md", - "sha256": "cf1b7a7276d3836fa09d9ea49e7b626d1db4efb578da286b6cd8cb6b3d8888e9", - "bytes": 132632 + "sha256": "ad750498ace3022cdaab34bc6cafb42300379d9a9e0f9e76f00414916c9d8a96", + "bytes": 128978 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -54382,8 +54143,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", - "bytes": 6586 + "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", + "bytes": 5706 }, { "path": "recipes/saturation-sweep.md", @@ -54487,7 +54248,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "95d45da579b1035c4cfa54f330f1ab179b949bbdb49555dd82c5163d2367300a", + "sha256": "4c25e7d13eb9f1ee11418427b6bf9c65800ac55f5b6e6fc7e9f70e21efbc068d", "bytes": 117733 }, { @@ -54867,8 +54628,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", - "bytes": 52214 + "sha256": "6621649f533fb9b1d62e902d3953447bd43ec6bb26ee3e1f35e693023200fb06", + "bytes": 52213 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -54930,11 +54691,6 @@ "sha256": "55e47ac074cef878414ca7ec2e95d69888f245c7f334c3982dffac30dfa2b475", "bytes": 12924 }, - { - "path": "tests/test_blind_checkout.py", - "sha256": "d27efdf89e9ff89b0bd50c03a59e4efad5529e617d77ead110621616c20800f8", - "bytes": 67881 - }, { "path": "tests/test_blind_layer_decisions.py", "sha256": "327f104fc335a2b25f2a910e8cae44661fe9439764f4ab778412dbf3beeaea99", @@ -55132,8 +54888,8 @@ }, { "path": "tests/test_ecosystem_manifest.py", - "sha256": "03900b5be52d6e13a4a15ae46347eddf5eb09d3324ff973a967455fe40b18202", - "bytes": 142162 + "sha256": "d1990f63256a86d69eaa154217aba92548905ff0bafc61e574465425e9ba62bb", + "bytes": 137485 }, { "path": "tests/test_edgartools_pin_move.py", @@ -55487,18 +55243,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", - "bytes": 34441 + "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", + "bytes": 34089 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "ed7e6db7559dfb09c79be5d5a6150ec57710278b096293e73373b5681a2d5724", - "bytes": 25971 + "sha256": "01643e542017a248c166302b90f7218e42c83eceb3e4084b1a99a4bb73617a89", + "bytes": 25617 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "96b901ada162f4a9d5c7445a4f5272ca86011d5e9227211405051ad12fe79665", - "bytes": 38105 + "sha256": "2f58b64cbd4f1af2b23ed869147278e2f84ad3357fef11a13c6496154fb1f15b", + "bytes": 37789 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -55607,8 +55363,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "9eae1b97d637079056994268e754f878bbafd4702fe8182cfef21f2f7b9bfcec", - "bytes": 47956 + "sha256": "e8a7d735d73063ef82c4cff28bfa09a737d75a4fb69d84b49aec335ae2ba62b4", + "bytes": 45406 }, { "path": "tests/test_research_efficiency.py", @@ -55657,8 +55413,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", - "bytes": 9774 + "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", + "bytes": 9712 }, { "path": "tests/test_secret_path_guard.py", @@ -56130,11 +55886,6 @@ "sha256": "715c98a3ea23e71768326b19250cac5ce3e3bc1c568f540771ba64e45976a4ee", "bytes": 27482 }, - { - "path": "tools/sota-convergence/export_isolation_check.py", - "sha256": "7c0218c6545ea8d0274c71df8d4789a9f3e983dab45015905ad362dc6f0d3742", - "bytes": 34727 - }, { "path": "tools/sota-convergence/extract_layers.py", "sha256": "4be73f7d3b09fa9ea88ecb238d998e43b648c7c16bb56b8853e8672ca883bb2a", @@ -56452,7 +56203,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "f3598f338d96d838ec7307e0c2d436d354682d3c1994dbfb49e82c760c551ebc", + "sha256": "20c8f4f0b757860b0d9960809dcee36e0c4425489550df31b7c0a940798615b2", "bytes": 25833 }, { From a24de5948a1e70ec1cfba6a3c58c8dae22f3a298 Mon Sep 17 00:00:00 2001 From: Scout Date: Tue, 6 Oct 2026 16:59:40 -0400 Subject: [PATCH 48/50] Reapply this branch's manifests/evidence.json edits on the merge base (hot-file protocol: every hot-file edit in the last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 437 +++++++++++++++++++++++++++++++--------- 1 file changed, 343 insertions(+), 94 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 86267cef1..f8d0f707b 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4477,6 +4477,155 @@ "Serena and MinerU are excluded from old-bar READY while condition-absent controls remain open. Difftastic, structural-search, inspect-ai, harbor and codex-sdk: fresh-session use not evidenced; installation-time checks retain original classes." ], "path": "evidence/receipts/ns2604-roadmap-evidence-20261005.json" + }, + { + "id": "claude-hud-0100-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-hud" + ], + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "limitations": [ + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + }, + { + "id": "jcodemunch-1108327-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "jcodemunch-mcp" + ], + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", + "limitations": [ + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" + }, + { + "id": "mcp-inspector-290-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "mcp-inspector" + ], + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "limitations": [ + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + }, + { + "id": "mcporter-0142-qualification-20261003", + "kind": "compatibility_attempt", + "component_ids": [ + "mcporter" + ], + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", + "limitations": [ + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + }, + { + "id": "openresearch-0215-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "openresearch" + ], + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "limitations": [ + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + }, + { + "id": "otelcol-contrib-0162-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "opentelemetry-collector-contrib" + ], + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "limitations": [ + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + }, + { + "id": "playwright-cli-0122-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "playwright-cli" + ], + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "limitations": [ + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + }, + { + "id": "syft-1540-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "syft" + ], + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "limitations": [ + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/syft-1540-qualification-20261003.json" + }, + { + "id": "worktrunk-0800-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "worktrunk" + ], + "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", + "limitations": [ + "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", + "The host installation and rollback launcher were not switched.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" } ], "files": [ @@ -4527,8 +4676,8 @@ }, { "path": ".github/osv-scanner-lockfiles.json", - "sha256": "6ac40e443963ca0bc93d75e440c697268682bd11810ea6203794d063a4d6be76", - "bytes": 15075 + "sha256": "3c7bed9c3899e22a022acf4172719dd510124d45664f24cf656def14e6ad999b", + "bytes": 15176 }, { "path": ".github/osv-scanner.toml", @@ -4550,6 +4699,11 @@ "sha256": "0b37433fb0fb165c893737e8e887581a07a6469683fbdf67ada1a08288758605", "bytes": 467 }, + { + "path": ".github/requirements-validation.txt", + "sha256": "458d8cb1fef26d0d0a9a6a76707c0bad04fe84558550db750d50af206fecba81", + "bytes": 719 + }, { "path": ".github/tag-ruleset.json", "sha256": "b11fda27d1e2011ff3c001ac830fa3b2c0c3af6090e929ee2d20e4d0507dda5e", @@ -4567,8 +4721,8 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "b916c15a85c4f6a84fd6fb460001898752445242f35aebc29862868c35907a4b", - "bytes": 26294 + "sha256": "673dbb816767e67d002b6dcdf866053c8408a7a47203683650af8d9f3be4b23a", + "bytes": 26872 }, { "path": ".github/workflows/dependency-review.yml", @@ -4612,8 +4766,8 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "5b52e3f50cf6ecb26cfe36f8ca54c577b5ff07ec4027a20102bc731c066cf4e5", - "bytes": 20110 + "sha256": "6f48ef65db2a270121e607aea1f08f2cad7c9f883009babd40af42b21c8f3167", + "bytes": 20399 }, { "path": ".github/workflows/receipt-staleness.yml", @@ -4647,8 +4801,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "92ab3fa8354aa9fbaad781597354ef5a942c709b5950109bb13c8b77780a40f8", - "bytes": 7576 + "sha256": "8c70b40953230c79e3d3df75fc492d689bf8884cb53acd7b6b6eadb63f2558c9", + "bytes": 7589 }, { "path": ".github/workflows/token-report.yml", @@ -4797,8 +4951,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "9ea67939f6e5443576cdc2aad3ff997cc554aca3292e877afbe0c000d7d9e6ae", - "bytes": 65967 + "sha256": "1a5533bfcb028ef8c952fc1ebd08a2ca36dd22f7c3538bae7717e78e44501761", + "bytes": 68841 }, { "path": "adoption/credential-inventory.json", @@ -4907,13 +5061,13 @@ }, { "path": "adoption/manifest.json", - "sha256": "f3e325c8b5dcd1852a613136bb1152bf1a1f39c0dd6861f3c4752ac0d5e32c0a", - "bytes": 20102 + "sha256": "16d9708777667b29a4c25b363fca5644b94ab7932d0735c7323ac48188f7eaec", + "bytes": 20038 }, { "path": "adoption/new-wsl-profile.json", - "sha256": "7504e55c2e66730d5e0b0ead2be5abef39f3989afc69e1c3640e6709bdb3db04", - "bytes": 257549 + "sha256": "b837312fcf1a81a9e9d47b71496bf08550d848cfbe6be4353f01bf75659b28f3", + "bytes": 260542 }, { "path": "adoption/new-wsl-profile.md", @@ -4982,8 +5136,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "804eba0e086670c75e6b2f3725734477914318987c99fb90195680188be337c9", - "bytes": 37335 + "sha256": "7e210c9c56953ff5091c35909a0e3b5c94a4a519932eeda82878afb22b3c2961", + "bytes": 37151 }, { "path": "adoption/pins-macos-arm64.json", @@ -4992,18 +5146,18 @@ }, { "path": "adoption/platforms/linux-wsl2-new-distro.md", - "sha256": "f640139255f1e093b018f47c1346c9f03b36d3fb941e08f4e910c928a08b3bec", - "bytes": 93206 + "sha256": "dc747930541b6efeddb799967e1cf82a258b055dd268568a2897ae015d38048b", + "bytes": 93494 }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "317a997ce3e794298d985f035af05285e27bc3690fd9e09be068991a82fe2056", - "bytes": 29535 + "sha256": "1f3b29db1d2585b548a8595dd25b7ab3c7a2ff33af7e9f9a2ba750c3b0452174", + "bytes": 30164 }, { "path": "adoption/platforms/macos-arm64.md", - "sha256": "266da883e614f767929981e8e630c34cf3958020fb5a14f162d9f385bbb9427e", - "bytes": 65623 + "sha256": "d7f026a3480e71374f25c33a92d3b0c4b30c1717846f74d0c3038872ad6d5870", + "bytes": 65911 }, { "path": "adoption/pre-login-observation.json", @@ -5057,8 +5211,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "304dc11b5fca6e4001382a8cb884712e10d28bdfa8551fcac6dbfc2b4d36cf70", - "bytes": 12744 + "sha256": "a0e293941482230a1ccaaf8a3206a5c7e72b73690d47e3a211883e9dd6279abc", + "bytes": 12948 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -10808,8 +10962,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "b2e82b633fd1594a15d1726afe8d4b1d401440b265cfaf12d07c6d6752a71641", - "bytes": 486278 + "sha256": "286c6898529e89ae3b1582f6db149f0dabf968adc917faf653057dc9d22dab21", + "bytes": 494497 }, { "path": "blueprints/trials-20260926/README.md", @@ -16273,7 +16427,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "4ec258549f82eeb8ea709f18b8a0bd482cdcebfc690bfab87c58449b16947472", + "sha256": "6c9fd66ad582103f454dac9d53925bdd3ea1a412073e83efd4579298b05ee46b", "bytes": 36223 }, { @@ -16298,8 +16452,8 @@ }, { "path": "catalogs/foundation/new-wsl-architecture-20261001.json", - "sha256": "3a8081049976785e320cfd99bc93bd3dcefa0a8a351fcc4f3cab1d8022a6b1cd", - "bytes": 325006 + "sha256": "f9ba8f70ffd7350178ef4cdb5226a5cd7040a1f43f0f416855aa156dda6f8b23", + "bytes": 325528 }, { "path": "catalogs/foundation/new-wsl-layer-crosswalk-20261001.json", @@ -16403,8 +16557,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "d1f0f17e142e8bfca223006f72cb16fce65456609248a32b5cf7958ba9f54dd2", - "bytes": 287704 + "sha256": "4b45aa982068205635f95776bbfc7a4c73d283ea48586e480f3870e613450ecf", + "bytes": 287577 }, { "path": "catalogs/landscape/research-state.json", @@ -16413,8 +16567,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "85a1715168203fef8f201672d3f284ff3021797c0576a974ef05ed4b6af7446c", - "bytes": 258289 + "sha256": "e5987d047e09f2f16ed9592cba1f7d2a7a350a6428f2904b9e481298a5f9ab5e", + "bytes": 286532 }, { "path": "catalogs/landscape/us-equities.json", @@ -16873,8 +17027,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "6e7ebbe64011f460b59ab310a328211737deec2f83543fb99c41d761958bff06", - "bytes": 56411 + "sha256": "4334eda38f9961f971e4c5394cd6fef418cef236d3ad73c34a0e080b5b71be21", + "bytes": 56958 }, { "path": "docs/comparison-progress-20260922.md", @@ -17138,7 +17292,7 @@ }, { "path": "docs/decisions/2026-10-01-new-wsl-definitive-defaults.md", - "sha256": "711038cb81075841beed0b6db4310fdab88f425c064342b7d57f9fe33603d6b7", + "sha256": "1d3e6dd6d86df768a2683cd9f64bd478111467efdf6f35b3c71526af93b9f1d6", "bytes": 80195 }, { @@ -17176,6 +17330,11 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, + { + "path": "docs/decisions/2026-10-03-currency-wave-w1.md", + "sha256": "c05f4b990e731342483a51883be8e5563a2d7fa07d936b18fff6cdf5d9e1bce5", + "bytes": 50522 + }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", "sha256": "a4c5ddf98c9fa778d07b60507a183818b1d243dda789bc06ee8bcd612fcbcedb", @@ -17493,8 +17652,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "9d49b5052129b31a081f356c0bc750480ac4e5cc98d7b9606f6d4df7b9471357", - "bytes": 41689 + "sha256": "e1003554881d6ddfa464560e2596b456897408ee40a3cd012e72bd75e4a5e0ed", + "bytes": 42784 }, { "path": "docs/full-stack-convergence.md", @@ -17533,7 +17692,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "6e17a86f92414d877858c9cbd88a42703aaaefb36f04bad6a78219f869bae18a", + "sha256": "d5f2c827e9f9da7ff769d0a833c9a2b8e9a3433cab9b8979e095a74f07a7ad7e", "bytes": 99371 }, { @@ -17543,8 +17702,8 @@ }, { "path": "docs/harness-defaults.md", - "sha256": "26ec355b96aa6bc91fba8fd4f1ff33d84b13ce7865c4eb3108d98ead4dfa534c", - "bytes": 225647 + "sha256": "2c8469eade8c6a3237d96c42176b93cb9f49741fc4c3affdd352e1f81e3557bb", + "bytes": 227029 }, { "path": "docs/harness-rules-convergence-20260922.md", @@ -17663,8 +17822,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "feacb3a295970f1269ea2004127e5dd11a4f43c9e2fb29166e501346205091af", - "bytes": 18483 + "sha256": "c1b9e9cd27feb0ed823a2c0e942a741671e5ad2b84753e5196e09442b0fb1e3c", + "bytes": 18484 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -17673,13 +17832,13 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "bb5a4dc62aabc938b56b038ddb4ae3df036395ccd44cc72720436ad3aa19b33d", - "bytes": 689754 + "sha256": "e5a825c8542eafe57744301ed16f8bd0cae373ddc0544f39e5be194b5be117bd", + "bytes": 692111 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "05ec525a60a6bad90b5f4161473a2aa015107c724fdfe0328f2166e3e73453a0", - "bytes": 366781 + "sha256": "f2b224c2eb081be6ca73834ef0a589a69a9c7029f2c2233678de893dd5a061b1", + "bytes": 368486 }, { "path": "docs/next-host-stages.md", @@ -17773,8 +17932,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "172d1d75458d9af2c24f1a1f63615fbaa34dc6abaf9428c58d6cacee3ec58b95", - "bytes": 592422 + "sha256": "82dd8fabc8348c4297395f54f8af7b60d4fe8f75c00bcf4b50dd6af6c91376dc", + "bytes": 594844 }, { "path": "docs/token-efficiency-stack.md", @@ -17793,7 +17952,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "e54b87c1e0ad36ed6f0533e70e80d05935c42fcd72058d1b1ed6174a4e9ecb6a", + "sha256": "c0dbda10161afabaa3f35ff3b98593dcb07c44e90109dc476d8c3616b3f35f35", "bytes": 98350 }, { @@ -19441,6 +19600,41 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", + "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", + "bytes": 108109 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", + "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", + "bytes": 13041 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", + "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", + "bytes": 28233 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", + "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", + "bytes": 18135 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", + "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", + "bytes": 74214 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", + "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", + "bytes": 121015 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", + "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", + "bytes": 26125 + }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -39073,8 +39267,8 @@ }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/definitive-manifest.json", - "sha256": "8694fff119eded04b6009c75a5d328e82b4142b0a6ec6130398748307fc556d5", - "bytes": 229325 + "sha256": "2c99f8e90c434abd824238dd301ca53bccf15aa0403d10827283996f193dc2f0", + "bytes": 229459 }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/foundation-definitive.compact.json", @@ -39823,8 +40017,8 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "8a6efae7585476f1b8f32e490b22066910316cd56a9c2667d5670350c34ebf6f", - "bytes": 26931 + "sha256": "154b0cd9c3bb688051f1743d649637d13a07f48feb2a162bce162539bd32ce7d", + "bytes": 34823 }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/slot-state-and-core-recipes.json", @@ -39833,13 +40027,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md", - "sha256": "913041489fd8145fcb8b15047107c80f0f4395e711a3042db2adf5bf72125196", - "bytes": 79782 + "sha256": "ec3b531938276ad5323bf882d597fc1e55d7ec4a960c5985cfee66bbeeeace42", + "bytes": 81255 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md", - "sha256": "24d3893580420960e71dfe9c91bdf8ba547cb0db4d0bfbd6a047ad1fb8305f83", - "bytes": 171237 + "sha256": "52c16852b31a747a9435226a53da23d2473e66cf6e353cf381832fb8a11a5262", + "bytes": 173464 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/VALIDATION.md", @@ -39848,8 +40042,8 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/accept.sh", - "sha256": "808fd9eef9b48db7a930573f28e660f1b5f9dfc569642ee31fac17a8fb043ba7", - "bytes": 152419 + "sha256": "5e35b0c4fb78368a8a2488cb8b2b20702c67bec8e4a7e3e13f88947af5936db2", + "bytes": 152491 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/check_plan.py", @@ -40153,13 +40347,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json", - "sha256": "c4546b76fb2d7eb9dddd44b416716307d313781235c09b7945d844c5df686c0d", - "bytes": 388443 + "sha256": "c83ee09d0f60ed9baafaf44e8e0d3e9109602f441331287d73254fb1dc8e7faa", + "bytes": 389456 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install.sh", - "sha256": "d3448844538e508e7f83e6b545c844017e0170a057787dc051c4051133538da8", - "bytes": 119797 + "sha256": "8dc58271f17fe79535f4ce5ea2dcf79bc617a439da6eb0582aca0fd0c90c4caf", + "bytes": 120084 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/mise.toml", @@ -40183,7 +40377,7 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/owners.json", - "sha256": "5831ddfe557023c647397c84474cb7f5277a46646bd74eb1bb62fdb725f927fa", + "sha256": "3ce5fb8d821a3940ccbd05a06fdf11947ade49f0c7fad378d5c3048bc27b0982", "bytes": 35188 }, { @@ -40223,8 +40417,8 @@ }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/consensus.json", - "sha256": "a34fb8c01429177cd2787a07a1edf0a0668d31898ff35fd798056964d5dab82e", - "bytes": 142174 + "sha256": "21b833ade87f27616b037c9619a348223391175bd6047a2be237556bf4b7fc1e", + "bytes": 142310 }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/copy-notes.json", @@ -52446,6 +52640,11 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, + { + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", + "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", + "bytes": 10611 + }, { "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json", "sha256": "b0c9e1d7c58e339dc2906e6a977ec04e6c1a808e826f9422407449ab34dd4f09", @@ -52701,6 +52900,11 @@ "sha256": "99580ecf2786f53585823b7695546f67d690fa5c2a6e30e4732854fe3f107787", "bytes": 27783 }, + { + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", + "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", + "bytes": 8187 + }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -52731,11 +52935,21 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, + { + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", + "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", + "bytes": 10165 + }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, + { + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", + "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", + "bytes": 10463 + }, { "path": "evidence/receipts/mcporter-0142-qualification-20261004.json", "sha256": "9399c393875decb817d49a1ed59e1629ff445070453c2a2ba819e98d17a24cd1", @@ -53051,6 +53265,11 @@ "sha256": "9ad1db0b9e841cd780d04e544f6e75dde57fd88ebc6fc4f5b0bafd84287f20da", "bytes": 149558 }, + { + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", + "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", + "bytes": 7517 + }, { "path": "evidence/receipts/osv-captured-lumibot-lockchecks-20261005.json", "sha256": "f211de55c2cbbf1f712c35f51bbe846f8a08341d24a240b51e654a6df6fd2b6c", @@ -53091,11 +53310,21 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, + { + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", + "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", + "bytes": 6732 + }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, + { + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", + "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", + "bytes": 7731 + }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -53196,6 +53425,11 @@ "sha256": "88d94dea0829c87eecd2b6f9cc2a03c010888de130fe430abce65d5ebd39e788", "bytes": 135042 }, + { + "path": "evidence/receipts/syft-1540-qualification-20261003.json", + "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", + "bytes": 7946 + }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -53286,6 +53520,11 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, + { + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", + "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", + "bytes": 6655 + }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -53828,18 +54067,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", + "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "3ca8f36178c4e61c9f8241fd6eb045172a9e66c38da5f4943b4532fc42f94a72", - "bytes": 103027 + "sha256": "cbc65770d505fcc1253aa270db6d9930d884c9b22abeb34de450405b670c21a3", + "bytes": 106396 }, { "path": "observability/README.md", - "sha256": "7c7795560a7ef6541c91dfb8b0bf4e693f5dcdf9cfc75f262d8e4832057177e3", - "bytes": 15625 + "sha256": "adbefdbdb1f427f172c8d4b4899aaf188bf5c50e8861d117c74705d07738a38f", + "bytes": 16714 }, { "path": "observability/backends/README.md", @@ -53938,8 +54177,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "df33394028df2a687f7e39beefe0aa02978a0d6a0b97fd9d8a14f12e6075d3d6", - "bytes": 44636 + "sha256": "b6e15fabde242bf7e16c9a67e12e78dc5463bbe978aed5fb6ac8eec8c5df22bf", + "bytes": 46135 }, { "path": "observability/collector/claude-settings.json.example", @@ -54118,8 +54357,8 @@ }, { "path": "recipes/README.md", - "sha256": "ad750498ace3022cdaab34bc6cafb42300379d9a9e0f9e76f00414916c9d8a96", - "bytes": 128978 + "sha256": "cf1b7a7276d3836fa09d9ea49e7b626d1db4efb578da286b6cd8cb6b3d8888e9", + "bytes": 132632 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -54143,8 +54382,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", - "bytes": 5706 + "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", + "bytes": 6586 }, { "path": "recipes/saturation-sweep.md", @@ -54248,7 +54487,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "4c25e7d13eb9f1ee11418427b6bf9c65800ac55f5b6e6fc7e9f70e21efbc068d", + "sha256": "95d45da579b1035c4cfa54f330f1ab179b949bbdb49555dd82c5163d2367300a", "bytes": 117733 }, { @@ -54628,8 +54867,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "6621649f533fb9b1d62e902d3953447bd43ec6bb26ee3e1f35e693023200fb06", - "bytes": 52213 + "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", + "bytes": 52214 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -54691,6 +54930,11 @@ "sha256": "55e47ac074cef878414ca7ec2e95d69888f245c7f334c3982dffac30dfa2b475", "bytes": 12924 }, + { + "path": "tests/test_blind_checkout.py", + "sha256": "d27efdf89e9ff89b0bd50c03a59e4efad5529e617d77ead110621616c20800f8", + "bytes": 67881 + }, { "path": "tests/test_blind_layer_decisions.py", "sha256": "327f104fc335a2b25f2a910e8cae44661fe9439764f4ab778412dbf3beeaea99", @@ -54888,8 +55132,8 @@ }, { "path": "tests/test_ecosystem_manifest.py", - "sha256": "d1990f63256a86d69eaa154217aba92548905ff0bafc61e574465425e9ba62bb", - "bytes": 137485 + "sha256": "03900b5be52d6e13a4a15ae46347eddf5eb09d3324ff973a967455fe40b18202", + "bytes": 142162 }, { "path": "tests/test_edgartools_pin_move.py", @@ -55243,18 +55487,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", - "bytes": 34089 + "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", + "bytes": 34441 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "01643e542017a248c166302b90f7218e42c83eceb3e4084b1a99a4bb73617a89", - "bytes": 25617 + "sha256": "ed7e6db7559dfb09c79be5d5a6150ec57710278b096293e73373b5681a2d5724", + "bytes": 25971 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "2f58b64cbd4f1af2b23ed869147278e2f84ad3357fef11a13c6496154fb1f15b", - "bytes": 37789 + "sha256": "96b901ada162f4a9d5c7445a4f5272ca86011d5e9227211405051ad12fe79665", + "bytes": 38105 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -55363,8 +55607,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "e8a7d735d73063ef82c4cff28bfa09a737d75a4fb69d84b49aec335ae2ba62b4", - "bytes": 45406 + "sha256": "9eae1b97d637079056994268e754f878bbafd4702fe8182cfef21f2f7b9bfcec", + "bytes": 47956 }, { "path": "tests/test_research_efficiency.py", @@ -55413,8 +55657,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", - "bytes": 9712 + "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", + "bytes": 9774 }, { "path": "tests/test_secret_path_guard.py", @@ -55886,6 +56130,11 @@ "sha256": "715c98a3ea23e71768326b19250cac5ce3e3bc1c568f540771ba64e45976a4ee", "bytes": 27482 }, + { + "path": "tools/sota-convergence/export_isolation_check.py", + "sha256": "7c0218c6545ea8d0274c71df8d4789a9f3e983dab45015905ad362dc6f0d3742", + "bytes": 34727 + }, { "path": "tools/sota-convergence/extract_layers.py", "sha256": "4be73f7d3b09fa9ea88ecb238d998e43b648c7c16bb56b8853e8672ca883bb2a", @@ -56203,7 +56452,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "20c8f4f0b757860b0d9960809dcee36e0c4425489550df31b7c0a940798615b2", + "sha256": "f3598f338d96d838ec7307e0c2d436d354682d3c1994dbfb49e82c760c551ebc", "bytes": 25833 }, { From 2e0d8e9b74cfb0617eb5d0dffac93ed7334bfabf Mon Sep 17 00:00:00 2001 From: Scout Date: Tue, 6 Oct 2026 18:36:39 -0400 Subject: [PATCH 49/50] Hot-file protocol: reset manifests/evidence.json to the merge base before the final hot-file commit Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 437 +++++++++------------------------------- 1 file changed, 94 insertions(+), 343 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index db62cd0ed..53806c367 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4477,155 +4477,6 @@ "Serena and MinerU are excluded from old-bar READY while condition-absent controls remain open. Difftastic, structural-search, inspect-ai, harbor and codex-sdk: fresh-session use not evidenced; installation-time checks retain original classes." ], "path": "evidence/receipts/ns2604-roadmap-evidence-20261005.json" - }, - { - "id": "claude-hud-0100-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "claude-hud" - ], - "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", - "limitations": [ - "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", - "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", - "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" - }, - { - "id": "jcodemunch-1108327-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "jcodemunch-mcp" - ], - "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", - "limitations": [ - "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", - "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" - }, - { - "id": "mcp-inspector-290-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "mcp-inspector" - ], - "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", - "limitations": [ - "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", - "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", - "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" - }, - { - "id": "mcporter-0142-qualification-20261003", - "kind": "compatibility_attempt", - "component_ids": [ - "mcporter" - ], - "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", - "limitations": [ - "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", - "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", - "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" - }, - { - "id": "openresearch-0215-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "openresearch" - ], - "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", - "limitations": [ - "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", - "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" - }, - { - "id": "otelcol-contrib-0162-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "opentelemetry-collector-contrib" - ], - "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", - "limitations": [ - "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", - "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" - }, - { - "id": "playwright-cli-0122-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "playwright-cli" - ], - "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", - "limitations": [ - "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", - "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", - "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" - }, - { - "id": "syft-1540-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "syft" - ], - "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", - "limitations": [ - "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", - "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", - "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/syft-1540-qualification-20261003.json" - }, - { - "id": "worktrunk-0800-qualification-20261003", - "kind": "native_cli_e2e", - "component_ids": [ - "worktrunk" - ], - "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", - "limitations": [ - "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", - "The host installation and rollback launcher were not switched.", - "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", - "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", - "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." - ], - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" } ], "files": [ @@ -4676,8 +4527,8 @@ }, { "path": ".github/osv-scanner-lockfiles.json", - "sha256": "3c7bed9c3899e22a022acf4172719dd510124d45664f24cf656def14e6ad999b", - "bytes": 15176 + "sha256": "6ac40e443963ca0bc93d75e440c697268682bd11810ea6203794d063a4d6be76", + "bytes": 15075 }, { "path": ".github/osv-scanner.toml", @@ -4699,11 +4550,6 @@ "sha256": "0b37433fb0fb165c893737e8e887581a07a6469683fbdf67ada1a08288758605", "bytes": 467 }, - { - "path": ".github/requirements-validation.txt", - "sha256": "458d8cb1fef26d0d0a9a6a76707c0bad04fe84558550db750d50af206fecba81", - "bytes": 719 - }, { "path": ".github/tag-ruleset.json", "sha256": "b11fda27d1e2011ff3c001ac830fa3b2c0c3af6090e929ee2d20e4d0507dda5e", @@ -4721,8 +4567,8 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "673dbb816767e67d002b6dcdf866053c8408a7a47203683650af8d9f3be4b23a", - "bytes": 26872 + "sha256": "b916c15a85c4f6a84fd6fb460001898752445242f35aebc29862868c35907a4b", + "bytes": 26294 }, { "path": ".github/workflows/dependency-review.yml", @@ -4766,8 +4612,8 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "6f48ef65db2a270121e607aea1f08f2cad7c9f883009babd40af42b21c8f3167", - "bytes": 20399 + "sha256": "5b52e3f50cf6ecb26cfe36f8ca54c577b5ff07ec4027a20102bc731c066cf4e5", + "bytes": 20110 }, { "path": ".github/workflows/receipt-staleness.yml", @@ -4801,8 +4647,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "8c70b40953230c79e3d3df75fc492d689bf8884cb53acd7b6b6eadb63f2558c9", - "bytes": 7589 + "sha256": "92ab3fa8354aa9fbaad781597354ef5a942c709b5950109bb13c8b77780a40f8", + "bytes": 7576 }, { "path": ".github/workflows/token-report.yml", @@ -4951,8 +4797,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "1a5533bfcb028ef8c952fc1ebd08a2ca36dd22f7c3538bae7717e78e44501761", - "bytes": 68841 + "sha256": "9ea67939f6e5443576cdc2aad3ff997cc554aca3292e877afbe0c000d7d9e6ae", + "bytes": 65967 }, { "path": "adoption/credential-inventory.json", @@ -5061,13 +4907,13 @@ }, { "path": "adoption/manifest.json", - "sha256": "16d9708777667b29a4c25b363fca5644b94ab7932d0735c7323ac48188f7eaec", - "bytes": 20038 + "sha256": "f3e325c8b5dcd1852a613136bb1152bf1a1f39c0dd6861f3c4752ac0d5e32c0a", + "bytes": 20102 }, { "path": "adoption/new-wsl-profile.json", - "sha256": "b837312fcf1a81a9e9d47b71496bf08550d848cfbe6be4353f01bf75659b28f3", - "bytes": 260542 + "sha256": "7504e55c2e66730d5e0b0ead2be5abef39f3989afc69e1c3640e6709bdb3db04", + "bytes": 257549 }, { "path": "adoption/new-wsl-profile.md", @@ -5136,8 +4982,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "7e210c9c56953ff5091c35909a0e3b5c94a4a519932eeda82878afb22b3c2961", - "bytes": 37151 + "sha256": "804eba0e086670c75e6b2f3725734477914318987c99fb90195680188be337c9", + "bytes": 37335 }, { "path": "adoption/pins-macos-arm64.json", @@ -5146,18 +4992,18 @@ }, { "path": "adoption/platforms/linux-wsl2-new-distro.md", - "sha256": "bc37a2c3fde395818f1ffcaae01e9578fa222367cac5b36f92bcbc013e5f491a", - "bytes": 93706 + "sha256": "85ffcae840d5dda92d6843117ba5bb22399bf8b4162fb470443cee8e01b0ed73", + "bytes": 93418 }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "1f3b29db1d2585b548a8595dd25b7ab3c7a2ff33af7e9f9a2ba750c3b0452174", - "bytes": 30164 + "sha256": "317a997ce3e794298d985f035af05285e27bc3690fd9e09be068991a82fe2056", + "bytes": 29535 }, { "path": "adoption/platforms/macos-arm64.md", - "sha256": "d7f026a3480e71374f25c33a92d3b0c4b30c1717846f74d0c3038872ad6d5870", - "bytes": 65911 + "sha256": "266da883e614f767929981e8e630c34cf3958020fb5a14f162d9f385bbb9427e", + "bytes": 65623 }, { "path": "adoption/pre-login-observation.json", @@ -5211,8 +5057,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "a0e293941482230a1ccaaf8a3206a5c7e72b73690d47e3a211883e9dd6279abc", - "bytes": 12948 + "sha256": "304dc11b5fca6e4001382a8cb884712e10d28bdfa8551fcac6dbfc2b4d36cf70", + "bytes": 12744 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -10962,8 +10808,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "286c6898529e89ae3b1582f6db149f0dabf968adc917faf653057dc9d22dab21", - "bytes": 494497 + "sha256": "b2e82b633fd1594a15d1726afe8d4b1d401440b265cfaf12d07c6d6752a71641", + "bytes": 486278 }, { "path": "blueprints/trials-20260926/README.md", @@ -16447,7 +16293,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "6c9fd66ad582103f454dac9d53925bdd3ea1a412073e83efd4579298b05ee46b", + "sha256": "4ec258549f82eeb8ea709f18b8a0bd482cdcebfc690bfab87c58449b16947472", "bytes": 36223 }, { @@ -16472,8 +16318,8 @@ }, { "path": "catalogs/foundation/new-wsl-architecture-20261001.json", - "sha256": "f9ba8f70ffd7350178ef4cdb5226a5cd7040a1f43f0f416855aa156dda6f8b23", - "bytes": 325528 + "sha256": "3a8081049976785e320cfd99bc93bd3dcefa0a8a351fcc4f3cab1d8022a6b1cd", + "bytes": 325006 }, { "path": "catalogs/foundation/new-wsl-layer-crosswalk-20261001.json", @@ -16577,8 +16423,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "4b45aa982068205635f95776bbfc7a4c73d283ea48586e480f3870e613450ecf", - "bytes": 287577 + "sha256": "d1f0f17e142e8bfca223006f72cb16fce65456609248a32b5cf7958ba9f54dd2", + "bytes": 287704 }, { "path": "catalogs/landscape/research-state.json", @@ -16587,8 +16433,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "e5987d047e09f2f16ed9592cba1f7d2a7a350a6428f2904b9e481298a5f9ab5e", - "bytes": 286532 + "sha256": "85a1715168203fef8f201672d3f284ff3021797c0576a974ef05ed4b6af7446c", + "bytes": 258289 }, { "path": "catalogs/landscape/us-equities.json", @@ -17047,8 +16893,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "4334eda38f9961f971e4c5394cd6fef418cef236d3ad73c34a0e080b5b71be21", - "bytes": 56958 + "sha256": "6e7ebbe64011f460b59ab310a328211737deec2f83543fb99c41d761958bff06", + "bytes": 56411 }, { "path": "docs/comparison-progress-20260922.md", @@ -17312,7 +17158,7 @@ }, { "path": "docs/decisions/2026-10-01-new-wsl-definitive-defaults.md", - "sha256": "1d3e6dd6d86df768a2683cd9f64bd478111467efdf6f35b3c71526af93b9f1d6", + "sha256": "711038cb81075841beed0b6db4310fdab88f425c064342b7d57f9fe33603d6b7", "bytes": 80195 }, { @@ -17350,11 +17196,6 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, - { - "path": "docs/decisions/2026-10-03-currency-wave-w1.md", - "sha256": "c05f4b990e731342483a51883be8e5563a2d7fa07d936b18fff6cdf5d9e1bce5", - "bytes": 50522 - }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", "sha256": "a4c5ddf98c9fa778d07b60507a183818b1d243dda789bc06ee8bcd612fcbcedb", @@ -17687,8 +17528,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "e1003554881d6ddfa464560e2596b456897408ee40a3cd012e72bd75e4a5e0ed", - "bytes": 42784 + "sha256": "9d49b5052129b31a081f356c0bc750480ac4e5cc98d7b9606f6d4df7b9471357", + "bytes": 41689 }, { "path": "docs/full-stack-convergence.md", @@ -17727,7 +17568,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "d5f2c827e9f9da7ff769d0a833c9a2b8e9a3433cab9b8979e095a74f07a7ad7e", + "sha256": "6e17a86f92414d877858c9cbd88a42703aaaefb36f04bad6a78219f869bae18a", "bytes": 99371 }, { @@ -17737,8 +17578,8 @@ }, { "path": "docs/harness-defaults.md", - "sha256": "de47afd8a928d2c9acdd74cb63c78a24b6b56975ce9af249d428f6ee74161c43", - "bytes": 231037 + "sha256": "c7333423ba0e6ee597341ed6a23e2f00a98969b98f4f28283a99abd51b6bae5f", + "bytes": 229655 }, { "path": "docs/harness-rules-convergence-20260922.md", @@ -17857,8 +17698,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "c1b9e9cd27feb0ed823a2c0e942a741671e5ad2b84753e5196e09442b0fb1e3c", - "bytes": 18484 + "sha256": "feacb3a295970f1269ea2004127e5dd11a4f43c9e2fb29166e501346205091af", + "bytes": 18483 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -17867,13 +17708,13 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "efd48eae032b0556f8679b3177c6f03fcae364bb6d353836e5254a2edd1722b1", - "bytes": 692584 + "sha256": "62a34bba39a6f18a13f218569cd8eebc5aaeff201be54fdab93f81cfb158ea3f", + "bytes": 690227 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "193d6560d9ec3e20284bfce36fefdd0363b524edcd3498f613f0770999812056", - "bytes": 368585 + "sha256": "31a48ab41085815989d066fa9a5b76a7f9ca9f26fc51887600f37e70121ea278", + "bytes": 366880 }, { "path": "docs/next-host-stages.md", @@ -17967,8 +17808,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "82dd8fabc8348c4297395f54f8af7b60d4fe8f75c00bcf4b50dd6af6c91376dc", - "bytes": 594844 + "sha256": "172d1d75458d9af2c24f1a1f63615fbaa34dc6abaf9428c58d6cacee3ec58b95", + "bytes": 592422 }, { "path": "docs/token-efficiency-stack.md", @@ -17987,7 +17828,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "fbb31b5c101726f87eca1c2d313af79cc0135708a4861f60779971eafecdd0e4", + "sha256": "3e80098715b4c87fa6278847b18ea868a10db1971d780adc7511b410ff4fff7b", "bytes": 107979 }, { @@ -19635,41 +19476,6 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", - "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", - "bytes": 108109 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", - "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", - "bytes": 13041 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", - "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", - "bytes": 28233 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", - "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", - "bytes": 18135 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", - "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", - "bytes": 74214 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", - "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", - "bytes": 121015 - }, - { - "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", - "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", - "bytes": 26125 - }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -39317,8 +39123,8 @@ }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/definitive-manifest.json", - "sha256": "ce52b6a34c58f93938adef7bf775c439f568001dcb5c444534e3b29a73e2ed32", - "bytes": 229932 + "sha256": "1fa0b04a091372a6406c19fdc39222b446e8431d8dc28b77e01beafde32749a2", + "bytes": 229798 }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/foundation-definitive.compact.json", @@ -40067,8 +39873,8 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "084eb71632e71f16643ed54a166e6da44d615fa9f016e96aa53d666765cb27cd", - "bytes": 37656 + "sha256": "6cd23bd1aaf31d67c110f0973b0b6972421cdcd1f2eedaebf8f03534b456c3ed", + "bytes": 28829 }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/slot-state-and-core-recipes.json", @@ -40077,13 +39883,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md", - "sha256": "acd86662a43ba86258fd77c5209912af7be7269bd91c6e7eb9396b129a8ee7c0", - "bytes": 81773 + "sha256": "cebbc85d148650147767d14ed24d20e2d04b342f5822f1a226d27453cf1177e6", + "bytes": 80300 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md", - "sha256": "f6db1aba035e6c3938429f49286504b2beef910cd42ba6e0164b1a6e1d1bc13f", - "bytes": 175637 + "sha256": "ed829aa6cd55432619fcec0a2462dc8c8a956715a5e9bec78712633a9572edaa", + "bytes": 173410 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/VALIDATION.md", @@ -40092,8 +39898,8 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/accept.sh", - "sha256": "3a882e6a7078f68b11b7f610fcee3032c15958ccb77ff3585a6673465f0b51f7", - "bytes": 153638 + "sha256": "4e7833d137d338a295827f3608c06274d33137480f5e5452523ad83d53a1eae2", + "bytes": 153566 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/check_plan.py", @@ -40392,13 +40198,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json", - "sha256": "f63f69ffcd17339faffe7fafc90be38eed9e57bf05ef852e1596b234eb40fd76", - "bytes": 391171 + "sha256": "185cd3d0790c8538c91d15e796bb70f6cdbeb47aa2edb7849c2c70af2ebeccf2", + "bytes": 390158 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install.sh", - "sha256": "e8e6ac5bac6512671266c6f8995282c3094c0c516fa440f672bc8e128af12b80", - "bytes": 119993 + "sha256": "c4f37d471ca61739255a4569b9eef75970fddd4604e5a9e7d510dabd1594dd72", + "bytes": 119706 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/mise.toml", @@ -40422,7 +40228,7 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/owners.json", - "sha256": "3ce5fb8d821a3940ccbd05a06fdf11947ade49f0c7fad378d5c3048bc27b0982", + "sha256": "5831ddfe557023c647397c84474cb7f5277a46646bd74eb1bb62fdb725f927fa", "bytes": 35188 }, { @@ -40462,8 +40268,8 @@ }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/consensus.json", - "sha256": "736c6141639225bb33e2ed142ebdfdcf5816e745cd48cead7cb03b76bdecb9d9", - "bytes": 142783 + "sha256": "f6352f8657f4cdfb76dd21130c793f5e58318f5e1dd624feddf19eea79813972", + "bytes": 142647 }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/copy-notes.json", @@ -52685,11 +52491,6 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, - { - "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", - "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", - "bytes": 10611 - }, { "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json", "sha256": "b0c9e1d7c58e339dc2906e6a977ec04e6c1a808e826f9422407449ab34dd4f09", @@ -52945,11 +52746,6 @@ "sha256": "99580ecf2786f53585823b7695546f67d690fa5c2a6e30e4732854fe3f107787", "bytes": 27783 }, - { - "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", - "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", - "bytes": 8187 - }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -52980,21 +52776,11 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, - { - "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", - "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", - "bytes": 10165 - }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, - { - "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", - "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", - "bytes": 10463 - }, { "path": "evidence/receipts/mcporter-0142-qualification-20261004.json", "sha256": "9399c393875decb817d49a1ed59e1629ff445070453c2a2ba819e98d17a24cd1", @@ -53310,11 +53096,6 @@ "sha256": "9ad1db0b9e841cd780d04e544f6e75dde57fd88ebc6fc4f5b0bafd84287f20da", "bytes": 149558 }, - { - "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", - "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", - "bytes": 7517 - }, { "path": "evidence/receipts/osv-captured-lumibot-lockchecks-20261005.json", "sha256": "f211de55c2cbbf1f712c35f51bbe846f8a08341d24a240b51e654a6df6fd2b6c", @@ -53355,21 +53136,11 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, - { - "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", - "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", - "bytes": 6732 - }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, - { - "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", - "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", - "bytes": 7731 - }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -53470,11 +53241,6 @@ "sha256": "88d94dea0829c87eecd2b6f9cc2a03c010888de130fe430abce65d5ebd39e788", "bytes": 135042 }, - { - "path": "evidence/receipts/syft-1540-qualification-20261003.json", - "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", - "bytes": 7946 - }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -53565,11 +53331,6 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, - { - "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", - "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", - "bytes": 6655 - }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -54127,18 +53888,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", + "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "cbc65770d505fcc1253aa270db6d9930d884c9b22abeb34de450405b670c21a3", - "bytes": 106396 + "sha256": "3ca8f36178c4e61c9f8241fd6eb045172a9e66c38da5f4943b4532fc42f94a72", + "bytes": 103027 }, { "path": "observability/README.md", - "sha256": "adbefdbdb1f427f172c8d4b4899aaf188bf5c50e8861d117c74705d07738a38f", - "bytes": 16714 + "sha256": "7c7795560a7ef6541c91dfb8b0bf4e693f5dcdf9cfc75f262d8e4832057177e3", + "bytes": 15625 }, { "path": "observability/backends/README.md", @@ -54237,8 +53998,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "b6e15fabde242bf7e16c9a67e12e78dc5463bbe978aed5fb6ac8eec8c5df22bf", - "bytes": 46135 + "sha256": "df33394028df2a687f7e39beefe0aa02978a0d6a0b97fd9d8a14f12e6075d3d6", + "bytes": 44636 }, { "path": "observability/collector/claude-settings.json.example", @@ -54417,8 +54178,8 @@ }, { "path": "recipes/README.md", - "sha256": "cf1b7a7276d3836fa09d9ea49e7b626d1db4efb578da286b6cd8cb6b3d8888e9", - "bytes": 132632 + "sha256": "ad750498ace3022cdaab34bc6cafb42300379d9a9e0f9e76f00414916c9d8a96", + "bytes": 128978 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -54442,8 +54203,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", - "bytes": 6586 + "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", + "bytes": 5706 }, { "path": "recipes/saturation-sweep.md", @@ -54547,7 +54308,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "95d45da579b1035c4cfa54f330f1ab179b949bbdb49555dd82c5163d2367300a", + "sha256": "4c25e7d13eb9f1ee11418427b6bf9c65800ac55f5b6e6fc7e9f70e21efbc068d", "bytes": 117733 }, { @@ -54927,8 +54688,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", - "bytes": 52214 + "sha256": "6621649f533fb9b1d62e902d3953447bd43ec6bb26ee3e1f35e693023200fb06", + "bytes": 52213 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -54990,11 +54751,6 @@ "sha256": "55e47ac074cef878414ca7ec2e95d69888f245c7f334c3982dffac30dfa2b475", "bytes": 12924 }, - { - "path": "tests/test_blind_checkout.py", - "sha256": "d27efdf89e9ff89b0bd50c03a59e4efad5529e617d77ead110621616c20800f8", - "bytes": 67881 - }, { "path": "tests/test_blind_layer_decisions.py", "sha256": "327f104fc335a2b25f2a910e8cae44661fe9439764f4ab778412dbf3beeaea99", @@ -55192,8 +54948,8 @@ }, { "path": "tests/test_ecosystem_manifest.py", - "sha256": "03900b5be52d6e13a4a15ae46347eddf5eb09d3324ff973a967455fe40b18202", - "bytes": 142162 + "sha256": "d1990f63256a86d69eaa154217aba92548905ff0bafc61e574465425e9ba62bb", + "bytes": 137485 }, { "path": "tests/test_edgartools_pin_move.py", @@ -55547,18 +55303,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", - "bytes": 34441 + "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", + "bytes": 34089 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "ed7e6db7559dfb09c79be5d5a6150ec57710278b096293e73373b5681a2d5724", - "bytes": 25971 + "sha256": "01643e542017a248c166302b90f7218e42c83eceb3e4084b1a99a4bb73617a89", + "bytes": 25617 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "96b901ada162f4a9d5c7445a4f5272ca86011d5e9227211405051ad12fe79665", - "bytes": 38105 + "sha256": "2f58b64cbd4f1af2b23ed869147278e2f84ad3357fef11a13c6496154fb1f15b", + "bytes": 37789 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -55667,8 +55423,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "9eae1b97d637079056994268e754f878bbafd4702fe8182cfef21f2f7b9bfcec", - "bytes": 47956 + "sha256": "e8a7d735d73063ef82c4cff28bfa09a737d75a4fb69d84b49aec335ae2ba62b4", + "bytes": 45406 }, { "path": "tests/test_research_efficiency.py", @@ -55717,8 +55473,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", - "bytes": 9774 + "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", + "bytes": 9712 }, { "path": "tests/test_secret_path_guard.py", @@ -56190,11 +55946,6 @@ "sha256": "715c98a3ea23e71768326b19250cac5ce3e3bc1c568f540771ba64e45976a4ee", "bytes": 27482 }, - { - "path": "tools/sota-convergence/export_isolation_check.py", - "sha256": "7c0218c6545ea8d0274c71df8d4789a9f3e983dab45015905ad362dc6f0d3742", - "bytes": 34727 - }, { "path": "tools/sota-convergence/extract_layers.py", "sha256": "4be73f7d3b09fa9ea88ecb238d998e43b648c7c16bb56b8853e8672ca883bb2a", @@ -56512,7 +56263,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "f3598f338d96d838ec7307e0c2d436d354682d3c1994dbfb49e82c760c551ebc", + "sha256": "20c8f4f0b757860b0d9960809dcee36e0c4425489550df31b7c0a940798615b2", "bytes": 25833 }, { From cee84c0d9e5fac3848bffdf4a85f91442b5d6efd Mon Sep 17 00:00:00 2001 From: Scout Date: Tue, 6 Oct 2026 18:36:39 -0400 Subject: [PATCH 50/50] Reapply this branch's manifests/evidence.json edits on the merge base (hot-file protocol: every hot-file edit in the last commit) Co-Authored-By: Claude Opus 5.5 --- manifests/evidence.json | 437 +++++++++++++++++++++++++++++++--------- 1 file changed, 343 insertions(+), 94 deletions(-) diff --git a/manifests/evidence.json b/manifests/evidence.json index 53806c367..db62cd0ed 100644 --- a/manifests/evidence.json +++ b/manifests/evidence.json @@ -4477,6 +4477,155 @@ "Serena and MinerU are excluded from old-bar READY while condition-absent controls remain open. Difftastic, structural-search, inspect-ai, harbor and codex-sdk: fresh-session use not evidenced; installation-time checks retain original classes." ], "path": "evidence/receipts/ns2604-roadmap-evidence-20261005.json" + }, + { + "id": "claude-hud-0100-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "claude-hud" + ], + "claim": "The three recorded package/plugin/marketplace version reads printed \"0.10.0\". The recorded synthetic stdin render printed \"[Opus 5] \u2502 workspace\" and \"Context \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 0%\" (exit 0); the upstream test:stdin payload render printed \"[Opus]\" and \"Context \u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 23%\" (exit 0).", + "limitations": [ + "The recorded smoke says \"formatting only\" and \"/claude-hud:setup ... was NOT run\"; no live interactive plugin installation or render is claimed.", + "The recorded version output says \"dist/index.js has no --version handling\"; version identity is the three manifest reads.", + "The recorded integrity_source says \"No published checksum exists\"; the archive SHA256 is a local rehash corroborated by the peeled tag and 310 Git blob matches.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json" + }, + { + "id": "jcodemunch-1108327-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "jcodemunch-mcp" + ], + "claim": "The recorded version command printed \"jcodemunch-mcp 1.108.327\" (exit 0); the recorded get_session_stats smoke returned \"visible_tools\":6, \"catalog_tools\":94, \"schema_tokens_visible\":1050 and \"schema_tokens_catalog\":27880 (exit 0).", + "limitations": [ + "Only get_session_stats and schema listing ran at 1.108.327; index_folder, search_symbols and get_symbol_source were not repeated.", + "The recorded integrity_source says \"The Sigstore signature and certificate chain were NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json" + }, + { + "id": "mcp-inspector-290-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "mcp-inspector" + ], + "claim": "The recorded npm ls output contained \"@modelcontextprotocol/inspector@2.9.0\" (exit 0). The integration tools/list returned set_tool_tier, announce_model, jcodemunch_guide, order, menu and route (exit 0); tools/call order/get_session_stats returned \"visible_tools\":6 (exit 0), and the unknown-tool control returned \"tool_not_found\" (exit 5).", + "limitations": [ + "No upstream npm run validate, HTTP/SSE, interactive OAuth, web UI, TUI or MCP Apps run was recorded at 2.9.0.", + "--stored-auth-only ran against a stdio server requiring no credentials; it does not qualify OAuth or the secret-store migration.", + "npm attestation metadata and subject digest were read; this packet records no cryptographic signature verification for 2.9.0.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json" + }, + { + "id": "mcporter-0142-qualification-20261003", + "kind": "compatibility_attempt", + "component_ids": [ + "mcporter" + ], + "claim": "mcporter 0.14.2 remains an unaccepted compatibility attempt: version and an ad-hoc stdio canary passed, but npm ls --all returned ELSPROBLEMS (bundled core 2.2.0 beside resolved server 2.3.0). The persistent daemon and serve roles used by foundation-cpu and token-efficiency were not qualified. The selected Linux pin remains 0.14.1; the independently held macOS pin remains 0.13.13.", + "limitations": [ + "The original documented host-config smoke is \"NOT RUN\"; the ad-hoc stdio canary is evidence for the hold only and does not establish daemon or serve acceptance.", + "No daemon restart/recovery, mixed-version daemon, OAuth, Windows retry, serve operation or upstream test suite was exercised.", + "The judge records npm ls --all ELSPROBLEMS from bundled core 2.2.0 beside resolved server 2.3.0; the canary covers client stdio calls, not serve.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json" + }, + { + "id": "openresearch-0215-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "openresearch" + ], + "claim": "The isolated recorded version command printed \"orx 0.2.15\" (exit 0). The documented discover/paper smoke output is \"NOT RUN\"; its -1 value is a not-run sentinel.", + "limitations": [ + "The recorded smoke output says \"NOT RUN\" and identifies the live-service and PAPER_ID prerequisites; no functional discovery or retrieval is claimed.", + "Version/integrity/source qualification is the accepted scope; historical 0.2.7 search receipts do not establish 0.2.15 operation.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json" + }, + { + "id": "otelcol-contrib-0162-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "opentelemetry-collector-contrib" + ], + "claim": "The recorded version command printed \"otelcol-contrib version 0.162.0\" (exit 0). The recorded validate command returned empty output with exit 0.", + "limitations": [ + "The recorded validate smoke has empty output and exit 0; no running host service, live-traffic pipeline or service replacement was exercised.", + "The recorded integrity_source says the Sigstore bundle \"was NOT verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json" + }, + { + "id": "playwright-cli-0122-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "playwright-cli" + ], + "claim": "The recorded version command printed \"0.1.22\" (exit 0); the help smoke printed \"Usage: playwright-cli [args] [options]\" and \"--version print version\" (exit 0).", + "limitations": [ + "The recorded help smoke is installation/help evidence; no browser E2E or upstream npm test ran at 0.1.22. Bundled Playwright remains 1.64.0-alpha-1790635538000.", + "The recorded smoke notes an anonymous update-check GET and cli-update-check.json under the overridden HOME.", + "The recorded integrity_source says \"Registry signatures and attestation were not cryptographically verified\".", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json" + }, + { + "id": "syft-1540-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "syft" + ], + "claim": "The recorded version JSON returned \"version\": \"1.54.0\", \"gitCommit\": \"cc326e45a6213360266dda4b30cc68095946d676\" and \"schemaVersion\": \"16.1.11\" (exit 0). The recorded inventory smoke excerpt reports \"36 artifacts, 166 files, 177 relationships\" and \"CycloneDX 1.7, 123 components (36 library + 87 file)\" (exit 0).", + "limitations": [ + "The recorded smoke says \"No stdout or stderr\"; inventory counts are the supplied output-file observations, not a new scan performed by this integration.", + "Signature verification and SPDX output were not exercised; 1.52.0 signature evidence does not apply to 1.54.0.", + "No SDK source fingerprint was captured; identical recorded package tuples are the comparison evidence.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/syft-1540-qualification-20261003.json" + }, + { + "id": "worktrunk-0800-qualification-20261003", + "kind": "native_cli_e2e", + "component_ids": [ + "worktrunk" + ], + "claim": "The recorded version command printed \"wt v0.80.0\" (exit 0). The synthetic repository wt list smoke printed \"\u25cb Showing 1 worktree\" (exit 0).", + "limitations": [ + "The recorded wt list smoke uses \"a one-commit synthetic scratch repo\"; it does not qualify create/remove, dirty-refusal, copy-ignored, shell integration or upstream cargo test at 0.80.0.", + "The host installation and rollback launcher were not switched.", + "Linux x86_64 scratch-prefix scope only; no other host or macOS acceptance is inferred.", + "Historical landscape winner pins and dated source-review catalogs retain their bytes; this receipt does not requalify their sealed verdicts.", + "Install, version and prior smoke results below are retained W1 qualification output, not commands re-executed by the integration worker." + ], + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json" } ], "files": [ @@ -4527,8 +4676,8 @@ }, { "path": ".github/osv-scanner-lockfiles.json", - "sha256": "6ac40e443963ca0bc93d75e440c697268682bd11810ea6203794d063a4d6be76", - "bytes": 15075 + "sha256": "3c7bed9c3899e22a022acf4172719dd510124d45664f24cf656def14e6ad999b", + "bytes": 15176 }, { "path": ".github/osv-scanner.toml", @@ -4550,6 +4699,11 @@ "sha256": "0b37433fb0fb165c893737e8e887581a07a6469683fbdf67ada1a08288758605", "bytes": 467 }, + { + "path": ".github/requirements-validation.txt", + "sha256": "458d8cb1fef26d0d0a9a6a76707c0bad04fe84558550db750d50af206fecba81", + "bytes": 719 + }, { "path": ".github/tag-ruleset.json", "sha256": "b11fda27d1e2011ff3c001ac830fa3b2c0c3af6090e929ee2d20e4d0507dda5e", @@ -4567,8 +4721,8 @@ }, { "path": ".github/workflows/catalog-freshness.yml", - "sha256": "b916c15a85c4f6a84fd6fb460001898752445242f35aebc29862868c35907a4b", - "bytes": 26294 + "sha256": "673dbb816767e67d002b6dcdf866053c8408a7a47203683650af8d9f3be4b23a", + "bytes": 26872 }, { "path": ".github/workflows/dependency-review.yml", @@ -4612,8 +4766,8 @@ }, { "path": ".github/workflows/publish-catalog.yml", - "sha256": "5b52e3f50cf6ecb26cfe36f8ca54c577b5ff07ec4027a20102bc731c066cf4e5", - "bytes": 20110 + "sha256": "6f48ef65db2a270121e607aea1f08f2cad7c9f883009babd40af42b21c8f3167", + "bytes": 20399 }, { "path": ".github/workflows/receipt-staleness.yml", @@ -4647,8 +4801,8 @@ }, { "path": ".github/workflows/supply-chain.yml", - "sha256": "92ab3fa8354aa9fbaad781597354ef5a942c709b5950109bb13c8b77780a40f8", - "bytes": 7576 + "sha256": "8c70b40953230c79e3d3df75fc492d689bf8884cb53acd7b6b6eadb63f2558c9", + "bytes": 7589 }, { "path": ".github/workflows/token-report.yml", @@ -4797,8 +4951,8 @@ }, { "path": "adoption/bootstrap.md", - "sha256": "9ea67939f6e5443576cdc2aad3ff997cc554aca3292e877afbe0c000d7d9e6ae", - "bytes": 65967 + "sha256": "1a5533bfcb028ef8c952fc1ebd08a2ca36dd22f7c3538bae7717e78e44501761", + "bytes": 68841 }, { "path": "adoption/credential-inventory.json", @@ -4907,13 +5061,13 @@ }, { "path": "adoption/manifest.json", - "sha256": "f3e325c8b5dcd1852a613136bb1152bf1a1f39c0dd6861f3c4752ac0d5e32c0a", - "bytes": 20102 + "sha256": "16d9708777667b29a4c25b363fca5644b94ab7932d0735c7323ac48188f7eaec", + "bytes": 20038 }, { "path": "adoption/new-wsl-profile.json", - "sha256": "7504e55c2e66730d5e0b0ead2be5abef39f3989afc69e1c3640e6709bdb3db04", - "bytes": 257549 + "sha256": "b837312fcf1a81a9e9d47b71496bf08550d848cfbe6be4353f01bf75659b28f3", + "bytes": 260542 }, { "path": "adoption/new-wsl-profile.md", @@ -4982,8 +5136,8 @@ }, { "path": "adoption/pins-linux-x86_64.json", - "sha256": "804eba0e086670c75e6b2f3725734477914318987c99fb90195680188be337c9", - "bytes": 37335 + "sha256": "7e210c9c56953ff5091c35909a0e3b5c94a4a519932eeda82878afb22b3c2961", + "bytes": 37151 }, { "path": "adoption/pins-macos-arm64.json", @@ -4992,18 +5146,18 @@ }, { "path": "adoption/platforms/linux-wsl2-new-distro.md", - "sha256": "85ffcae840d5dda92d6843117ba5bb22399bf8b4162fb470443cee8e01b0ed73", - "bytes": 93418 + "sha256": "bc37a2c3fde395818f1ffcaae01e9578fa222367cac5b36f92bcbc013e5f491a", + "bytes": 93706 }, { "path": "adoption/platforms/linux-wsl2.md", - "sha256": "317a997ce3e794298d985f035af05285e27bc3690fd9e09be068991a82fe2056", - "bytes": 29535 + "sha256": "1f3b29db1d2585b548a8595dd25b7ab3c7a2ff33af7e9f9a2ba750c3b0452174", + "bytes": 30164 }, { "path": "adoption/platforms/macos-arm64.md", - "sha256": "266da883e614f767929981e8e630c34cf3958020fb5a14f162d9f385bbb9427e", - "bytes": 65623 + "sha256": "d7f026a3480e71374f25c33a92d3b0c4b30c1717846f74d0c3038872ad6d5870", + "bytes": 65911 }, { "path": "adoption/pre-login-observation.json", @@ -5057,8 +5211,8 @@ }, { "path": "adoption/templates/claude.settings.template.json", - "sha256": "304dc11b5fca6e4001382a8cb884712e10d28bdfa8551fcac6dbfc2b4d36cf70", - "bytes": 12744 + "sha256": "a0e293941482230a1ccaaf8a3206a5c7e72b73690d47e3a211883e9dd6279abc", + "bytes": 12948 }, { "path": "adoption/templates/codex.AGENTS.template.md", @@ -10808,8 +10962,8 @@ }, { "path": "blueprints/token-native-focus/saturation-audit.json", - "sha256": "b2e82b633fd1594a15d1726afe8d4b1d401440b265cfaf12d07c6d6752a71641", - "bytes": 486278 + "sha256": "286c6898529e89ae3b1582f6db149f0dabf968adc917faf653057dc9d22dab21", + "bytes": 494497 }, { "path": "blueprints/trials-20260926/README.md", @@ -16293,7 +16447,7 @@ }, { "path": "catalogs/foundation/automation.json", - "sha256": "4ec258549f82eeb8ea709f18b8a0bd482cdcebfc690bfab87c58449b16947472", + "sha256": "6c9fd66ad582103f454dac9d53925bdd3ea1a412073e83efd4579298b05ee46b", "bytes": 36223 }, { @@ -16318,8 +16472,8 @@ }, { "path": "catalogs/foundation/new-wsl-architecture-20261001.json", - "sha256": "3a8081049976785e320cfd99bc93bd3dcefa0a8a351fcc4f3cab1d8022a6b1cd", - "bytes": 325006 + "sha256": "f9ba8f70ffd7350178ef4cdb5226a5cd7040a1f43f0f416855aa156dda6f8b23", + "bytes": 325528 }, { "path": "catalogs/foundation/new-wsl-layer-crosswalk-20261001.json", @@ -16423,8 +16577,8 @@ }, { "path": "catalogs/landscape/new-host-grand-list.json", - "sha256": "d1f0f17e142e8bfca223006f72cb16fce65456609248a32b5cf7958ba9f54dd2", - "bytes": 287704 + "sha256": "4b45aa982068205635f95776bbfc7a4c73d283ea48586e480f3870e613450ecf", + "bytes": 287577 }, { "path": "catalogs/landscape/research-state.json", @@ -16433,8 +16587,8 @@ }, { "path": "catalogs/landscape/upstream-snapshot.json", - "sha256": "85a1715168203fef8f201672d3f284ff3021797c0576a974ef05ed4b6af7446c", - "bytes": 258289 + "sha256": "e5987d047e09f2f16ed9592cba1f7d2a7a350a6428f2904b9e481298a5f9ab5e", + "bytes": 286532 }, { "path": "catalogs/landscape/us-equities.json", @@ -16893,8 +17047,8 @@ }, { "path": "docs/community-native-practice.md", - "sha256": "6e7ebbe64011f460b59ab310a328211737deec2f83543fb99c41d761958bff06", - "bytes": 56411 + "sha256": "4334eda38f9961f971e4c5394cd6fef418cef236d3ad73c34a0e080b5b71be21", + "bytes": 56958 }, { "path": "docs/comparison-progress-20260922.md", @@ -17158,7 +17312,7 @@ }, { "path": "docs/decisions/2026-10-01-new-wsl-definitive-defaults.md", - "sha256": "711038cb81075841beed0b6db4310fdab88f425c064342b7d57f9fe33603d6b7", + "sha256": "1d3e6dd6d86df768a2683cd9f64bd478111467efdf6f35b3c71526af93b9f1d6", "bytes": 80195 }, { @@ -17196,6 +17350,11 @@ "sha256": "64d49f2de46d3309d7802678039caac1609027b8f00b561987e464e94432847f", "bytes": 21453 }, + { + "path": "docs/decisions/2026-10-03-currency-wave-w1.md", + "sha256": "c05f4b990e731342483a51883be8e5563a2d7fa07d936b18fff6cdf5d9e1bce5", + "bytes": 50522 + }, { "path": "docs/decisions/2026-10-03-foundation-catalog-drift.md", "sha256": "a4c5ddf98c9fa778d07b60507a183818b1d243dda789bc06ee8bcd612fcbcedb", @@ -17528,8 +17687,8 @@ }, { "path": "docs/foundation-stack.md", - "sha256": "9d49b5052129b31a081f356c0bc750480ac4e5cc98d7b9606f6d4df7b9471357", - "bytes": 41689 + "sha256": "e1003554881d6ddfa464560e2596b456897408ee40a3cd012e72bd75e4a5e0ed", + "bytes": 42784 }, { "path": "docs/full-stack-convergence.md", @@ -17568,7 +17727,7 @@ }, { "path": "docs/github-automation.md", - "sha256": "6e17a86f92414d877858c9cbd88a42703aaaefb36f04bad6a78219f869bae18a", + "sha256": "d5f2c827e9f9da7ff769d0a833c9a2b8e9a3433cab9b8979e095a74f07a7ad7e", "bytes": 99371 }, { @@ -17578,8 +17737,8 @@ }, { "path": "docs/harness-defaults.md", - "sha256": "c7333423ba0e6ee597341ed6a23e2f00a98969b98f4f28283a99abd51b6bae5f", - "bytes": 229655 + "sha256": "de47afd8a928d2c9acdd74cb63c78a24b6b56975ce9af249d428f6ee74161c43", + "bytes": 231037 }, { "path": "docs/harness-rules-convergence-20260922.md", @@ -17698,8 +17857,8 @@ }, { "path": "docs/new-host-grand-list.md", - "sha256": "feacb3a295970f1269ea2004127e5dd11a4f43c9e2fb29166e501346205091af", - "bytes": 18483 + "sha256": "c1b9e9cd27feb0ed823a2c0e942a741671e5ad2b84753e5196e09442b0fb1e3c", + "bytes": 18484 }, { "path": "docs/new-workstation-runtime-profile-20260922.md", @@ -17708,13 +17867,13 @@ }, { "path": "docs/new-wsl-handbook.json", - "sha256": "62a34bba39a6f18a13f218569cd8eebc5aaeff201be54fdab93f81cfb158ea3f", - "bytes": 690227 + "sha256": "efd48eae032b0556f8679b3177c6f03fcae364bb6d353836e5254a2edd1722b1", + "bytes": 692584 }, { "path": "docs/new-wsl-handbook.md", - "sha256": "31a48ab41085815989d066fa9a5b76a7f9ca9f26fc51887600f37e70121ea278", - "bytes": 366880 + "sha256": "193d6560d9ec3e20284bfce36fefdd0363b524edcd3498f613f0770999812056", + "bytes": 368585 }, { "path": "docs/next-host-stages.md", @@ -17808,8 +17967,8 @@ }, { "path": "docs/token-efficiency-stack.json", - "sha256": "172d1d75458d9af2c24f1a1f63615fbaa34dc6abaf9428c58d6cacee3ec58b95", - "bytes": 592422 + "sha256": "82dd8fabc8348c4297395f54f8af7b60d4fe8f75c00bcf4b50dd6af6c91376dc", + "bytes": 594844 }, { "path": "docs/token-efficiency-stack.md", @@ -17828,7 +17987,7 @@ }, { "path": "docs/token-session-handbook.md", - "sha256": "3e80098715b4c87fa6278847b18ea868a10db1971d780adc7511b410ff4fff7b", + "sha256": "fbb31b5c101726f87eca1c2d313af79cc0135708a4861f60779971eafecdd0e4", "bytes": 107979 }, { @@ -19476,6 +19635,41 @@ "sha256": "b849a10dea3bd5741faa9828be0ee934a36214819056de3012cbcf028c652e6a", "bytes": 14197 }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/move-hold-judges.json", + "sha256": "e48737f157409da08ed1a6009fa21b5d86b1238a9247121c4de2a4e5c4be76ea", + "bytes": 108109 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-2-replies.md", + "sha256": "df3c6d23bf54dbba84f2e758bce9e5f9e7f6c3bdbcafb0d2324dac332e1c7696", + "bytes": 13041 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/repair-round-replies.md", + "sha256": "b938dead74e41883796fe004c7e4ba0f11695a690a8048676226cd4dfe4a0b19", + "bytes": 28233 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/judgments/review-round-findings.json", + "sha256": "2b91bfe41d4f0a71667d7a440810630c0d031cce985bfa3a857732d922d47bc3", + "bytes": 18135 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/native-checks.json", + "sha256": "a0194f7ce41dc4efc6320e10662f53e2b21afe7e15d477752947cb7ec160cb60", + "bytes": 74214 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-bot-repair-checks.json", + "sha256": "c9d4db925ee8a28bdbcbddd088a1e410569ba840d3e4209bc2d8848d98fea8c4", + "bytes": 121015 + }, + { + "path": "evidence/artifacts/currency-wave-w1-20261003/review-repair-checks.json", + "sha256": "11fe9d5941ecc06385093613e9f6e63f582f5ecb1a721a179866e0d06d71039f", + "bytes": 26125 + }, { "path": "evidence/artifacts/dashboard-gap-resolution-20260921/resolution.json", "sha256": "b5904a44daa4545c77dde645aeb47370e53a34e6252ebd0bbfe1a0b8a4a5bfe8", @@ -39123,8 +39317,8 @@ }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/definitive-manifest.json", - "sha256": "1fa0b04a091372a6406c19fdc39222b446e8431d8dc28b77e01beafde32749a2", - "bytes": 229798 + "sha256": "ce52b6a34c58f93938adef7bf775c439f568001dcb5c444534e3b29a73e2ed32", + "bytes": 229932 }, { "path": "evidence/artifacts/new-wsl-definitive-defaults-20261001/foundation-definitive.compact.json", @@ -39873,8 +40067,8 @@ }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/receipt.json", - "sha256": "6cd23bd1aaf31d67c110f0973b0b6972421cdcd1f2eedaebf8f03534b456c3ed", - "bytes": 28829 + "sha256": "084eb71632e71f16643ed54a166e6da44d615fa9f016e96aa53d666765cb27cd", + "bytes": 37656 }, { "path": "evidence/artifacts/new-wsl-handbook-20261001/slot-state-and-core-recipes.json", @@ -39883,13 +40077,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/README.md", - "sha256": "cebbc85d148650147767d14ed24d20e2d04b342f5822f1a226d27453cf1177e6", - "bytes": 80300 + "sha256": "acd86662a43ba86258fd77c5209912af7be7269bd91c6e7eb9396b129a8ee7c0", + "bytes": 81773 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/SOURCES.md", - "sha256": "ed829aa6cd55432619fcec0a2462dc8c8a956715a5e9bec78712633a9572edaa", - "bytes": 173410 + "sha256": "f6db1aba035e6c3938429f49286504b2beef910cd42ba6e0164b1a6e1d1bc13f", + "bytes": 175637 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/VALIDATION.md", @@ -39898,8 +40092,8 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/accept.sh", - "sha256": "4e7833d137d338a295827f3608c06274d33137480f5e5452523ad83d53a1eae2", - "bytes": 153566 + "sha256": "3a882e6a7078f68b11b7f610fcee3032c15958ccb77ff3585a6673465f0b51f7", + "bytes": 153638 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/check_plan.py", @@ -40198,13 +40392,13 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json", - "sha256": "185cd3d0790c8538c91d15e796bb70f6cdbeb47aa2edb7849c2c70af2ebeccf2", - "bytes": 390158 + "sha256": "f63f69ffcd17339faffe7fafc90be38eed9e57bf05ef852e1596b234eb40fd76", + "bytes": 391171 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/install.sh", - "sha256": "c4f37d471ca61739255a4569b9eef75970fddd4604e5a9e7d510dabd1594dd72", - "bytes": 119706 + "sha256": "e8e6ac5bac6512671266c6f8995282c3094c0c516fa440f672bc8e128af12b80", + "bytes": 119993 }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/mise.toml", @@ -40228,7 +40422,7 @@ }, { "path": "evidence/artifacts/new-wsl-install-plan-20261002/owners.json", - "sha256": "5831ddfe557023c647397c84474cb7f5277a46646bd74eb1bb62fdb725f927fa", + "sha256": "3ce5fb8d821a3940ccbd05a06fdf11947ade49f0c7fad378d5c3048bc27b0982", "bytes": 35188 }, { @@ -40268,8 +40462,8 @@ }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/consensus.json", - "sha256": "f6352f8657f4cdfb76dd21130c793f5e58318f5e1dd624feddf19eea79813972", - "bytes": 142647 + "sha256": "736c6141639225bb33e2ed142ebdfdcf5816e745cd48cead7cb03b76bdecb9d9", + "bytes": 142783 }, { "path": "evidence/artifacts/new-wsl-layer-consensus-20261002/copy-notes.json", @@ -52491,6 +52685,11 @@ "sha256": "ac55fc11c20ad43b9d772861bf40c5c9dfad95bc72cb92fa0cad69a48c630d33", "bytes": 20645 }, + { + "path": "evidence/receipts/claude-hud-0100-qualification-20261003.json", + "sha256": "75698ca95984619fc89b578639bf0c0bce89810923e7dae6a951c5abe0965b59", + "bytes": 10611 + }, { "path": "evidence/receipts/claude-hud-0100-qualification-20261004.json", "sha256": "b0c9e1d7c58e339dc2906e6a977ec04e6c1a808e826f9422407449ab34dd4f09", @@ -52746,6 +52945,11 @@ "sha256": "99580ecf2786f53585823b7695546f67d690fa5c2a6e30e4732854fe3f107787", "bytes": 27783 }, + { + "path": "evidence/receipts/jcodemunch-1108327-qualification-20261003.json", + "sha256": "96342602475607ade1f1091782aa86ec7c9641b8f5b7decb4b3f0368a872eb5c", + "bytes": 8187 + }, { "path": "evidence/receipts/local-inference-c2-serving-switch-20260926.json", "sha256": "84153b7486e2cd9b970d0cb017bcb73b12930158efb2e793e323a6347f09d3e3", @@ -52776,11 +52980,21 @@ "sha256": "f2d8fdc6179b535c515aa96c47650db5d6556f931daef9a4dfec23f45b73bb81", "bytes": 11753 }, + { + "path": "evidence/receipts/mcp-inspector-290-qualification-20261003.json", + "sha256": "ea5909301508d3ef61ef5c79a920da793e4904a5d219e20a9c32c2fd83f45ba3", + "bytes": 10165 + }, { "path": "evidence/receipts/mcporter-0141-qualification-20260925.json", "sha256": "5379b1e326d99eeb09a72b88fa447c6020e76211b3d918ac96d8daa09241ce32", "bytes": 15000 }, + { + "path": "evidence/receipts/mcporter-0142-qualification-20261003.json", + "sha256": "b1beab03a1aca6fae782b9e8d5d3264bb597ad5c38b111451e715f98ba1256bb", + "bytes": 10463 + }, { "path": "evidence/receipts/mcporter-0142-qualification-20261004.json", "sha256": "9399c393875decb817d49a1ed59e1629ff445070453c2a2ba819e98d17a24cd1", @@ -53096,6 +53310,11 @@ "sha256": "9ad1db0b9e841cd780d04e544f6e75dde57fd88ebc6fc4f5b0bafd84287f20da", "bytes": 149558 }, + { + "path": "evidence/receipts/openresearch-0215-qualification-20261003.json", + "sha256": "d31ec509e1e4ae96fb0eaf8d13062a712fce2d5c46ba271a1cee096b44b2fe34", + "bytes": 7517 + }, { "path": "evidence/receipts/osv-captured-lumibot-lockchecks-20261005.json", "sha256": "f211de55c2cbbf1f712c35f51bbe846f8a08341d24a240b51e654a6df6fd2b6c", @@ -53136,11 +53355,21 @@ "sha256": "9056d2721e24a73a9bac11568902b33a86c57b52f0b28ab9c5c417194d1b5ffb", "bytes": 24256 }, + { + "path": "evidence/receipts/otelcol-contrib-0162-qualification-20261003.json", + "sha256": "6a862a8a71de692044b07da70437f4730ca8cabf2997540c07a167cd58d4ed53", + "bytes": 6732 + }, { "path": "evidence/receipts/pit-availability.json", "sha256": "1bbae79fec7cd519571f42470e05b4784e36d72d21da34a210ab8adc864823f4", "bytes": 107713 }, + { + "path": "evidence/receipts/playwright-cli-0122-qualification-20261003.json", + "sha256": "5ea837cdf29f1754acb74cf44bdd3b8447627e3048f6f26719a61dc9d110230a", + "bytes": 7731 + }, { "path": "evidence/receipts/portable-claude-native-qualification-20260921.json", "sha256": "26bb91c3e965e80a6f14749d0325fef73202934e0457403ad0c89a54c9e24bdd", @@ -53241,6 +53470,11 @@ "sha256": "88d94dea0829c87eecd2b6f9cc2a03c010888de130fe430abce65d5ebd39e788", "bytes": 135042 }, + { + "path": "evidence/receipts/syft-1540-qualification-20261003.json", + "sha256": "ee883617198dd98f733bb549503a6c412a0ab20fc653442aafbbb8366dc75858", + "bytes": 7946 + }, { "path": "evidence/receipts/tavily-research-qualification-20260926.json", "sha256": "a8bdb6e6dea4aa99938bce568ee86e8391fe33929a1940ae141ae519a7100b4a", @@ -53331,6 +53565,11 @@ "sha256": "33adf727233d608e0d76bf8da12e30909b279582e2f73bc74ceccde520fb8a99", "bytes": 1939 }, + { + "path": "evidence/receipts/worktrunk-0800-qualification-20261003.json", + "sha256": "65699cc135a04abbbc479e5a9ace268e99bc3807bf82b6ccede8ac282f3b1629", + "bytes": 6655 + }, { "path": "evidence/receipts/worktrunk-list.json", "sha256": "ba277663d33930ff5e65623525a86686c2b108fb0346bc4593c43b01570ebb6c", @@ -53888,18 +54127,18 @@ }, { "path": "manifests/landscape.json", - "sha256": "bdb43cf59a1875cd49578d025a3ac76fcc173b7b63c449fd9921d1fe45558f48", + "sha256": "5af66a7bce3e2d8d6cdde10f353a49b65a86becbecb2dc23ad4d01ebea623dfc", "bytes": 21467 }, { "path": "manifests/stack.json", - "sha256": "3ca8f36178c4e61c9f8241fd6eb045172a9e66c38da5f4943b4532fc42f94a72", - "bytes": 103027 + "sha256": "cbc65770d505fcc1253aa270db6d9930d884c9b22abeb34de450405b670c21a3", + "bytes": 106396 }, { "path": "observability/README.md", - "sha256": "7c7795560a7ef6541c91dfb8b0bf4e693f5dcdf9cfc75f262d8e4832057177e3", - "bytes": 15625 + "sha256": "adbefdbdb1f427f172c8d4b4899aaf188bf5c50e8861d117c74705d07738a38f", + "bytes": 16714 }, { "path": "observability/backends/README.md", @@ -53998,8 +54237,8 @@ }, { "path": "observability/collector/README.md", - "sha256": "df33394028df2a687f7e39beefe0aa02978a0d6a0b97fd9d8a14f12e6075d3d6", - "bytes": 44636 + "sha256": "b6e15fabde242bf7e16c9a67e12e78dc5463bbe978aed5fb6ac8eec8c5df22bf", + "bytes": 46135 }, { "path": "observability/collector/claude-settings.json.example", @@ -54178,8 +54417,8 @@ }, { "path": "recipes/README.md", - "sha256": "ad750498ace3022cdaab34bc6cafb42300379d9a9e0f9e76f00414916c9d8a96", - "bytes": 128978 + "sha256": "cf1b7a7276d3836fa09d9ea49e7b626d1db4efb578da286b6cd8cb6b3d8888e9", + "bytes": 132632 }, { "path": "recipes/claude-codex-cooperation-lanes.md", @@ -54203,8 +54442,8 @@ }, { "path": "recipes/native-upgrades-20260921.md", - "sha256": "a398b26bd0d3c0a5de3b1addec8ff0b5d27bb013e4f1df14e5235bb26001267c", - "bytes": 5706 + "sha256": "6fe32c4ad23d7dfb56794fdae88e9a57334d9b7e0ec8c44a9c3286d604605859", + "bytes": 6586 }, { "path": "recipes/saturation-sweep.md", @@ -54308,7 +54547,7 @@ }, { "path": "scripts/native_token_ci.py", - "sha256": "4c25e7d13eb9f1ee11418427b6bf9c65800ac55f5b6e6fc7e9f70e21efbc068d", + "sha256": "95d45da579b1035c4cfa54f330f1ab179b949bbdb49555dd82c5163d2367300a", "bytes": 117733 }, { @@ -54688,8 +54927,8 @@ }, { "path": "tests/test_adoption_docs_consistency.py", - "sha256": "6621649f533fb9b1d62e902d3953447bd43ec6bb26ee3e1f35e693023200fb06", - "bytes": 52213 + "sha256": "0910d97cd4c7ff2dceeacf2a8d2a46bbefea2c8b66bf4abd0a73df42abe080a6", + "bytes": 52214 }, { "path": "tests/test_adoption_guarded_runners.py", @@ -54751,6 +54990,11 @@ "sha256": "55e47ac074cef878414ca7ec2e95d69888f245c7f334c3982dffac30dfa2b475", "bytes": 12924 }, + { + "path": "tests/test_blind_checkout.py", + "sha256": "d27efdf89e9ff89b0bd50c03a59e4efad5529e617d77ead110621616c20800f8", + "bytes": 67881 + }, { "path": "tests/test_blind_layer_decisions.py", "sha256": "327f104fc335a2b25f2a910e8cae44661fe9439764f4ab778412dbf3beeaea99", @@ -54948,8 +55192,8 @@ }, { "path": "tests/test_ecosystem_manifest.py", - "sha256": "d1990f63256a86d69eaa154217aba92548905ff0bafc61e574465425e9ba62bb", - "bytes": 137485 + "sha256": "03900b5be52d6e13a4a15ae46347eddf5eb09d3324ff973a967455fe40b18202", + "bytes": 142162 }, { "path": "tests/test_edgartools_pin_move.py", @@ -55303,18 +55547,18 @@ }, { "path": "tests/test_observability_run_correlation.py", - "sha256": "2babc329578ffafc509075294cafa1ac25ae2a749e3f87a136dab9447f47fda5", - "bytes": 34089 + "sha256": "291762ddf9a1484ee6c1c8b2d4f27bd23cfaee2db9586db1e934cdd05c50bca1", + "bytes": 34441 }, { "path": "tests/test_observability_tool_names.py", - "sha256": "01643e542017a248c166302b90f7218e42c83eceb3e4084b1a99a4bb73617a89", - "bytes": 25617 + "sha256": "ed7e6db7559dfb09c79be5d5a6150ec57710278b096293e73373b5681a2d5724", + "bytes": 25971 }, { "path": "tests/test_observability_writer_identity.py", - "sha256": "2f58b64cbd4f1af2b23ed869147278e2f84ad3357fef11a13c6496154fb1f15b", - "bytes": 37789 + "sha256": "96b901ada162f4a9d5c7445a4f5272ca86011d5e9227211405051ad12fe79665", + "bytes": 38105 }, { "path": "tests/test_observability_writer_identity_host.py", @@ -55423,8 +55667,8 @@ }, { "path": "tests/test_render_config.py", - "sha256": "e8a7d735d73063ef82c4cff28bfa09a737d75a4fb69d84b49aec335ae2ba62b4", - "bytes": 45406 + "sha256": "9eae1b97d637079056994268e754f878bbafd4702fe8182cfef21f2f7b9bfcec", + "bytes": 47956 }, { "path": "tests/test_research_efficiency.py", @@ -55473,8 +55717,8 @@ }, { "path": "tests/test_sdk_usage_scope.py", - "sha256": "7e47c3b4cede14ce7e664daf5fe379f16bb173d845b6feafd4a9b82ba758c352", - "bytes": 9712 + "sha256": "e1a0e758e0f5d50411f5a18a2114eabdbe7091aae600e80ddeca51ecaeb1c532", + "bytes": 9774 }, { "path": "tests/test_secret_path_guard.py", @@ -55946,6 +56190,11 @@ "sha256": "715c98a3ea23e71768326b19250cac5ce3e3bc1c568f540771ba64e45976a4ee", "bytes": 27482 }, + { + "path": "tools/sota-convergence/export_isolation_check.py", + "sha256": "7c0218c6545ea8d0274c71df8d4789a9f3e983dab45015905ad362dc6f0d3742", + "bytes": 34727 + }, { "path": "tools/sota-convergence/extract_layers.py", "sha256": "4be73f7d3b09fa9ea88ecb238d998e43b648c7c16bb56b8853e8672ca883bb2a", @@ -56263,7 +56512,7 @@ }, { "path": "tools/token-report/README.md", - "sha256": "20c8f4f0b757860b0d9960809dcee36e0c4425489550df31b7c0a940798615b2", + "sha256": "f3598f338d96d838ec7307e0c2d436d354682d3c1994dbfb49e82c760c551ebc", "bytes": 25833 }, {